![VPN 安全性与传统 TLS 的比较](https://linux22.com/image/497086/VPN%20%E5%AE%89%E5%85%A8%E6%80%A7%E4%B8%8E%E4%BC%A0%E7%BB%9F%20TLS%20%E7%9A%84%E6%AF%94%E8%BE%83.png)
我们想要在互联网上公开一个 Web 应用。显而易见的解决方案是使用 TLS 和 RBAC 通过 HTTP 提供该应用。
通过使用 VPN 进一步锁定访问权限是否会增强安全性?如果可以,如何增强安全性?据我了解,VPN 肯定会增加使用的麻烦,因为客户端需要 VPN 客户端,并且连接到 VPN 时并发网络活动可能会受到限制。
答案1
解决方案很大程度上取决于您的身份验证方法和用户群。仅 VPN 访问的架构更简单,但是您可能会向这些应用程序用户暴露比您想要的更多的内部网络,并且您将听到无数用户的抱怨,他们现在必须经过至少 2 个步骤才能连接和验证 VPN。
您必须首先确定服务器的位置:
- 使用 VPN 进入防火墙
- 在 DMZ 内使用反向代理和共享身份验证
- 共置或云端共享身份验证,或单独的用户帐户管理
那么如果它仅供内部用户使用,而不是供外部成员使用。有许多选项可以与现有用户数据库集成,使用 Kerberos、NTLM、PKI、内部应用程序身份验证(数据库)或 Web 服务器(.htpass/LDAP)。
如果是针对内部员工,那么通过 Verisign 或 Entrust 管理的 PKI 可能值得研究。这允许您管理和部署用于公钥/私钥身份验证的安全证书。您可以将服务器置于反向代理 (mod_security) 中以监控和过滤互联网攻击,然后通过证书进行身份验证(例子)不过它的价格相当昂贵。
如果是供公众使用,那么标准 HTTPS + LDAP 通常是最经济的选择。您可以每晚同步 LDAP 角色数据库等,以避免必须管理多组用户帐户。
实际上,在 Web 应用的前几个阶段,我们选择继续使用 VPN。我们对用户笔记本电脑有足够的控制权,能够支持开销并保持安全性。最终,我们将使用托管 PKI 以及 AD/LDAP 同步来实现 RBAC。祝你好运。
答案2
我认为 VPN 不会对你的应用程序的安全性产生任何积极影响。