Let’s Encrypt:我们签发了首张 IP 地址证书

自 Let’s Encrypt 于 2015 年开始签发证书以来,人们一再要求能够为 IP 地址获取证书,而只有少数证书颁发机构提供了这一选项。直到现在,他们还不得不去其他地方寻找,因为我们还没有提供这项功能。

今天,我们已经签发了第一份 IP 地址证书,正如我们在一月份宣布的那样。与我们工程路线图上的其他新证书功能一样,我们现在将开始逐步向越来越多的用户推出这一选项。

关于 IP 地址证书的一些背景知识

IP 地址是互联网上使用的基本数字地址。互联网上的每台设备都有一个(不过,在现代实践中,可能会与其他设备共享,比如整个家庭网络共享一个公共 IP 地址)。互联网基础设施使用它们将通信路由到正确的目的地。IP 地址有两种形式,即 IPv4 和 IPv6,通常看起来像 54.215.62.21(IPv4)或 2600:1f1c:446:4900::65(IPv6)。

元素周期表大多数互联网用户很少直接看到或引用 IP 地址。相反,他们几乎总是使用 letsencrypt.org 这样的域名来指代互联网服务。域名系统(DNS)](https://en.wikipedia.org/wiki/DomainNameSystem) 是互联网基础设施的一部分,负责允许软件查找与特定域名相关的 IP 地址。例如,您的网络浏览器可以通过 DNS 查找到 https://letsencrypt.org/(Let’s Encrypt 自己的网站)的 IP 地址是 54.215.62.21 和 2600:1f1c:446:4900::65,以及其他几个地址。在您开始阅读这篇文章之前,这可能已经在幕后发生了!您的网络浏览器需要知道我们的 IP 地址,才能真正连接到我们的网站并获取这篇文章。

因为我们绝大多数人都倾向于用域名来思考和谈论互联网服务,所以这些标识符通常会列在证书中,比如 Let’s Encrypt 为用户提供的证书。既然你知道我们是 “letsencrypt.org”,而不是 “54.215.62.21”,那么我们的域名出现在证书上是最合理的。毕竟,这才是你想让网络浏览器检查的内容。这也使互联网服务具有更大的灵活性,可以在多个地点托管,或改变托管地点,而不一定需要为每个服务器分别颁发证书。

原则上,没有理由不为 IP 地址而不是域名颁发证书,事实上,证书的技术和政策标准一直允许这样做,少数证书颁发机构也在小范围内提供这种服务。就 Let’s Encrypt 而言,我们倾向于等到其他一些要素(如短期证书)到位后,再向用户提供这一选项。

为什么 IP 地址证书不太常见?

首先,这是因为互联网用户通常通过域名而不是 IP 地址来了解服务,而且 IP 地址很容易在 “幕后 ”发生变化,事先不会通知。例如,一个受欢迎的网站可以从一家云托管公司转到另一家,并更新其 DNS 记录以指向新的主机。大多数用户根本不会注意到这种变化,即使网站的底层 IP 地址完全不同。

其次,由于 IP 地址很容易改变,人们对 IP 地址的 “拥有感”–或证书颁发机构可以证明的 ‘拥有感’–往往比对域名的 “拥有感 ”弱。如果你使用住宅宽带连接在家中托管,你的互联网服务提供商很可能无法保证你的 IP 地址长期保持不变。(也就是说,大多数家庭互联网用户使用的是互联网服务提供商提供的 “动态 IP 地址”,而不是 “静态 IP 地址”)。在这种情况下,你必须面对的是,该地址可能会经常变化,可能没有任何警告,而且你的旧地址可能会被分配给其他人。

第三,大多数互联网服务运营商并不指望最终用户会有意通过 IP 地址直接连接到他们的网站。在某些情况下,当 IP 地址被不同网站或不同设备共享时,仅通过 IP 地址连接甚至都无法正常工作。在这种情况下,为 IP 地址获取证书并没有什么好处!

Let’s Encrypt 用户如何使用 IP 地址证书

大多数现有用户使用现有域名证书即可,不需要 IP 地址证书。需要使用 IP 地址证书的用户通常已经意识到这一点。我们了解到的一些用例包括

  • 托管服务提供商的默认页面,以防有人在浏览器中粘贴服务器的 IP 地址而不是单个网站名称(目前,这通常会在浏览器中产生错误)。
  • 在没有域名的情况下访问网站的一种方式(与获取域名相比,在可靠性和便利性方面要付出一定代价)。
  • 确保 DNS over HTTPS (DoH) 或其他基础设施服务的安全。有了证书,DoH 服务器就更容易向客户证明自己的身份。这样,DoH 用户或客户端在连接 DoH 服务器时,就可以强制要求提供有效的、公众信任的证书。
  • 即使没有域名,也能确保对某些家用设备(如网络附加存储服务器和物联网设备)的远程访问安全。
  • 保护云托管基础设施内的短暂连接,如一个后端云服务器与另一个后端云服务器之间的连接,或通过 HTTPS 管理新的或短期后端服务器的短暂连接–只要这些服务器至少有一个可用的公共 IP 地址。

如何获取 IP 地址证书

IP 地址证书目前在 Staging 中提供。它们将于 2025 年晚些时候在 Prod 中全面提供,与此同时,短期证书也将全面提供。在普遍可用之前,我们可能会允许向我们提供反馈意见的少数合作伙伴签发列表。

许多 Let’s Encrypt 客户端应用程序应该已经能够为 IP 地址申请证书,不过某些客户端软件可能需要稍作技术修改才能支持。

作为一项政策,涵盖 IP 地址的 Let’s Encrypt 证书必须是短期证书,有效期只有六天左右。因此,你的 ACME 客户端必须支持ACME 配置文件规范草案,而且必须将其配置为请求shortlived 配置文件。而且,也许并不奇怪,你不能使用 DNS challenge method 来证明你对 IP 地址的控制;只能使用 http-01 和 tls-alpn-01 方法。

如果你的客户端软件请求的 IP 地址证书细节与这些策略不符,ACME 服务器将拒绝该命令。在这种情况下,你的客户端应用程序可能需要更新或重新配置。无论是客户端应用程序开发人员还是最终用户,如果遇到任何问题,请随时在Let’s Encrypt 社区论坛上寻求帮助。

本文文字及图片出自 We've Issued Our First IP Address Certificate

共有 117 条讨论

  1. 127.0.0.1 多少钱?

        1. 这相当于“So anyway, I started blasting…” (所以,无论如何,我开始爆破了……)。

      1. 当他们进行追踪时,发现信号是从屋内发出的!

      2. 我的智能行李箱上也有这个地址!

    1. 192.168.1.1 please gonna get me some free proxy

  2. 要在自托管场景中发挥作用,你必须从 ISP 获得一个静态 IP,对吗?无论如何都很酷

    1. 我想你可以在没有静态地址的情况下使用它。我没有静态 IP,但除非我重启路由器,否则我从 ISP 得到的 IP 总是一样的。

      我想他们会保留一个小时左右,所以我必须完全断网一个小时才能获得新 IP。

      此外,我的 ISP 支持 IPv6,虽然我没有检查 LE 是否支持 IPv6 证书,但我想我从未见过这种变化。

      1. 除非我重启路由器,否则我将始终从 ISP 获得相同的 IP。

        实际上,无论 DHCP 租约窗口是多少,你都必须同时关闭调制解调器和路由器。重启路由器从未改变过我的 IP,至少在我使用有线电视的这段时间里是这样。也许 DSL 的情况有所不同。

        1. 关闭调制解调器和路由器

          不幸的是,只有一个设备的人很多。

      2. 不过,你也可以这样做,然后在 fb 页面或类似的地方发布更新,以防在维护或其他情况下丢失了 IP。

      3. 我没有静态 IP,但自从 5 年前搬进我家后,我的 IP 就没有变过,这意味着我不知道使用 ddclient 的 DDNS 是否有效。我也许应该检查一下,lol。

    2. 那可能要通过 IP6 托管了。

        1. 大多数 ISP 都不是,因为他们想卖掉商业合同。

          1. 从技术上讲不是,但自从 6 年多前我第一次启用 IPv6 后,Spectrum 就一直对我进行同样的 IPv6 屏蔽。

        2. 这是一个混合包。大多数 IPv6 分配都是随机进行的,ISP 会把地址的前半部分交给你(可能会随着时间的推移而改变),然后你的设备会自行决定后半部分使用什么地址。还有其他配置方案,但这是最常见的方案

    3. 对于你没有公开的本地服务(路由器的网络配置器、网络控制器、管理程序等)来说,这可能很有用。如果配置得当,每次 IP 变更时都能生成新证书,我想它也能在动态 IP 下工作,但我觉得用处不大。

      编辑:我还真没考虑过 ACME 对本地服务的挑战…… 那就不太确定了

      1. 你打算如何完成 ACME 挑战赛,来挑战你没有公开的服务……或者任何非路由 IP?

        1. 哦,说得好,把证书与 192.68.2.50 这样的内部 IP 地址关联起来有什么意义呢?

          1. 虽然任何人都可以拥有这个 IP 地址,但没有人会拥有与 192.168.2.50 相关的证书。但也许我遗漏了什么。

            1. 我可以从 lets encrypt 获取一个完全可信的新证书。然后用它在你的服务器与 192.168.2.50 之间进行人机交互。

              非路由 IP 将无法使用此功能。

            2. 也许我还漏掉了什么,但我可以肯定的是,在同一个网络中,两台主机不能拥有相同的 IP 地址。如果我从 2.50 请求信息,2.50 将是唯一响应的服务器,对吗?

            3. 可以,但会造成 IP 冲突和问题,但攻击者只需要它工作足够长的时间,就能获取用户凭据或他们试图窃取的任何信息。

              他们还可以进行 arp 中毒

            4. 所以我听到的说法是,虽然存在风险,但风险很小……而且只是在极小的时间窗口内。

            5. 不是这样的。你可以

              • ARP 中毒(最简单的攻击)

              • IP 欺骗

              此外,主要问题还在于,例如有 10 个人想把 192.168.1.1 用于他们的路由器 https。而您必须提供某种所有权确认才能获得公共证书,那么上述 10 个人中谁才是该 IP 的真正所有者呢?

        2. 你可以将 80 端口开放给开放互联网,但屏蔽其他所有端口,从而完成 acme 挑战。通常情况下,80 端口上根本不会运行任何东西。

          无论你实际托管的是什么服务,比如 443 上的 https,都可以使用该证书。

          在内部使用 ipv6 GUA 时,我觉得这很有用:全球有效,局域网内的每台设备都有一个唯一的证书,但防火墙规则会刻意防止它们暴露在局域网外。

        3. 你说得对,我还真没想到这一点 XD。我使用 DNS-01 挑战,但这对本地服务也不起作用。

      2. 我不明白怎么会这样。他们根本无法验证连接是否真正连接到本地 IP 地址的 “你 ”的实例。

        允许任何主机在它所连接的任何网络上伪装成任何其他主机,这正是证书颁发机构要防止的安全噩梦。

        1. 是啊,我还真没想明白。不知道这样做的效果如何,也不知道这样做有多大用处。

      3. 你必须使用自己的 CA 而不是普通的 CA 来签名。

    4. 我有 ATT 家庭互联网,我的 IP 在过去 3 年里都是静态的。他们通常懒得更换 IP。

    5. 好吧,因为这个原因,它是故意短暂过期的。

    6. 它们的有效期只有 7 天,所以我认为静态 IP 并不重要

    7. 我的 ISP 每 180 天才更新一次 PPPoE 会话,所以我的 “静态 ”IP 有效期大约为半年。

    8. 对,或者 IPv6。或者,如果你的 IP 不经常变化,也可以使用。如果它们更新/过期很快,除了使用这些证书外,另一种 DDNS 设置可能会开始出现

  3. 我们什么时候能为家庭用户提供自己的静态 IPV6?

    1. 我从 ISP 免费获得了静态 IPv4 和 IPv6。

      这取决于您的 ISP。

      1. 你可能是个例外,尤其是在使用 ipv4 静态 IP 时。

        1. 我知道其他一些瑞典 ISP 以 1-5 欧元/月的价格提供 ipv4 服务,但也有一些 ISP 拒绝提供,这完全取决于你是否有 “合适 ”的 ISP。

          1. Vilken isp?如果您的互联网接入商为私人用户提供了稳定的 IP 地址,那么您将获得更多的收入。

        2. 我的也是,我很幸运。我甚至还搬过家,但它一直保持不变。

    2. 在这一点上,我宁愿选择 IPv6。

      我敢肯定,我所在国家的互联网服务供应商还没有一家推出 IPv6,尽管他们声称 “很快 ”就会推出 IPv6,而且一推就是十几二十年……

    3. 在我看来,这是 IPV6 所期待的杀手级功能。一旦个人(或物理地址或其他)可以购买 IPV6 地址,这就是转向 IPV6 的重要原因。

    4. 软件中的 IPV6 支持需要先得到改善

      1. 哪些软件在 2025 年无法处理 ipv6?

    5. 我的 ISP 只提供静态 ipv4,如果你购买了专用企业套餐的话…

      但我找到了一个每年只需 2 美元的域名,所以 cloudflare 隧道是我的朋友

  4. 这对自助托管来说超级好,不错

    1. 你确定吗?

      你不可能为一个 letsencrypt 无法访问的 IP 地址获取证书(Letsencrypt 用于 IP 地址证书的两种挑战方法–http-01 和 tls-alpn-01 中的任何一种都必须这样做)。

      除非你有一个固定的(或至少是长期存在的)公共 IP 地址,否则这有什么用呢?

      你不能用非公开 IP 地址为内部主机制作 letsencrypt 证书。

  5. 谁能解释一下为 IP(而不是域名)颁发证书的意义?这不是在为你的服务器做广告吗?

    1. 仅举一例:对于安全 DNS 服务器(在 DNS 查询之前必须先进行证书验证)

      1.1.1.1 和 8.8.8.8 以及其他公司多年来一直在使用 IP 证书,但目前几乎不可能免费获得 IP 证书(你可以从 ZeroSSL 获得,但有太多限制和注意事项,基本上没有价值)

      这些证书没有理由要花钱,所以当 LetsEncrypt 最终上线这项功能时,这将是对腐败的营利性证书行业的一次了不起的胜利。

  6. 请不要使用 80 端口,我需要那个端口

  7. 很酷,但我看不到在现实世界中你会真的想这么做。

    1. 安全 DNS 服务器,在 DNS 查找之前需要验证证书

  8. 谁能给我解释一下?据我所知,域名 SSL 证书的作用是让服务器向客户证明,它是由控制域名的人操作的。因此,如果将这一逻辑延伸到 IP 地址,服务器就能证明它是由某个拥有可通过该 IP 地址访问的服务器的人运营的…… 但这不已经是既定事实了吗?很显然,我漏掉了什么,所以希望今天能学到点什么。

    1. 你必须向 Let’s Encrypt 证明该 IP 由你控制。如果有人要冒充你,他们也必须能够证明他们控制着该 IP。显然,你们都无法证明这一点。

      例如,互联网服务提供商或政府可以从其网络上的用户视图中欺骗任何 IP,但却无法向 Let’s Encrypt 欺骗该 IP。

  9. 即使没有域名,也能确保对某些家庭设备(如网络附加存储服务器和物联网设备)的远程访问安全。

    我对文章中的这个具体例子感到困惑。如何实现?你需要一个全局可路由 IP,这就意味着要么为家庭分配一整块 IPV4(这永远不会发生),要么使用没有内部地址的全局可路由 IPv6(这也许会发生),但要真正建立连接也会非常麻烦,我不明白你为什么要这么做。

  10. 使用 adguard 主页 DNS 上的自定义阻止页面而不会出现 SSL 不匹配错误,这真是太棒了。我认为。

    1. 由于以下几个原因,这根本无济于事。

      1. 你无法获得私人 IP 的证书,因为你无法证明所有权。
      2. 2. 即使你可以,你仍然会收到 SSL 错误,因为你仍然没有浏览器希望你拥有的域名证书。你浏览的不是 https://192.168.1.1,而是 https://reddit.com,并解析到 192.168.1.1。
      1. 你说得对。我想过了,这行不通。

  11. 浏览器会接受吗?我认为浏览器不喜欢 IP 地址认证。

    1. https://1.1.1.1/https://8.8.8.8/ 都被浏览器接受,它们都是重定向,但如果浏览器不信任证书,就不会遵循重定向。

      https://9.9.9.9/ 也是如此(首页是 404)

      还有一些 IPv6 网站,我记不清了。

      这种类型的证书并不新鲜,只是不再仅限于大科技公司和那些愿意花高得离谱的价格购买本应免费的证书的人使用了。

      1. 是的,1.1.1.1 出示的是有效证书:

        certigo connect 1.1.1.1:443 –verify

        ** TLS 连接 **
        版本: TLS 1.3
        密码套件: AES128GCM_SHA256 密码

        ** CERTIFICATE 1 **
        有效期: 2025-01-02 00:00 UTC 至 2026-01-21 23:59 UTC
        Subject:
        C=US, ST=California, L=San Francisco, O=Cloudflare, Inc.,
        CN=cloudflare-dns.com
        Issuer:
        C=US, O=DigiCert Inc, CN=DigiCert Global G2 TLS RSA SHA256 2020 CA1
        DNS 名称:
        cloudflare-dns.com、*.cloudflare-dns.com、one.one.one.one
        IP 地址:
        1.0.0.1, 1.1.1.1, 162.159.36.1, 162.159.46.1, 2606:4700:4700::1001,
        2606:4700:4700::1111, 2606:4700:4700::64, 2606:4700:4700::6400

        ** CERTIFICATE 2 **
        有效期: 2020-09-24 00:00 UTC 至 2030-09-23 23:59 UTC
        Subject:
        C=US, O=DigiCert Inc, CN=DigiCert Global G2 TLS RSA SHA256 2020 CA1
        Issuer:
        C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert Global Root G2

        检查证书的 OCSP 状态(已装订),结果为
        良好(最后更新时间:30 Jun 25 08:20 UTC)

        发现 1 个有效证书链:
        [0] CN=cloudflare-dns.com
        => CN=DigiCert Global G2 TLS RSA SHA256 2020 CA1
        => CN=DigiCert Global Root G2 [self-signed]
        ““

      2. 如果它们是免费或廉价的,无论如何都会被掠夺性企业抢购一空。ipv4 地址是有限制的。

        1. 你无法为你无法控制的 IP 获取证书,这些证书需要 HTTP-01 验证 作为唯一可接受的方法

  12. 不错。现在,如果我能使用无法通过 DNS 挑战的 SAN,你就能满足我的一切需求了。

  13. 这很酷,但 cloudflared zero trust 是免费的,设置起来也不难。无需端口转发,直接通过隧道连接到网络,还可以设置登录页面,甚至使用 Google SSO。我把 docker 电脑上的 nginx 容器换成了零信任,从此再没回头。一旦设置好,它就… 能用。多年来,我再也不用担心 SSL 证书的问题了。

    1. 免费,直到有一天它不免费了,而且还把你的数据和流量托付给了一家公司。

      有选择是好事。

      我也使用 Cloudflare,但重要的是要解决他们的问题。

      1. 这是一个很好的批评。我没有通过它传输任何大文件,我使用的是有线 VPN,所以文件传输对我来说没有什么影响,但付费墙的可能性和对隐私的影响是合理的。如果他们开始收费或改变服务条款,我就会改用其他服务。现在,这只是最方便的解决方案。

    2. 我喜欢我的 cloudflare 隧道,但它也有限制。比如 100MB 的文件限制。

        1. 作为 Tailscale 限制较少的替代品,它是否也能很好地发挥作用?

          1. 它完全可以替代 Tailscale。

            它能做 Tailscale 所做的一切,但它是 100% 开源的,而 Tailscale 的协调服务器是专有的。此外,Tailscale 的官方软件不能自托管,只有名为 Headscale 的社区分叉软件可以。Netbird 是可自行托管的。

            在我看来,这是一个不二之选。

            https://youtu.be/Z5Y3a7pvpn8?si=fnIj1a-KqFSLtvA5

            1. 非常好。我唯一的其他问题是,我能否自行托管冗余的协调服务器。

    3. Cloudflared 和 SSL 证书有什么关系?感觉就像是 Cloudflare 在这个子论坛上做广告。

      1. 不是为 cloudflared 打折扣,它只是在您设置子域时自动提供 SSL,因为它们是通过 cloudflared 零信任代理的。自从我开始使用 letsencrypt 后,就再也不用它了。

        喜欢一个产品并不是在兜售,我在nginx上使用letsencrypt多年,我只是觉得零信任对于我的使用案例来说更简单、更安全。

  14. 我觉得这是把责任推给 DNS 的诡计。

    1. 现在你不能责怪 DNS 了……因为你只能使用 IP 🤣

  15. 似乎有点毫无意义?你是说记住一个 IP 比记住一个域名更容易?更不用说自签名证书/通配符在家庭实验室中已经存在很久了。

    我只看到 “我买不起 10 美元的域名 ”的人在称赞它。

    1. 我只看到你在抱怨你用不上的东西。太可悲了。

    2. 获得一个 IP 地址比获得一个域名更容易,也更便宜。再说,谁说域名是必需品?

      如果别人没有像你这样做,就不要贬低别人,尤其是如果你的建议是虚伪的。

      1. 更容易、更便宜?域名一年 10 美元。我的 ISP 提供的静态 IP 每月 15 美元。

        如果你要在没有静态 IP 的情况下公开任何东西,你就需要一个域名。

        当你什么都不知道的时候,也许就不要发表评论了。

        1. 那是假设你的 dhcp 租约过期了,或者你不知道如何欺骗 mac 地址。)

          听着,孩子;有可能实现的东西并不意味着就是最佳的。如果你学会利用有限的资源发挥创造力,你就会知道这两招,还有很多其他可以帮忙的方法。

          1. 我的 ISP 会根据他们的条款更改你的 IP。Comcast 也是这么做的。

            听着,孩子,如果你了解现实世界是如何运作的,你就会知道这并不可靠。

        2. 与此相对应的是,我在注册时花 15 美元直接从 ISP 购买了一个静态 IP。

        3. “Lmao更容易、更便宜”,然后你恰恰给出了一个并不适用于所有情况的传闻证据

    3. 这并不一定与 “哦,现在我不用购买域名了,呼呼 ”有关–这有一些合理的使用案例。

      考虑一下 DoT 或 DoH:客户端设备使用 DNS 服务器的原始 IP – 使用这种证书类型可以更容易地确保这些服务的安全。

      当有人通过 IP 浏览到托管商的网络服务器时,托管商可以提供完全安全且经过验证的网页(有利于市场营销)

      一些管理员(比如我自己偶尔会使用 IP 而不是主机名连接到他们网络的 VPN 服务器(在 DNS 失效的情况下,这使得进入我的网络变得更容易/更简单)

    4. 这对安全 DNS 服务器等非常有用,可避免 “鸡生蛋还是蛋生鸡 ”的问题,即在 DNS 查询之前需要先进行证书验证

      你有没有注意到,1.1.1.1 和 8.8.8.8 拥有有效的证书,因为大型科技公司基本上可以为所欲为(尤其是像谷歌这样拥有自己 CA 的公司),但普通公民却不能在不付钱的情况下获得这样的证书?

      也许你可以研究一下为什么要使用这样的证书,以及使用的时间和地点……或者如果你根本不在乎,那就默默地继续你的生活,因为这对你没有任何伤害。

    5. 我们公司有 6 台服务器和许多本地 IP。我都记在心里了😉。

    6. 你没说错。

      称赞这一点的人很可能就是那些将自己的服务暴露在互联网上,然后在遇到勒索软件时回来哭诉的人。

      1. 我们中的一些人实际上是工作中的专业人士,这在各种情况下都会有所帮助

        1. 没有哪个 IT 专业人士会为一个 IP 地址购买 SSL 证书。他们会采用正确的方式,使用 DNS 和证书。

          1. 谁说要花钱买 SSL 证书了?但把绝对化的事实说成绝对化的事实也是非常愚蠢的,lol

    7. 这是你开始自助托管所需要做的整整一个步骤。更不用说,你还得依靠另一家第三方公司来维持你的自助托管服务的运行。

      即使只有穷人能从中受益,这又有什么不好呢?你是说穷人不配使用自助托管服务吗?

        1. 当你抱着 “无所不知 ”的小心态时,所有你不了解的东西都是无用的。

      1. 就是这群人认为 vps 和预置服务器的安全性是一样的

        /耸耸肩

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

你也许感兴趣的: