问题:将 openswan vpn 流量路由到服务器之外

问题:将 openswan vpn 流量路由到服务器之外

尝试在 Amazon VPC 集群中设置基于 openswan 的服务器。目标是让我们能够通过 VPN 进入 VPC,让我们的工作站就像在网络上一样,更像是移动战士配置。

我们选择的 VPN 客户端是 Equinux VPN Tracker (http://equinux.com/us/products/vpntracker/) 适用于 Mac OS X。我们已经使用它通过基于硬件的 VPN 连接到我们现有的网络,并希望继续使用它连接到我们的 VPC 网络。

到目前为止,我已经将其设置为可以成功连接到在 VPC 中运行的 openswan 服务器,但我只能 ping openswan 服务器的内部 IP。我无法与网络上的任何其他设备通信。我可以运行 tcpdump 并看到 ping 请求出现,但它们从未到达另一台主机。

我的第一个想法是,这与 EC2 实例仅具有单个网络接口有关,但是我之前已经设置了 OpenVPN 连接而没有任何问题,尽管它们通常使用隧道设备,但我还没有真正找到带有隧道或单个接口的 openswan 的示例。

任何帮助将不胜感激。

一些配置:

VPC Subnet: 10.10.1.0/24
VPC Gateweay: 10.10.1.1
Openswan Private IP: 10.10.1.11
Openswan Public IP: xxx.xxx.xxx.xxx

Openswan 配置:

version 2.0

config setup
  interfaces=%defaultroute
  klipsdebug=none
  plutodebug=none
  dumpdir=/var/log
  nat_traversal=yes
  virtual_private=%v4:10.10.1.0/24

conn vpntracker-psk
  left=%any
  leftsubnet=vhost:%no,%priv
  right=10.10.1.11
  rightid=xxx.xxx.xxx.xxx
  rightsubnet=10.10.1.0/24
  rightnexthop=10.10.1.1
  auto=add
  authby=secret
  dpddelay=40
  dpdtimeout=130
  dpdaction=clear
  pfs=yes
  forceencaps=yes

iptables/sysctl:

sysctl -w net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

tcpdump 输出:

09:13:25.346645 IP ROADWARRIOR_IP.4500 > ip-10-10-1-11.4500: UDP-encap: ESP(spi=0x38543e78,seq=0x6), length 116
09:13:25.346645 IP 10.200.0.30 > 10.10.1.251: ICMP echo request, id 21250, seq 0, length 64
09:13:25.346789 IP ip-10-10-1-11.4500 > ROADWARRIOR_IP.4500: UDP-encap: ESP(spi=0x07046a51,seq=0x6), length 148
09:13:26.506120 IP ROADWARRIOR_IP.4500 > ip-10-10-1-11.4500: UDP-encap: ESP(spi=0x38543e78,seq=0x7), length 116
09:13:26.506120 IP 10.200.0.30 > 10.10.1.251: ICMP echo request, id 21250, seq 1, length 64
09:13:26.506245 IP ip-10-10-1-11.4500 > ROADWARRIOR_IP.4500: UDP-encap: ESP(spi=0x07046a51,seq=0x7), length 148
09:13:27.332308 IP ROADWARRIOR_IP.4500 > ip-10-10-1-11.4500: UDP-encap: ESP(spi=0x38543e78,seq=0x8), length 116
09:13:27.332308 IP 10.200.0.30 > 10.10.1.251: ICMP echo request, id 21250, seq 2, length 64
09:13:27.332397 IP ip-10-10-1-11.4500 > ROADWARRIOR_IP.4500: UDP-encap: ESP(spi=0x07046a51,seq=0x8), length 148

从 OS X ping 输出:

:~> ping 10.10.1.251
PING 10.10.1.251 (10.10.1.251): 56 data bytes
92 bytes from 10.10.1.11: Destination Host Unreachable
Vr HL TOS  Len   ID Flg  off TTL Pro  cks      Src      Dst
 4  5  00 5400 6c64   0 0000  3f  01 f85a 10.200.0.30  10.10.1.251 

Request timeout for icmp_seq 0
92 bytes from 10.10.1.11: Destination Host Unreachable
Vr HL TOS  Len   ID Flg  off TTL Pro  cks      Src      Dst
 4  5  00 5400 1818   0 0000  3f  01 4ca7 10.200.0.30  10.10.1.251 

Request timeout for icmp_seq 1
92 bytes from 10.10.1.11: Destination Host Unreachable
Vr HL TOS  Len   ID Flg  off TTL Pro  cks      Src      Dst
 4  5  00 5400 1a09   0 0000  3f  01 4ab6 10.200.0.30  10.10.1.251 

Request timeout for icmp_seq 2

答案1

不确定这是否有帮助,但我发现这个网站确实很有用。

http://fortycloud.com/setting-up-ipsecopenswan-in-amazon-ec2/

向下滚动到配置伪装部分。

这有助于“远程”端看到我本地网络上的所有主机,然后

http://www.howtogeek.com/howto/windows/adding-a-tcpip-route-to-the-windows-routing-table/

帮助了逆转。

答案2

务必确保禁用 Openswan 实例上的源/目标检查。我没有看到任何提及这样做的内容。

相关内容