我想到了一个主意,使用带有两个以太网接口的 AWS EC2 来实现 L2TP/IPSec VPN。一个接口 (eth0) 将接收来自客户端的 L2TP/IPSec 连接(和 ssh 连接),而另一个接口 (eth1) 将充当主 VPN 接口。关键是,我可以使用 eth1 接口及其身份浏览互联网,而 eth0 仅用于连接 VPN;它永远不会被公众所知。
我尝试使用 iptables 进行路由,研究了如何使用 ip route 和 ip rule 命令,并调整了 xl2tpd、pppd 和 IPsec 的设置。但都无法正常工作。
我正在使用 GitHub 上的这个脚本来设置 VPN。https://github.com/hwdsl2/setup-ipsec-vpn
答案1
##通过脚本正常安装ipsec-vpn## ##环境## eth0:111.222.333.91/29 网关 111.222.333.92 eth1:192.168.0.1/24 gw 192.168.0.254(默认网关) ##解决方案## // 重定向输入 iptables -t nat -A PREROUTING -i eth0 -d 111.222.333.91 -j DNAT --到目的地 192.168.0.1 // 重定向输出 回显“100 vpn”>> /etc/iproute2/rt_tables iptables -t mangle -A OUTPUT -p udp --sport 500 -j MARK --set-mark 1 iptables -t mangle -A OUTPUT -p udp --sport 4500 -j MARK --set-mark 1 iptables -t mangle -A OUTPUT -p udp --sport 1701 -j MARK --set-mark 1 ip 规则添加 fwmark 1 表 vpn ip route 添加默认通过 111.222.333.92 dev eth0 表 vpn