我工作的公司已决定使用 OpenVPN 来取代大量使用 ssh (替代大量使用 ssh 的合适 VPN)
我尝试设置 OpenVPN 以进行桥接连接。我可以通过与 VPN 服务器位于同一网络上的机器进行连接。不幸的是,我无法从 LAN 外部连接到 VPN 服务器;来自 WAN 端口的连接失败并显示WSAETIMEDOUT
错误消息。
我正在将路由器上的端口 1194(用于 tcp 和 udp)转发到端口 1194 上的 OpenVPN 服务器。
是否有任何工具可以帮助我(例如 Netcat)等隔离问题并排除设置故障?
配置详细信息
Ubuntu 10.04 LTS OpenVPN“服务器”私人局域网 192.168.10.0/24
客户端:大多数是 Windows XP / Vista / Windows 7 机器。
/etc/网络/接口
auto lo
iface lo inet loopback
auto br0
iface br0 inet static
address 192.168.10.95
network 192.168.10.0
netmask 255.255.255.0
broadcast 192.168.10.255
gateway 192.168.10.1
bridge_ports eth0
bridge_fd 9
bridge_hello 2
bridge_maxage 12
bridge_stp off
auto eth0
iface eth0 inet dhcp
/etc/openvpn/server.conf
port 1194
dev tap0
up "/etc/openvpn/up.sh br0"
down "/etc/openvpn/down.sh br0"
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
server-bridge 192.168.10.95 255.255.255.0 192.168.10.50 192.168.10.80
tls-auth ta.key 0
user nobody
group nogroup
client-to-client
duplicate-cn
keepalive 10 120
cipher BF-CBC # Blowfish (default)
comp-lzo
persist-key
persist-tun
status openvpn-status.log
verb 6
mute 20
上传文件 /bin/sh #!/bin/sh 复制代码
BR=$1
DEV=$2
MTU=$3
/sbin/ifconfig $DEV mtu $MTU promisc up
/usr/sbin/brctl addif $BR $DEV
下载 /bin/sh #!/bin/sh 复制代码
BR=$1
DEV=$2
/usr/sbin/brctl delif $BR $DEV
/sbin/ifconfig $DEV down
客户端.ovpn
client
dev tap
remote 192.168.10.184:1194
ca ca.crt
cert maven-lunch.crt
key maven-lunch.key
tls-auth ta.key 1
ping 10
comp-lzo
verb 6
mute 10
**编辑于 2010 年 9 月 20 日 18:00 EDT (@Zoredache) **
我正在使用 wan 地址(在本例中为 10.1.2.129)。
我看到来自我的测试客户端 (10.1.10.112) 的连接尝试
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on any, link-type LINUX_SLL (Linux cooked), capture size 96 bytes
17:52:23.256396 IP 10.1.10.112.1638 > 192.168.10.184.1194: tcp 0
17:52:23.256415 IP 10.1.10.112.1638 > 192.168.10.184.1194: tcp 0
查看系统日志显示本地网络上断开的测试客户端的连接已中断:
尾部-f / var / log / syslog
Sep 20 16:40:07 MavenVPNBox ovpn-server[1369]: maven-lunch/192.168.10.189:1754 TUN WRITE [92]
Sep 20 16:40:07 MavenVPNBox ovpn-server[1369]: maven-lunch/192.168.10.189:1754 TCPv4_SERVER WRITE [133] to [AF_INET]192.168.10.189:1754: P_DATA_V1 kid=0 DATA len=132
Sep 20 16:40:07 MavenVPNBox ovpn-server[1369]: maven-lunch/192.168.10.189:1754 TCPv4_SERVER WRITE [181] to [AF_INET]192.168.10.189:1754: P_DATA_V1 kid=0 DATA len=180
Sep 20 16:40:08 MavenVPNBox ovpn-server[1369]: maven-lunch/192.168.10.189:1754 TCPv4_SERVER READ [133] from [AF_INET]192.168.10.189:1754: P_DATA_V1 kid=0 DATA len=132
Sep 20 16:40:08 MavenVPNBox ovpn-server[1369]: maven-lunch/192.168.10.189:1754 TUN WRITE [92]
Sep 20 16:40:08 MavenVPNBox ovpn-server[1369]: maven-lunch/192.168.10.189:1754 TCPv4_SERVER WRITE [133] to [AF_INET]192.168.10.189:1754: P_DATA_V1 kid=0 DATA len=132
Sep 20 16:40:08 MavenVPNBox ovpn-server[1369]: maven-lunch/192.168.10.189:1754 Connection reset, restarting [-1]
Sep 20 16:40:08 MavenVPNBox ovpn-server[1369]: maven-lunch/192.168.10.189:1754 SIGUSR1[soft,connection-reset] received, client-instance restarting
Sep 20 16:40:08 MavenVPNBox ovpn-server[1369]: TCP/UDP: Closing socket
答案1
您已将您的改为client.ovpn
使用 WAN 地址,而不是192.168.10.184
对吗?
无论如何,至于测试。在您的服务器上,为什么不直接对 udp/1194 执行 tcpdump 呢?tcpdump -qni any port 1194
看看是否有任何连接尝试真正从外部到达服务器。如果没有,则说明您的防火墙或边界设备上的 NAT 设置存在问题。
还要检查 /var/log/syslog。通常,当客户端尝试连接时,openvpn 日志条目会出现在那里。