最近,我在这个论坛上发布了几乎相同的关于 VPN 配置错误的帖子。最终,我通过从头开始重新配置服务器端解决了这个问题,它开始正常工作。但我遇到的一件事是 - 我无法通过 VPN 服务器连接互联网。我使用跟踪路由命令来检测流量在哪里停止,显然它在我的 VPN 服务器上停止。我真的不知道如何处理它。有人帮帮我吧:)这是我的服务器配置和客户端配置。是的,我的 VPN 服务器使用 Debian 8.0,客户端是 Windows 7 和 10。
服务器配置。
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key # This file should be kept secret
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
keepalive 10 120
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
客户端配置。注意:服务器的 IP 是隐藏的。
client
dev tun
proto udp
remote 107.155.1x4.1x2 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca "C:\\OVPN\\ca.crt"
cert "C:\\OVPN\\client1.crt"
key "C:\\OVPN\\client1.key"
ns-cert-type server
comp-lzo
verb 3
任何建议都会很有帮助。谢谢!
答案1
push "redirect-gateway def1 bypass-dhcp"
将重定向网关选项推送到客户端将导致所有源自客户端机器的 IP 网络流量都通过 OpenVPN 服务器。需要配置服务器以某种方式处理此流量,例如通过 NAT 将其传输到互联网,或者通过服务器站点的 HTTP 代理进行路由。
此后,您需要在服务器上
- 也启用 ip_forward
- 使用 iptables 或 nftables 对 VPN 发起的流量进行 SNAT(或 MASQUERADE)