SSH VPN 默认网关帮助

SSH VPN 默认网关帮助

我正在使用以下方法设置 SSH TUN(“-w”)VPN:https://help.ubuntu.com/community/SSH_VPN

我的 /etc/network/interfaces 中有以下内容:

iface tun0 inet static
       pre-up ssh -f -w 0:0 singpolyma.dnsalias.net 'ifdown tun0; ifup tun0'
       pre-up sleep 10
       address 10.0.0.2
       pointopoint 10.0.0.1
       netmask 255.255.255.0
       up route add -net 10.0.0.0 netmask 255.255.255.0 gw 10.0.0.2 tun0
       up route add singpolyma.dnsalias.net gw 10.2.1.1 eth0
       up route add default gw 10.0.0.1 tun0
       up route del default gw 10.2.1.1 eth0
       down route add default gw 10.2.1.1 eth0
       down route del default gw 10.0.0.1 tun0
       down route del -net 10.0.0.0 netmask 255.255.255.0 gw 10.0.0.2 tun0
       down route del singpolyma.dnsalias.net gw 10.2.1.1 eth0

然后,我进行隧道连接的机器(ssh 客户端)上的 tun0 正常运行,但流量无法路由。这有一定道理,因为该代码试图使用 10.0.0.1(我进行 SSH 连接的机器的 tun IP)作为默认网关,而不是实际的远程默认网关。当我将实际的远程网关 IP(192.168.0.1)放入路由中时,命令失败并出现“未找到”错误。

我应该做些什么不同的事情?

答案1

除了跑步之外:

sysctl -w net.ipv4.ip_forward=1

在 Ubuntu 上似乎您还需要运行:

iptables -P FORWARD ACCEPT
iptables --table nat -A POSTROUTING -o eth0 -j MASQUERADE

相关内容