我在一家小公司工作,直到最近,该公司才拥有由一家托管公司在公共 IP 上托管的少量专用服务器。为了管理我们所有的内部网站,我们使用 SSH 隧道和仅向本地主机提供服务的 Apache 网站。
最近,随着我们不断扩展,我们必须使用的隧道数量开始变得有点疯狂,我们正在寻找另一种解决方案。我们希望有人能够通过安全连接访问一台服务器并访问其他服务器(在公共 IP 上)。所有服务器都运行 Ubuntu 或 Debian。
我们应该寻找什么样的解决方案?我们可以设置 VPN 来改进此设置吗?
答案1
你可能会做得更糟OpenVPN在这种情况下;设置起来非常简单(只要您可以提前创建 SSL 证书颁发机构,但有很多关于此的好的文章),并且支持很多客户端 - 多个平台和多种实现。
您需要修改所有这些内部网站以监听内部网络接口,而不仅仅是本地主机。
答案2
您可以简单地使用 TCP 包装器,并通过将其 IP 添加到 来允许“中央”服务器通过 SSH 访问所有其他服务器/etc/hosts.allow
。
从安全性方面来说,这并不是那么理想,因为一个盒子能够登录到任何地方,但如果你将其视为“堡垒”主机并妥善保护它,那么世界末日就不存在了。
答案3
如果您只想访问网站,那么最好在 Apache 级别保护访问。这就是 SSL/TLS 的用途。即使是通过 SSL 进行的基本身份验证也非常安全(使用强密码)。并且可以调整 Apache 以检查客户端证书。