我在CentOS 6上运行OpenVPN 2.3.7。我正在使用路由(tun)并且有两个OpenVPN实例。 在第二个例子中,我想让两个客户端可见,即ping,访问端口等。它们都在同一个子网内,所以它应该是相当直接的,它们通过静态地址来configurationCCD。
我希望两个客户端能够通过他们的OpenVPN局域网IP地址看到对方,而不client-to-client在server.conf中启用client-to-client 。
我很确定它可以用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通两个客户端,客户端可以ping通OpenVPN服务器网关,客户端之间看不到明显的对话。
我已经尝试过的一些规则并没有工作:
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客户端上的服务,但是我宁愿避免为了安全而这样做。
任何见解都会有所帮助!
谢谢,
詹姆士
我build议你做相反的事情:启用client-to-client ,然后使用iptables来阻止所有的客户端,但是你想允许他们彼此交谈。
我知道这个问题是旧的,但只是为了澄清,可能仍然是访问此页的新用户:
如果你使用client-to-client你不能真正使用防火墙,服务器甚至不会看到这些数据包,因为他们永远不会从OpenVPN服务器回来,所以,因为他们没有到达主机层,你不会能够使用防火墙,因为它不会被达到,你的规则将是无用的。