OpenVPN – 只允许访问networking中的一台服务器

是否有可能阻止一个用户访问每个服务器/ IP,除了一个特定的服务器,一旦他通过OpenVPNlogin,我该怎么实现呢?

其他用户不应受此限制的影响。

谢谢。

如果您为每个不同的用户使用x.509证书,则可以从openvpn远程ip池中分配唯一的ip地址。 请参阅OpenVPN 2.2手册中的选项--ifconfig-pool-persist file

在这之后,你可以照常使用iptables。

请查看存储库https://github.com/dmytro/openvpn_restrict

它使用OpenVPN的learn-addressconfiguration选项来启动客户端连接/断开IPTables脚本。 客户端由证书的CN检测到。

learn-address /etc/openvpn/connect client-disconnect /etc/openvpn/connect

并按照自述文件中的说明添加脚本和configuration文件。

如果您的openvpn被configuration为使用路由而不桥接,您可以通过仅根据它们发送的证书推送主机路由/ 32来完成此操作。 openvpn示例configuration有一个如何设置的例子。