我似乎遇到了大多数设置OpenVPN的人的相反问题:我似乎无法将 VPN客户端仅限于VPN子网。 相反,一旦客户端build立连接,他们就可以访问我的OpenVPN服务器的局域网上的任何IP地址,而不pipe子网。
我不想要这种行为。
服务器
我使用的是运行TomatoUSB(NoUSB VPN版本)Build 54的Linksys WRT54GL路由器。 我通过番茄GUI中的“VPN隧道”选项configuration了OpenVPN; 这是服务启动时使用的config.ovpn的转储:
daemon server 10.8.0.0 255.255.255.0 proto udp port 1194 dev tun22 comp-lzo adaptive keepalive 15 60 verb 3 push "dhcp-option DNS 192.168.1.1" push "redirect-gateway def1" ca ca.crt dh dh.pem cert server.crt key server.key status-version 2 status status
客户
我正在运行Windows 7 Home Premium 64位笔记本电脑上使用OpenVPN 2.1.4进行testing。 一旦客户端连接,我使用whatsmyip.org来validation,我在浏览时伪装成服务器的IP地址。 一切工作,因为它应该。 客户端configuration如下所示:
client dev tun proto udp resolv-retry infinite verb 3 nobind comp-lzo persist-key persist-tun remote REDACTED ca ca.crt cert client.crt key client.key redirect-gateway
问题
作为客户端,我可以ping通10.8.0.1,但是我也可以 ping 192.168.1.0子网中的任何地址。 我不希望我的VPN客户端有这个能力; 我宁愿连接只是一个隧道和客户端被包含在10.8.0.0子网内。
在“VPN隧道”页面的“高级”选项卡下,我已经确认“推送LAN到客户端”不被检查。 服务器configuration不包括通常将LAN推送到客户端的push "route 192.168.1.0 255.255.255.0"行。 然而,作为VPN客户端,我可以ping和访问服务器局域网中的任何IP地址。
我确定我做错了什么,但是我需要一些指导来解决这个问题。
那么这听起来像你的路由器仍然行事之间的路线知道它的各种networking。 你检查过设备上的路由表吗?
另一种方法是尝试在设备上configuration防火墙,以阻止来自vpnnetworking的stream量传播到其他networking。
所以这些是我的两个build议:检查linksys上的路由表,并考虑修改防火墙规则。 番茄使用iptables,所以一定是可能的。