我已经在我的 vps 中设置了一个 openvpn 访问服务器。现在我住在中国,政府屏蔽了许多外国网站,例如 facebook 和 twitter。
我可以使用 vpn 服务器跨越中国的防火墙通过运行 Windows XP 的桌面访问 Twitter 等。
但是我的笔记本是xubuntu 12.04,无法突破国家防火墙,我只能通过ubuntu里的openvpn客户端,命令是“sudo openvpn --config client.ovpn”连接vpn服务器
由于桌面运行正常,我认为 vpn 访问服务器的设置没有问题。ubuntu 客户端中是否有任何特殊设置?我没有更改 openvpn 访问服务器提供的配置。
我反复在 Google 上搜索这个问题,iptables 的说明让我很困惑。而且我也在 ubuntu 中打开了 ip forward。仍然不起作用。
xubuntu中原有的路由表:
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 wlan0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlan0
173.224.215.16 192.168.0.1 255.255.255.255 UGH 0 0 0 wlan0
192.168.0.0 0.0.0.0 255.255.255.0 U 2 0 0 wlan0
连接vpn后的路由表:
0.0.0.0 5.5.0.1 128.0.0.0 UG 0 0 0 tun0
0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 wlan0
5.5.0.0 0.0.0.0 255.255.248.0 U 0 0 0 tun0
46.x.x.x 192.168.0.1 255.255.255.255 UGH 0 0 0 wlan0
128.0.0.0 5.5.0.1 128.0.0.0 UG 0 0 0 tun0
169.254.0.0 0.0.0.0 255.255.0.0 U 1000 0 0 wlan0
173.224.215.16 192.168.0.1 255.255.255.255 UGH 0 0 0 wlan0
192.168.0.0 0.0.0.0 255.255.255.0 U 2 0 0 wlan0
46.xxx是我的vps的公网ip。
客户端.ovpn:
...
setenv FORWARD_COMPATIBLE 1
client
server-poll-timeout 4
nobind
remote 46.x.x.x 1194 udp
remote 46.x.x.x 1194 udp
remote 46.x.x.x 443 tcp
remote 46.x.x.x 1194 udp
remote 46.x.x.x 1194 udp
remote 46.x.x.x 1194 udp
remote 46.x.x.x 1194 udp
remote 46.x.x.x 1194 udp
dev tun
dev-type tun
ns-cert-type server
reneg-sec 604800
sndbuf 100000
rcvbuf 100000
auth-user-pass
# NOTE: LZO commands are pushed by the Access Server at connect time.
# NOTE: The below line doesn't disable LZO.
comp-lzo no
verb 3
setenv PUSH_PEER_INFO
...
我省略了 ca、密钥等等。
提前致谢。