我计划在网络中实现 SSL 解密之前,试图了解它。
对于 SSL 正向代理,正如我所读到的,我们将在 NGFW 上安装一些 CA 证书或类似的东西,以便在拦截连接时使用它。
现在,如果我这样做,我该如何避免证书出现任何错误,即使我将证书放在我的信任库中,我也可能会看到错误。
例如让你理解:
我已经在我的 NGFW 上安装或创建了一个用于 SSL 的证书,甚至已经在我的终端机器信任存储中安装了它,但它不会导致错误,因为像主题备用名称或我们定义通用名称的主题名称这样的参数与我们尝试访问的域/url 不匹配。
我试图从我的机器访问“www.abc.com”或其他任何网站。在这里,我使用的证书在“主题名称”下可能包含不同的信息,而不是我尝试访问的 URL。因此,这将导致由于字段不匹配而导致证书错误。
只是想详细了解 SSL 解密以及我们如何处理与证书相关的问题。
答案1
SSL拦截防火墙提供的证书是动态生成的。它符合客户端的期望,即匹配预期的主机名等。与原始服务器证书相比,主要区别在于它不是由原始(公共信任的)CA 颁发的,而是由防火墙上的 CA 颁发的。由于此 CA 受到客户端信任,并且证书中的信息符合客户端的期望,因此防火墙上颁发的证书将受到客户端的信任。
答案2
我想通过发出警告来增强 Steffen Ullrich 的回答:您实际上正在破坏端到端加密的安全性。虽然这是允许防火墙检查内容并过滤掉可能的恶意内容的唯一方法,但代价很高:
您正在为所有客户的 SSL 连接部署有效的中间人“攻击”。如果您的防火墙受到攻击,攻击者可以读取您的所有 SSL 流量,而您的客户却不会注意到。