允许特定 OpenVPN 客户端访问其他客户端

允许特定 OpenVPN 客户端访问其他客户端

我有多个 OpenVPN 服务器,这些服务器有从属 1 和从属 2 等客户端,它们只能访问 OpenVPN 服务器本身。我有一个专用的 CA 服务器,用于为系统创建新用户。我想实现对主控 1 和主控 2 等可以访问从属客户端的用户的支持。

我读到,如果我在 OpenVPN 上启用客户端到客户端,我就不能使用防火墙,因为客户端到客户端的网络将在 OpenVPN 内部完成,而无需到达主机层。

我读到我可以使用 client-config-dir 和证书通用名对 server.conf 创建客户端特定的修改,但我找不到使用“master-*”等前缀进行修改的方法。

为了开始解决这个问题,我尝试通过在 OpenVPN 服务器上运行以下命令来允许所有客户端之间的所有网络连接,而无需在 OpenVPN 上启用客户端到客户端的连接:

echo 1 > /proc/sys/net/ipv4/ip_forward
sudo iptables -I FORWARD --src 10.8.0.0/24 --dst 10.8.0.0/24 -j ACCEPT

OpenVPN 客户端上的这些命令:

sudo ip route del 10.8.0.1/32 via 10.8.0.53
sudo ip route add 10.8.0.0/24 via 10.8.0.53 dev tun0

此后OpenVPN客户端仍然无法连接到其他客户端。

答案1

这是iroute通过“CCD”机制(每个客户端配置位)设置适当的指令来完成的。

了解更多信息。

相关内容