我有一个坐在数据中心的服务器。 它正在运行Linux。 eth0上的WAN接口连接到公共Internet; eth1上的LAN接口连接到10.0.0.0上的数据中心networking。
机器在端口n,p和q上运行一组服务; 以及港口r,s和t的一组服务。
它的WAN接口防火墙,所以没有任何东西是公开的互联网。
我希望用户能够使用OpenVPN连接到机器(或者其他什么,只要它是encryption的和安全的)。 用户应能够连接到端口n,p和q上的服务,但不能连接到端口r,s和t或10.0.0.0networking上的服务。
我也需要跟踪用户的带宽消耗。 如果我可以限制用户每单位时间(例如1GB /周,10GB /月)和/或限制它们的持续传输速率(例如100KB /秒),那将是一大好处。 让他们更快爆发也将是非常好的。
我是一个总OpenVPN noob。 我甚至不确定这个任务是否正确,尽pipe有人提出这个build议。 很显然,使用ssh并不是一个很好的解决scheme,因为它取决于authorized_keys文件中的一些限制,带宽监视/限制将是困难的。
我欢迎任何build议。
OpenVPN将为您提供从客户端到主机的基本连接。 从那里开始,只需要configurationiptables或者你select的防火墙就可以让stream量通过你想要的服务和设备。 OpenVPN使用自己的TAP / TUN接口和一个单独的networking,所以你应该能够创build规则来lockingstream量,以任何你想要的。
您将需要使用其他工具来获取带宽消耗。 也许别人可以在这个钟声上。
OpenVPN不会做 – 它可以做拨号,而不是其他的。
您基本上需要一个具有所有function的合适的VPN端点。 我将搭build一个服务器 – Mikrotik RouterOS,可能是Miktrotik 1xxx路由器,它们相当便宜,可以做到这一点。
如果你喜欢这样做,可以使用Linux,使用IpTables进行防火墙(端口限制)和其他许多带宽控制软件。