我想要的是:

我想要的是:

我想要的是:

我想连接到 OpenVPN,并且我的预定义 IP 地址列表通过该连接路由(tun0)。所有其他流量不受影响(通过eth0)。

我已尝试过:

  • 我想确保ufw这不是问题所在,所以我禁用了它(ufw disable)。
  • 我想确保iptables这不是问题所在,因此我重置了它,结果如下:

$ iptables -L

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

(应该可以接受任何连接)

我成功做到了:

  • 我可以连接到 OpenVPN 服务器
  • 我可以 ping 通 OpenVPN 服务器主机 ( 10.8.0.1)
  • 我可以 ping 到其他连接的主机(对于此用例不需要,但我可以)

无效的方法:

  • 访问 OpenVPN 网络之外的任何内容(10.8.0.x

我如何配置东西:

在客户端,我手动设置路由(在conf文件中):

route-nopull
route 54.175.222.246 255.255.255.255
route 10.8.0.0 255.255.255.0

54.175.222.246是 的 IP 地址http://httpbin.org/

这实际上将内容发送到 OpenVPN 服务器;日志:

Jan  1 12:02:08 bare2 ovpn-server[25265]: client-deskserver/77.251.109.156:45958 UDPv4 WRITE [229] to     [AF_INET]77.251.109.156:45958: P_DATA_V1 kid=0 DATA len=228
Jan  1 12:02:08 bare2 ovpn-server[25265]: client-deskserver/77.251.109.156:45958 UDPv4 WRITE [229] to [AF_INET]77.251.109.156:45958: P_DATA_V1 kid=0 DATA len=228
Jan  1 12:02:08 bare2 ovpn-server[25265]: client-deskserver/77.251.109.156:45958 UDPv4 READ [101] from [AF_INET]77.251.109.156:45958: P_DATA_V1 kid=0 DATA len=100
Jan  1 12:02:08 bare2 ovpn-server[25265]: client-deskserver/77.251.109.156:45958 UDPv4 READ [101] from [AF_INET]77.251.109.156:45958: P_DATA_V1 kid=0 DATA len=100
Jan  1 12:02:08 bare2 ovpn-server[25265]: client-deskserver/77.251.109.156:45958 TUN WRITE [64]
Jan  1 12:02:08 bare2 ovpn-server[25265]: client-deskserver/77.251.109.156:45958 TUN WRITE [64]
Jan  1 12:02:08 bare2 ovpn-server[25265]: client-deskserver/77.251.109.156:45958 TUN READ [123]
Jan  1 12:02:08 bare2 ovpn-server[25265]: client-deskserver/77.251.109.156:45958 TUN READ [123]

然而,要么服务器没有将其重定向到公共互联网连接,或者http 服务器发回的任何内容都不会被 OpenVPN 服务器接收或重定向。我不知道是哪种情况,也不知道如何解决其中任何一个问题。(我发现的大多数帖子都是关于发送全部通过 OpenVPN 进行通信,而不是具体的交通;那些关于具体的交通,谈到允许东西通过iptables,但这些事情没有帮助)

有什么建议么?

答案1

在网上搜索了半天,终于找到了这个帖子

简而言之,我要做的就是:

iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

(我还必须启用 ipv4 转发,但我很久以前就已经这样做了

相关内容