具有 ssh 访问的 pptp 网关

具有 ssh 访问的 pptp 网关

我正拼命尝试设置一个网关服务器,将所有本地流量转发到 ppp0 连接,但仍可通过本地网络上的 ssh 访问。

点对点连接建立良好,IP 转发已启用,并且

route add -net 0.0.0.0/0 ppp0
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

我几乎实现了我想要的。但是一旦设置了“路由”,就无法再通过 ssh 访问网关服务器。

我对“route”和“iptables”还很陌生,还不完全了解它们的工作原理,但我的问题一定有一个非常简单的解决方案。

请帮忙!

一个非常相似的问题,没有适当的解决方案:如何在不丢失 SSH 访问权限的情况下通过 VPS 上的 PPTP VPN 连接路由传出流量?

编辑:下面是更详细的例子

本地主机(192.168.0.1)-->网关(192.168.0.2)-->VPN(93.184.216.34)

GATEWAY 应为通过 VPN 连接到互联网的本地网关。这是一个非常简单的设置,如上所述:启用 IP 转发,在 GATEWAY<>VPN 之间建立 PPTP 连接,然后通过 ppp0 设置默认路由。

LOCALHOST 现在可以使用 GATEWAY 通过 VPN 的 IP 地址访问互联网一旦建立 PPTP 连接,就无法再通过 SSH 访问本地网络 (192.168.0.X) 内的 GATEWAY。

编辑2:ifconfig 和 route 输出(192.168.0.10 是“常规”本地网关)

eth0      Link encap:Ethernet  Hardware Adresse 12:34:56:78:90:ab  
          inet Adresse:192.168.0.1  Bcast:192.168.1.255  Maske:255.255.255.0

ppp0      Link encap:Punkt-zu-Punkt-Verbindung  
          inet Adresse:10.10.1.1  P-z-P:93.184.216.34  Maske:255.255.255.255

-

Ziel            Router          Genmask         Flags Metric Ref    Use Iface
default         *               0.0.0.0         U     0      0        0 ppp0
default         192.168.0.10    0.0.0.0         UG    0      0        0 eth0
93.184.216.34   192.168.0.10    255.255.255.255 UGH   0      0        0 eth0
93.184.216.34   *               255.255.255.255 UH    0      0        0 ppp0
localnet        *               255.255.255.0   U     0      0        0 eth0

答案1

/etc/ppp/peers/配置:

...
defaultroute
replacedefaultroute

/etc/ppp/ip-up.d/配置:

#!/bin/bash
route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.0.10 dev eth0
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

相关内容