如何使用公共 IP 作为加密域配置 strongswan 对等 vpn 隧道?

如何使用公共 IP 作为加密域配置 strongswan 对等 vpn 隧道?

我需要配置一个 ipsec 隧道来与远程 vpn(Cisco ASA 5555)通信。我已经创建了一个安装了 ubuntu 18.04 的 Amazon Lightsail 实例。经过一番研究,我遇到了 Strongswan,我用它来配置隧道。远程端提供了一个我应该用来配置隧道的参数列表,我在下面列出了它们,我的设置在 ipsec.conf 文件中。我的问题是,每当我发起到远程端的流量时,流量都来自我的私有 ip(aa.aa.aa.aa)而不是我的公共 ip AA.AA.AA.AA - 因为远程端拒绝使用我的私有 ip 作为加密域(与之有关它已在他们的本地网络中使用)他们不得不允许我的公共 ip。我如何配置 strongswan 以便远程端看到来自我的公共 ip 的流量(这样我们将有一个成功的隧道连接)。

本地站点 A:

  • 公网 IP:AA.AA.AA.AA
  • 私有 IP:aa.aa.aa.aa
  • 子网:aa.aa.aa.aa.aa/20

远程站点 B:

  • 公网 IP:BB.BB.BB.BB
  • 私有 IP:bb.bb.bb.bb
  • 子网:bb.bb.bb.bb/32

配置参数:

阶段1

  • 认证方法:预共享密钥
  • 加密方案:IKE
  • DH:第 2 组
  • 加密算法:ESP-AES-256
  • 哈希算法:SHA1
  • 主模式
  • 使用寿命(有待协商):86400 秒

阶段2

  • 封装:ESP
  • 加密算法:AES-256
  • 身份验证算法:SHA1
  • 无 PFS
  • 使用寿命(有待协商):3600 秒
  • 密钥交换:是

任何帮助都将不胜感激!


ipsec配置文件卡戎日志

答案1

我发现在 ubuntu 18.04 上运行的 strongswan 存在一些问题。服务在启动几秒钟后就崩溃了,尽管我在配置文件中设置了公共 IP,但 ipsec 不知何故使用我的私有 IP 而不是我的公共 IP 进行隧道传输。

因此我继续安装带有 openswan 的 CentOS,并且使用相同的配置我能够建立隧道。

相关内容