OpenVPN允许两个客户端相互连接,而无需全局使用客户端到客户端


8

我在CentOS 6上运行OpenVPN 2.3.7。我正在使用路由(tun),并且有两个OpenVPN实例。在第二个实例中,有两个我想彼此可见的客户端,即ping,访问端口等。它们都在同一子网中,因此应该很简单,它们通过以下方式配置了静态地址: ccd。

我希望这两个客户端能够通过其OpenVPN LAN IP地址彼此看到,而无需client-to-client在server.conf中启用。

我很确定它可以用iptables来完成,尽管我使用CSF,但我将它用作防火墙,但它是iptables的包装。

这些是客户端的IPv4地址:

OpenVPN Client #1: 10.8.2.14 
OpenVPN Client #2: 10.8.2.17

我需要客户端#1才能访问客户端2上运行的服务,并且我猜想兼容性#2客户端是否需要响应才能看到客户端#1。

我已经在OpenVPN服务器上尝试了几个FORWARD链规则,但是两个客户端之间无法进行任何通信。OpenVPN服务器显然可以对两个客户端执行ping操作,客户端可以对OpenVPN服务器网关进行ping操作,客户端之间显然无法看到彼此。

我已经尝试过但没有奏效的一些规则:

iptables -A FORWARD -s 10.8.2.14 -d 10.8.2.17 -j ACCEPT
iptables -A FORWARD -s 10.8.2.17 -d 10.8.2.14 -j ACCEPT

我正在寻求有关iptables的帮助,以使两个客户端彼此可见,而无需启用客户端到客户端,请参阅这是两个客户端的特殊要求,而在其他任何地方都不需要。

另一种选择是通过NAT在VPN客户端上公开服务,但是出于安全考虑,我宁愿避免这样做。

任何见解都会有所帮助!

谢谢,

詹姆士


您可以发布两个节点的输出ifconfig和路由表(netstat -rn)吗?
奥利弗2015年

Answers:


1

我建议您做相反的事情:启用client-to-client然后使用iptables阻止所有客户端,但要允许彼此对话的两个客户端除外。


1

我知道这个问题很旧,但是只是为了向可能仍在访问此页面的新用户说明这一点:

如果您使用的client-to-client是防火墙,则服务器甚至根本看不到这些数据包,因为它们永远不会从OpenVPN服务器中退出,因此,由于它们没有到达主机层,因此您将无法使用防火墙,因为它将无法到达,并且您的规则将毫无用处。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.