我有一个想法,想将其提交给 serverFault 的聪明人,让他们挑出毛病。
我正在寻找一种方法来锁定 IIS 中的第三方应用程序。它是一种 Web 服务,因此没有登录页面或任何其他内容,它旨在用于 VPN 环境。我试图在没有 VPN 的情况下将其放在网上,并正在考虑如何为其添加某种安全性。我需要将其限制在某些网络中,它是一种商业产品,所以我可能会说您需要在私人网络上(即不是公共 wifi)才能使用它。我的想法是在 IIS 中使用 IP 地址限制,并编写一个应用程序,用户安装该应用程序并让其每隔几分钟使用其当前 IP 更新服务器,然后服务器阻止除最近更新的之外的所有更新。
这有多安全?这个想法有什么重大缺陷吗?或者在 IIS 中是否有更好的方法来实现这一点?
答案1
我发现这个方法有一个重大缺陷——攻击者只需劫持一次通信,然后应用程序就只会与他们的计算机通信。实际上,观察流量并了解需要做什么并不难。
当然,您可以使用公钥/私钥对加密来避免这个问题,然后您就可以进行身份验证了 - 这似乎是一个更好的主意。
答案2
我们使用了客户端证书。它们是 IIS 级别所必需的,而不是应用程序中所必需的,因此那里没有修改。然后任何想要加入的人都必须拥有我们颁发的客户端证书,因此无论他们从哪里运行它都无关紧要。当然,这并不会将其限制在某个网络内,只是限制在拥有证书的某些机器上。