我有一个IP地址为x.x.x.x的OpenVPN服务器 我有一台本地服务器,其本地IP为yyyy,我想通过VPN从Internet访问其资源(http,ssh等。),因此我为该服务器创建了一个配置文件,并且其IP地址为10.8 .0.2 所有本地服务器流量都通过VPN传递,因为当我从本地服务器执行whatsmyip时,它显示x.x.x.x
我的问题是,如何在不使用DDNS的情况下从Internet访问本地服务器(入站请求的所有端口都应直接连接到本地服务器),我有一个VPN服务器,因此它使事情变得更加轻松和易于管理。 。例如,我可以为某些本地Wiki页面设置A记录,创建本地电子邮件服务器并将其公开等。
我知道这与IPTABLES,路由设置伪装等有关。 有人可以帮忙吗?
答案 0 :(得分:0)
这工作得很好:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j DNAT --to-destination 10.8.0.2:443
eth0是OVPN服务器的物理接口,所以我希望所有从eth0(公共服务器IP)到位于10.8.0.2上的客户端服务器的入站流量,而且我必须指定要预路由的每个端口
我也通过端口22和80做到了这一点:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 2222 -j DNAT --to-destination 10.8.0.2:22
所以每当我这样做
ssh root@VPN_IP -p 2222
它将把ssh转发到客户端服务器。