AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 1167911
Accepted
BluePython
BluePython
Asked: 2024-11-19 18:37:10 +0800 CST2024-11-19 18:37:10 +0800 CST 2024-11-19 18:37:10 +0800 CST

安全的 Strongswan 设置

  • 772

我已经设置了一个主机到主机的设置,其中我只希望公开服务器 IP,以便连接到 VPN 的任何人都可以与该服务器上的服务通信。

connections {
    rw {
      pools = rw_pool
      send_cert = always
      unique = no
      fragmentation=yes
      local {
        auth = pubkey
        certs = [CERT].pem
        id = [ID]
      }

      remote {
        auth = eap-mschapv2
        eap_id = %any
      }
      children {
        rw {
          local_ts  = [WAN IP OF SERVER]
          esp_proposals = chacha20poly1305-sha512, aes256gcm16-ecp384,aes256-sha256,aes256-sha1,3des-sha1
        }
      }
      send_certreq = no
    }
 }

连接正常,请求确实来自 VPN 选定的 IP 范围,但是,由于我的目标是外部 IP,在 IP 退出后,这是否仍会通过不安全的通道路由流量?

客户端配置:

connections {
    home {
      version=2
      remote_addrs = [SERVER ADDR]
      vips = 0.0.0.0
      local {
        auth = eap-mschapv2
        eap_id = [ID]
      }
      remote {
        auth = pubkey
        id = [SERVER ID]
      }
      children {
        home {
          remote_ts  = [WAN IP OF SERVER]
          local_ts = dynamic
          #remote_ts  = 10.10.10.0/24
          start_action = start
        }
      }
    }
  }

第二个较小的问题是,如何进行主机到站点的设置,其中我的服务器是其网络中的单个实体,但另一端是 Fortigate 路由器,其背后有一个更大的网络,这种设置可以工作吗?

提前感谢您的努力!

编辑:通过使用 ip 创建 tun0 接口并将其用作 local_ts,解决了 Ip 问题

vpn
  • 1 1 个回答
  • 47 Views

1 个回答

  • Voted
  1. Best Answer
    grawity
    2024-11-19T21:54:32+08:002024-11-19T21:54:32+08:00

    在 IP 退出后,这是否仍会通过不安全的通道路由流量?

    不是,这是 IPsec 与其他 VPN 实现之间的主要区别。IPsec 最初是专门设计为主机到主机的安全通道,之后再在其上添加 VPN(现在作为 IKEv2 一部分的 VPN 支持曾经是 Cisco 的专有扩展)。

    因此,像 strongSwan 这样的传统 IPsec 实现是基于策略的,而不是基于路由的1 - 这意味着没有单独的隧道接口可供数据包通过路由以实现安全;相反,它们在离开常规网络接口时被拦截和转换。

    (实际上,甚至还有一种子 SA 模式 -transport模式 - 专门用于保护主机到主机的流量到 IPsec 端点本身。它很少使用,因为隧道模式无论如何都可以执行相同的操作,尽管传输模式具有较低的 MTU 开销。)

    因此,即使您联系 VPN 服务器的外部地址(该地址在基于路由的系统中通常具有“绕过”路由),它仍然受 IPsec 转换层的约束并且会被加密(只要它包含在子local/remote_ts SA 的协商流量选择器中)。

    建立 SA 后,运行swanctl -l以查看它最终影响哪些流量,或者如果您愿意,可以使用ip xfrm直接查看在数据包离开接口之前应用的 Linux“转换”策略。

    如果有疑问,请使用 iptables policymatch 或 nftablesmeta ipsec exists来防止不安全的数据包离开或进入您的服务器。

    1(strongSwan 基于策略的架构确实使 VPN“虚拟 IP”的使用相当混乱,以至于他们让步并增加了一些基于路由的模型的支持。)

    第二个较小的问题是,如何进行主机到站点的设置,其中我的服务器是其网络中的单个实体,但另一端是 Fortigate 路由器,其背后有一个更大的网络,这种设置可以工作吗?

    扩展 Fortigate 端(其等同于local_ts)的流量选择器以及相应的服务器的流量选择器remote_ts以覆盖附加子网应该就足够了。

    • 0

相关问题

  • 无法通过 Ubuntu VPN 访问外部网络

  • 用 D-LINK DFL-CPG310 防火墙替换 Cisco Pix 防火墙

  • 最好的点对点 VPN?

  • WAN 上的 VLAN

  • 通过 VPN 连接什么是远程服务器 IP?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve