我有一个简短的问题:为什么我需要 SSL证书(我的意思是只有证书而不是SSL连接)?
在我的案例中,Google Chrome检测到连接是加密且安全的,但一切都是红色的,因为我自己创建了证书。 为什么我需要SSL证书,如果连接是安全的?
答案 0 :(得分:2)
仅仅因为到192.168.xxx.xxx的流量没有离开网络的边界并不意味着它是安全的。
特别是如果你有连接到网络的BYOD(即使不是,你也不想成为hard shell with a juicy interior),有人可以带一台受损的笔记本电脑或手机,将它连接到网络,以及病毒可以拦截网络上的所有内容(参见firesheep)。
因此,您必须假设网络是恶意的 - 将您的LAN视为互联网。
现在问题又回来了 - 为什么我不能依赖自签名证书(在本地网络和互联网上)?
那么,你有什么保护措施? TLS(SSL)可以防止两件事:
拦截 - 即使我MITM你(我成为你的路由器),我也看不懂你发送和接收的东西(所以我看不到你的信用卡号码或密码)
欺骗 - 我无法在您和服务器之间注入代码。
那它是如何运作的?
我连接到服务器并获得由CA签名的证书。浏览器认为此CA是受信任的(它们必须通过各种审核才能获得该信任,如果它们破坏了它们就会被驱逐)。他们验证您是否控制了服务器,然后签署了您的公钥。
因此,当客户端从服务器获取签名的公钥时,他知道他将加密只有目标服务器可以解密的消息,因为MITM无法用他自己的公钥代替服务器(他的公钥不会由CA签名。
现在您可以与服务器安全地通信。
如果浏览器接受任何 SSL证书(自签名)会怎样?
还记得浏览器如何通过假MITM证书告知官方证书吗?通过CA签名。如果没有CA,那么浏览器根本无法知道它是在与官方服务器还是MITM通信。
所以自签名证书是一个很大的禁忌。
您可以做什么,但是,您可以生成证书并使其成为“根”证书(实际上,为您的内部计算机启动您自己的CA)。然后,您可以将其加载到浏览器CA存储中,并且您将能够通过SSL进行通信,而无需执行类似letsencrypt(顺便说一下,企业网络监视工具的工作方式)。
答案 1 :(得分:1)
在加密中,证书颁发机构或证书颁发机构 (CA)是颁发数字证书的实体。一个数字 证书证明了命名的公钥的所有权 证书的主题。这允许其他人(依赖方) 依赖签名或关于私钥的断言 对应于认证的公钥。 CA充当受信任的第三方 由证书的主体(所有者)和 依赖证书的一方。这些格式 证书由X.509标准指定。
(来自https://en.wikipedia.org/wiki/Certificate_authority)
您不是受信任的CA.基本上,如果您签署自己的证书,那么没有人能够保证服务器真正是它的本质。如果您有一个有效的,可信赖的第三方担保,那么证书将是有效的。"
拥有自签名证书并不一定意味着网站是危险的,只是服务器的身份无法验证,因此对于游客来说风险更大。
答案 2 :(得分:1)
所有浏览器都不信任自创或自签名证书。众所周知,目前所有浏览器对安全性都比较严格。让我们先了解一些事情,浏览器不信任你。期。 它可能看起来很苛刻,但事实上,浏览器的工作是在保护用户的同时上网冲浪,这需要他们对每个人或所有事情持怀疑态度。
然而,浏览器确实信任一小组公认的证书颁发机构。这是因为那些CA遵循某些指导原则,使某些信息成为浏览器的常规合作伙伴。甚至还有一个名为CA / B论坛的论坛,CA和浏览器会面,讨论所有CA必须遵守的基线要求和新规则,以便继续被认可。
受到高度监管。
您不是CA / B论坛的一员。
更好的选择是从受信任的证书颁发机构获取SSL证书。
以下是您需要了解的内容about a Self Signed SSL Certificate