我负责为一群员工build立一套“有networking的服务器”,但我不知道从哪里开始。 下面发表的是最初的要求,我的思路和我的问题。
要求:
1.任何软件都需要开源。
2.用户不熟悉技术,他们将通过自己的计算机连接,我们可以假设他们有pipe理员访问这些计算机,所以他们可以安装/运行软件,如果需要的话。
他们可以从网上的任何地方连接到这个有围墙的networking。
4.我们不会提供一个只处理来往于服务器的stream量的隧道。
5.这个连接应该是安全的。 (SSH也许只是一个想法)
6.员工使用Windows,Linux和MacOSX。
7.每个用户需要一个用户名/密码
8.每个用户login时间的日志需要在某个地方。
我的思路:
我最初想使用openVPN,但据我了解,通过VPNnetworkingpipe道一切,并有问题连接到所有3个PC平台,这不会工作,每个上述要求。
问题:
1.我对vpn的了解是否特意打开了VPN?
2.是否有任何基于Web的解决scheme,以便员工不必在他们的计算机上安装VPN客户端。 也许我可以有一个networkinglogin,将用户IP添加到防火墙的白名单,然后删除一段时间的不活动(只是一个想法)?
我完全错过了什么,或者这样做可以做得更好吗?
4.任何想法,想法,资源,网站链接等将是有益的。
TL; DR我需要一种方法来validation用户在不同PC平台上的任意一组服务器的身份。
感谢您的时间。
编辑:感谢大家的帮助,但我想我只是需要跳跃,试着用必要的软件设置一个debian盒,然后在遇到问题时提出问题。 我正在考虑所有事情,并且花费了大量的时间。 所以我的行动计划如下
我仍然困惑于设置用户名/密码帐户和logging时间和用户,但我会解决这个问题,当我到达它。
你有没有注意到我目前的行动计划有什么问题或陷阱?
广告
由于OpenVPN非常灵活,它很可能会满足您的需求。 但是它也是一个相当复杂的软件包,有很多configuration选项,所以在设置时需要准备一些工作 – “做我的意思是做”button还没有实现。
由于许多不同的用户和平台都连接到这个networking,所以我还假设你保护你的networking不在VPN服务器的后面。 基本上只是创build特定的Tun / Tap界面的规则,OpenVPN使用它来保证只有有效的stream量,这取决于你必须提供的服务。
正如syneticon-dj已经指出OpenVPN不要求你通过隧道接口发送所有的stream量。 事实上,你可以select在客户端或服务器端设置或推送路由到客户端,或者正如你所提到的设置OpenVPN接口作为默认网关(客户端路由与Windows)
#Network Route route 192.168.1.0 255.255.255.0 #Single host route trough a given server (1.2.3.4 over 10.20.30.40) route 1.2.3.4 255.255.255.255 10.20.30.40
在Mac OS上,我select的客户端是Windows上的Tunnelblick和Linux上的OpenVPN 。
最安全的身份validation方法是为每个用户生成证书。 所以你可以很容易地撤销你的服务器端的连接,并可以密封(取决于你的密钥大小);)
要在服务器上启用日志logging,只需将以下行添加到服务器configuration中即可
status /var/log/openvpn/server.status log-append /var/log/openvpn/server.log verb 3
(该文件夹需要存在,具有正确的权限)
第一个文件是为了快速的使用目的,来检查哪个用户login。 第二个为您提供每个连接的详细日志。
PS:Logrotateconfiguration,别人OpenVPN永远不会旋转日志本身…;)
/var/log/openvpn/*.log { daily copytruncate missingok rotate 7 delaycompress notifempty }