VPS、VPN 和流量转发

VPS、VPN 和流量转发

我已经使用配置了 VPN 服务器OC服务器在我的 VPS 上,我使用 anyconnect 从客户端成功连接到 VPS。我希望所有流量都使用我的 vps 发送,因此我配置了 IPV4 流量转发并尝试了一些 iptables 设置,但即使我已连接到服务器,我的流量也不会从我创建的隧道发送。我如何转发来自 VPS 的所有流量,以便在查找我的 IP 时看到 VPS 的 IP?

答案1

让我们尝试解决这个问题。

我猜测你的vpn服务器有tunX接口,并且所有vpn client服务器都连接到这个接口。

在服务器上设置流量转发。这可以通过使用

 echo "1" > /proc/sys/net/ipv4/ip_forward

在那之后

添加一条规则,告诉转发流量

sudo iptables -A FORWARD -i tunX -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o tunX -m state --state ESTABLISHED,RELATED -j ACCEPT

由于你的路由器/防火墙不知道你 vpn lan 接口上的网络,所以tunX我们必须使用接口上的 ip 地址来masquarade处理从互联网到互联网的流量vpn clentseth0

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

这样,来自的流量tunX就可以通过到达网络的其余部分eth0

答案2

虽然 IP 转发对于获取客户端很有用在后面通过计算机进行对话并到达的网关你的默认网关,我认为它无法单独解决您的问题。

你想要的是全部非本地流量,由特定 IP/计算机处理。这就是默认网关的作用。它处理全部本地网络未处理的流量。

因此,你必须确保所有接口除了对于您连接到 VPS 的接口(可能是 tun0 或类似的东西),有一个默认网关 0.0.0.0(如果您使用的是 GUI,则基本上没有定义默认网关,这意味着它们只是被发送回网络)

然后,您使用 VPS 接口名称和 IP 定义默认网关 0.0.0.0,以便由您的 VPS 处理。

以下是我改编的修改网关的教程http://www.wikihow.com/Add-or-Change-the-Default-Gateway-in-Linux

请记住,如果您正在运行现代操作系统(例如 ubuntu),则可能已经安装了 NetworkManager,并且可以通过编辑连接来分配网关。

请记住,这可能就像重新启动并重新启动服务一样简单。所以也尝试一下。

如果您的计算机或连接到计算机的设备也需要访问互联网,那么您实际上需要通过 iptables 实现数据包过滤。

你可以在这里找到针对 ubuntu 执行此操作的教程:https://help.ubuntu.com/community/Internet/ConnectionSharing#Gateway_set_up

设置 Linux 默认网关的教程

改编自http://www.wikihow.com/Add-or-Change-the-Default-Gateway-in-Linux

第 1 部分 使用终端

  1. 打开终端。你可以从侧边栏打开终端,或者按Ctrl+Alt+T。

  2. 查看当前默认网关。你可以输入route并按 ↵ Enter 来检查默认网关的设置。“default”旁边的地址显示你的默认网关,它所分配的接口显示在表格的右侧。

  3. 删除当前默认网关。如果设置了多个默认网关,则会遇到连接冲突。如果要更改现有默认网关,请将其删除。输入sudo route delete default gw <IP Address> <Adapter>。例如,要删除 eth0 适配器上的默认网关 10.0.2.2,请输入sudo route delete default gw 10.0.2.2 eth0

  4. 输入sudo route add default gw <IP Address> <Adapter>。例如,要将 eth0 适配器的默认网关更改为 192.168.1.254,请输入sudo route add default gw 192.168.1.254 eth0。系统将提示您输入用户密码才能完成该命令。

第 2 部分:编辑配置文件

  1. 在编辑器中打开配置文件。输入 sudonano /etc/network/interfaces在 nano 编辑器中打开文件。编辑配置文件后,每次系统重启后,更改都会保留。

  2. 导航到正确的部分。找到要更改默认网关的适配器的部分。对于有线连接,这通常是 eth0。

  3. 将网关 IP 地址添加到该部分。例如,输入gateway 192.168.1.254以将默认网关设为 192.168.1.254。

  4. 保存更改并退出。按 Ctrl+X,然后按 Y 保存更改并退出。

  5. 重启网络。输入以下命令重启网络sudo /etc/init.d/networking restart

相关内容