我试图设置OpenVPN允许我连接一些笔记本电脑到我的networking,让笔记本电脑通过HTTP连接到特定的计算机(如服务器pipe理页面)和Windows共享(访问文件)
在testing环境中,我的笔记本电脑生活在一个192.168.1.X地址范围的networking中。 主机networking的地址范围为10.66.77.X托pipeOpenVPN服务器的服务器地址为10.77.10.20。 我需要访问这台机器上的一些应用程序服务器网页,可以在各种端口上访问带有Windows共享的服务器以及其他一些我需要访问的基于网页的地址在地址10.66.77.20
服务器和笔记本电脑的configuration文件附在下面。 笔记本电脑build立VPN连接没有问题,但我不能访问任何的机器,即使是一个简单的ping失败。 也许路由问题? 笔记本电脑的路由表也显示在下面 – 每个想法是赞赏!
谢谢! MAIK
服务器configuration文件
port 1194 dev tun tls-server ca /etc/openvpn/keys/ca.crt cert /etc/openvpn/keys/projects.crt key /etc/openvpn/keys/projects.key dh /etc/openvpn/keys/dh1024.pem server 10.8.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt push "route 10.66.77.0 255.255.255.0" keepalive 10 60 inactive 600 route 10.8.0.1 255.255.255.0 user openvpn group openvpn persist-tun persist-key verb 4
客户端configuration文件
dev tun proto udp remote SERVERADDR 1194 resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert accountingLaptop.crt key accountingLaptop.key ns-cert-type server comp-lzo verb 3
在客户端笔记本电脑上产生路由表
C:\Documents and Settings\User>route print =========================================================================== Interface List 0x1 ........................... MS TCP Loopback interface 0x2 ...00 23 5a 9b 64 9b ...... Atheros AR8132 PCI-E Fast Ethernet Controller - Packet Scheduler Miniport 0x3 ...00 24 2c 35 c9 6b ...... Dell Wireless 1395 WLAN Mini-Card - Packet Sched uler Miniport 0x4 ...00 ff 5e 03 43 9b ...... TAP-Win32 Adapter V9 - Packet Scheduler Miniport =========================================================================== =========================================================================== Active Routes: Network Destination Netmask Gateway Interface Metric 0.0.0.0 0.0.0.0 192.168.1.1 192.168.1.129 25 10.8.0.1 255.255.255.255 10.8.0.5 10.8.0.6 1 10.8.0.4 255.255.255.252 10.8.0.6 10.8.0.6 30 10.8.0.6 255.255.255.255 127.0.0.1 127.0.0.1 30 10.66.77.0 255.255.255.0 10.8.0.5 10.8.0.6 1 10.255.255.255 255.255.255.255 10.8.0.6 10.8.0.6 30 127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 192.168.1.0 255.255.255.0 192.168.1.129 192.168.1.129 25 192.168.1.129 255.255.255.255 127.0.0.1 127.0.0.1 25 192.168.1.255 255.255.255.255 192.168.1.129 192.168.1.129 25 224.0.0.0 240.0.0.0 10.8.0.6 10.8.0.6 30 224.0.0.0 240.0.0.0 192.168.1.129 192.168.1.129 25 255.255.255.255 255.255.255.255 10.8.0.6 2 1 255.255.255.255 255.255.255.255 10.8.0.6 10.8.0.6 1 255.255.255.255 255.255.255.255 192.168.1.129 192.168.1.129 1 Default Gateway: 192.168.1.1 =========================================================================== Persistent Routes: None
你不想要NAT VPN连接,这将使所有的客户端似乎来自VPN盒,这使得排除故障很痛苦。 您也不希望为服务器添加vpn地址的静态路由,因为这不属于此类configuration。
你要做的是在路由器上为vpn子网添加一个路由。 在思科,你会只是有这样的事情:
ip route 192.168.1.0 255.255.255.0 10.77.10.20
任何其他路由器都会有类似的命令。
这个问题可能是你的VPN不是在VPN服务器上的NAT,所以VPN客户端直接连接到服务器的IP地址是10.8.0.0,这是其他服务器不知道的networking。 2解决scheme是使用iptables伪装成服务器上的nat,或将静态路由添加到其他服务器。
检查服务器上IP路由标志的状态:
cat /proc/sys/net/ipv4/ip_forward
应该返回“1”
OpenVPN需要知道您的笔记本电脑的子网,否则将丢弃该IP子网的数据包。 检查日志。
检查iroute的文档
有了这个,它会将相应的ip路由添加到服务器。
作为一个经验法则,您需要为每个没有直接连接到笔记本电脑的networking设置静态路由。
所以,假设你的OpenVPN服务器可以与10.66.77.20交谈,你需要做以下的事情