【问题标题】:Set up SSL on a dev server with a dynamic IP在具有动态 IP 的开发服务器上设置 SSL
【发布时间】:2012-07-17 04:45:38
【问题描述】:

我在 StartSSL 上获得了我拥有的域的证书。所以这给了我:

  • 中间 CA 证书
  • StartCom 根 CA 证书
  • 私钥

为了接收这些,我向 StartSSL 发送了这个:

  • 证明我拥有mydomain.com(通过电子邮件验证码)
  • 我使用我已经拥有的私钥制作的 CSR

看来我需要做的是把这个密钥和这个证书链放到我的服务器上,这样服务器上的 OpenSSL 就可以使用它们来让 Web 浏览器放心。

但是哪个私钥是哪个?我拥有生成 CSR 的私钥和从 CA 获得的私钥。

我也不是 100% 清楚的是 什么 在这里得到保证。浏览器查看证书,它告诉浏览器它应该连接到mydomain.com。

所有 StartCom 都知道我已经向他们展示了我拥有 mydomain.com 并且我是唯一拥有此私钥的人。这就是传递的内容,所以现在从南斯拉夫连接的浏览器现在也有这些信息。

所以我的网络服务器使用动态 IP 进行廉价家庭连接。我在我的域注册商处将 DNS 设置为使用CNAME 将mydomain.com 定向到myname.dynDNSProvider.com,并且我的动态DNS 服务将myname.dynDNSProvider.com 重定向到我家路由器上的动态WAN IP。

当 IP 更改时,请求会被定向到其他人或根本没有人。一切正常,因为攻击者无法使用报告mydomain.com 的有效证书设置服务器。而且我还必须信任我的 DNS 服务。一旦我更新了 IP,一切都会再次运行。

这就是它的工作原理吗?从我的域到我的实际 IP 的重定向路径是否与 SSL 身份验证无关?如果我的 DNS 服务提供商愿意,他们是否可以比外来者更有效地执行攻击?

我基本上只是想以便宜的方式建立与我的家庭服务器的安全连接,为了以便宜的方式完成它,我完全可以接受动态 DNS 将导致的任何短暂停机时间。我在这里要解决的特定问题是让浏览器不要说“无效证书!!!”当他们看到我的自签名 SSL 证书来自我的服务器时。 我很难找到好的资源来了解这些东西是如何工作的。

【问题讨论】:

    标签: authentication ssl dns


    【解决方案1】:

    但是哪个私钥是哪个?我有我生成的私钥 来自 CA 的 CSR 和我从 CA 获得的私钥。

    您从 CA 获得了一个 公共 密钥。该公钥是您的 CSR 的一部分,加上来自 CACert 的证明,这基本上意味着“我们对此进行了验证”。我正在简化,但这就是它的要点。您可以使用您拥有的私钥以及从他们那里获得的带有公钥的证书。

    至于 DNS 位,证书上写的是“我可以接受 example.com”。如果 Web 浏览器正在尝试连接到 example.com,并且服务器有一些对 example.com 有效的证书并且由浏览器信任存储中的证书签名(CACert 在 Mozilla 和 Microsoft 存储中),您'重启。除非证书中有 IP 地址,否则连接产生的 IP 地址无关紧要(这不是标准做法;CACert 颁发的证书的 subjectAltNames 仅设置为 DNS 名称)。

    如果我的 DNS 服务提供商愿意,他们是否可以

    由于您的问题落后了,所以有点难以回答。但是您的“DNS 提供商”(我假设您的意思是 dyndns 服务)可以做三件事:将流量发送到他们自己的服务器,将其发送到任何地方,或者在拦截后将其发送给您。让我们分别解决那里的攻击。

    首先,将流量发送到他们自己的服务器。如果他们无法为您的域获得有效证书,并且您要求 SSL 用于所有连接(没有用户发出非 SSL 请求),那么这对他们没有好处。他们的伪造证书将显示为无效,游戏结束。

    其次,将流量发送到任何地方。拒绝服务。在这种情况下不感兴趣。

    第三,尝试中间人攻击。这里的问题是客户端发送的流量只有拥有你的私钥的人才能读取 - 他们没有。因此,除非他们能够为您的域获得有效的证书,并出示该证书而不是您拥有的证书,否则他们可能处于中间但仍然无法读取流量 - 所以这种攻击实际上归结为第一个攻击。你很安全。

    【讨论】:

    • 感谢您提供了一个相当全面的答案,即使我没能记住完成我的句子。 +1
    • 另外,我猜对于 MITM 攻击,我的域注册商可以获得该域的证书。我相信他们不会足够关心我来做这件事。这也需要他们访问我的机器,是吗?
    • 等等,不。第三种情况是他们运行自己的服务器,伪装成我的服务器,然后我可以被骗输入密码。
    • @StevenLu 域名注册商可以获得您域名的证书,是的。当然,如果他们这样做了,他们就不会长期担任注册商......
    猜你喜欢
    • 2016-01-18
    • 1970-01-01
    • 2016-09-23
    • 2016-08-13
    • 1970-01-01
    • 2016-11-22
    • 1970-01-01
    • 2020-09-16
    • 1970-01-01
    相关资源
    最近更新 更多