6-Day and IP Address Certificates Are Generally Available

(letsencrypt.org)

164 points | by jaas 2 hours ago

15 comments

  • ivanr 2 hours ago
    As already noted on this thread, you can't use certbot today to get an IP address certificate. You can use lego [1], but figuring out the exact command line took me some effort yesterday. Here's what worked for me:

        lego --domains 206.189.27.68 --accept-tos --http --disable-cn run --profile shortlived
    
    [1] https://go-acme.github.io/lego/
    • Svoka 1 hour ago
      I wonder if the support made it to Caddy yet

      (seems to be WIP https://github.com/caddyserver/caddy/issues/7399)

      • mholt 1 hour ago
        It works, but as another comment mentioned there may be quirks with IP certs, specifically IPv6, that I hope will be fixed by v2.11.
      • jsheard 1 hour ago
        IPv4 certs are already working fine for me in Caddy, but I think there's some kinks to work out with IPv6.
  • notepad0x90 1 minute ago
    It's a huge ask, but i'm hoping they'll implement code-signing certs some day, even if they charge for it. It would be nice if appstores then accepted those certs instead of directly requiring developer verification.
  • cryptonector 19 minutes ago
    I wonder if transport mode IPsec can be relevant again if we're going to have IP address certificates. Ditto RFC 5660 (which -full disclosure- I authored).
  • charcircuit 47 minutes ago
    Next, I hope they focus on issuing certificates for .onion addresses. On the modern web many features and protocols are locked behind HTTPS. The owner of a .onion has a key pair for it, so proving ownership is more trustworthy than even DNS.
    • londons_explore 9 minutes ago
      But isn't it unnecessary to use https, since tor itself encrypts and verifies the identity of the endpoint?
      • rnhmjoj 6 minutes ago
        Yes, but browsers moan if you connect to a website without https, no matter if it's on localhost or an onion service.
  • qwertox 1 hour ago
    I have now implemented a 2 week renewal interval to test the change to the 45 days, and now they come with a 6-day certificate?

    This is no criticism, I like what they do, but how am I supposed to do renewals? If something goes wrong, like the pipeline triggering certbot goes wrong, I won't have time to fix this. So I'd be at a two day renewal with a 4 day "debugging" window.

    I'm certain there are some who need this, but it's not me. Also the rationale is a bit odd:

    > IP address certificates must be short-lived certificates, a decision we made because IP addresses are more transient than domain names, so validating more frequently is important.

    Are IP addresses more transient than a domain within a 45 day window? The static IPs you get when you rent a vps, they're not transient.

    • bigstrat2003 1 hour ago
      The push for shorter and shorter cert lifetimes is a really poor idea, and indicates that the people working on these initiatives have no idea how things are done in the wider world.
      • jdsully 1 minute ago
        [delayed]
      • alibarber 35 minutes ago
        Well they offer a money-back guarantee. And other providers of SSL certificates exist.
        • jsheard 26 minutes ago
          For better or worse the push down to 47-day certificates is an industry-wide thing, in a few years nobody will be issuing certificates for longer than that.

          Nobody is being forced to use 6-day certs though, when the time comes LE will default to 47 days just like everyone else.

      • Sohcahtoa82 44 minutes ago
        It's really security theater, too.

        Though if I may put on my tinfoil hat for a moment, I wonder if current algorithms for certificate signing have been broken by some government agency or hacker group and now they're able to generate valid certificates.

        But I guess if that were true, then shorter cert lives wouldn't save you.

        • NoahZuniga 6 minutes ago
          > broken by some government agency or hacker group

          Probably not. For browsers to accept this certificate it has to be logged in a certificate transparency log for anyone to see, and no such certificates have been seen to be logged.

        • wang_li 9 minutes ago
          My browser on my work laptop has 219 root certificates trusted. Some of those may be installed from my employer, but I suspect most of them come from MS as it's Edge on Windows 11. I see in that list things like "Swedish Government Root Authority" "Thailand National Root Certification Authority" "Staat der Nederlanden Root CA" and things like "MULTICERT Root Certification Authority" "ACCVRAUZ1". I don't think there is any reason to believe any certificate. If a government wants a cert for a given DNS they will get it, either because they directly control a trusted root CA, or because they will present a warrant to a company that wants to do business in their jurisdiction and said company will issue the cert.

          TLS certs should be treated much more akin to SSH host keys in the known hosts file. Browsers should record the cert the first time they see it and then warn me if it changes before it's expiration date, or some time near the expiration date.

          • londons_explore 5 minutes ago
            Certificate transparency effectively means that any government actually uses a false certificate on the wider web and their root cert will get revoked.

            Obviously you might still be victim #1 of such a scheme... But in general the CA's now aren't really trusted anymore - the real root of trust is the CT logs.

    • mholt 11 minutes ago
      It's less about IP address transience, and more about IP address control. Rarely does the operator of a website or service control the IP address. It's to limit the CA's risk.
    • kevincox 41 minutes ago
      The short-lived requirement seems pretty reasonable for IP certs as IP addresses are often rented and may bounce between users quickly. For example if you buy a VM on a cloud provider, as soon as you release that VM or IP it may be given to another customer. Now you have a valid certificate for that IP.

      6 days actually seems like a long time for this situation!

    • Sohcahtoa82 39 minutes ago
      > Are IP addresses more transient than a domain within a 45 day window?

      If I don't assign an EIP to my EC2 instance and shut it down, I'm nearly guaranteed to get a different IP when I start it again, even if I start it within seconds of shutdown completing.

      It'd be quite a challenge to use this behavior maliciously, though. You'd have to get assigned an IP that someone else was using recently, and the person using that IP would need to have also been using TLS with either an IP address certificate or with certificate verification disabled.

      • qwertox 1 minute ago
        Ok, though if you're in that situation, is an IP cert the correct solution?
    • alibarber 46 minutes ago
      If you are doing this in a commercial context and the 4 day debugging window, or any downtime, would cause you more costs than say, buying a 1 year certificate from a commercial supplier, then that might be your answer there...
    • charcircuit 45 minutes ago
      >I won't have time to fix this

      Which should push you to automate the process.

      • buckle8017 42 minutes ago
        He's expressly talking about broken automation.
        • charcircuit 39 minutes ago
          You can have automation to fix the broken automation.
  • gruez 2 hours ago
    For people who want IP certificates, keep in mind that certbot doesn't support it yet, with a PR still open to implement it: https://github.com/certbot/certbot/pull/10495

    I think acme.sh supports it though.

    • mcpherrinm 1 hour ago
      Some ACME clients that I think currently support IP addresses are acme.sh, lego, traefik, acmez, caddy, and cert-manager. Certbot support should hopefully land pretty soon.
      • sgtcodfish 1 hour ago
        cert-manager maintainter chiming in to say that yes, cert-manager should support IP address certs - if anyone finds any bugs, we'd love to hear from you!

        We also support ACME profiles (required for short lived certs) as of v1.18 which is our oldest currently supported[1] version.

        We've got some basic docs[2] available. Profiles are set on a per-issuer basis, so it's easy to have two separate ACME issuers, one issuing longer lived certs and one issuing shorter, allowing for a gradual migration to shorter certs.

        [1]: https://cert-manager.io/docs/releases/ [2]: https://cert-manager.io/docs/configuration/acme/#acme-certif...

  • xg15 43 minutes ago
    IP addresses must be accessible from the internet, so still no way to support TLS for LAN devices without manual setup or angering security researchers.
    • cpach 7 minutes ago
      One can also use a private CA for that scenario.
    • progbits 37 minutes ago
      I mean if it's not routable how do you want to prove ownership in a way nobody else can? Just make a domain name.
      • alibarber 26 minutes ago
        Also I don't see the point of what TLS is supposed to solve here? If you and I (and everyone else) can legitimately get a certificate for 10.0.0.1, then what are you proving exactly over using a self-signed cert?

        There would be no way of determining that I can connecting to my-organisation's 10.0.0.1 and not bad-org's 10.0.0.1.

  • bflesch 1 hour ago
    This sounds like a very good thing, like a lot of stuff coming from letsencrypt.

    But what risks are attached with such a short refresh?

    Is there someone at the top of the certificate chain who can refuse to give out further certificates within the blink of an eye?

    If yes, would this mean that within 6 days all affected certificates would expire, like a very big Denial of Service attack?

    And after 6 days everybody goes back to using HTTP?

    Maybe someone with more knowledge about certificate chains can explain it to me.

    • iso1631 1 hour ago
      With a 6 day lifetime you'd typically renew after 3 days. If Lets Encrypt is down or refuses to issue then you'd have to choose a different provider. Your browser trusts many different "top of the chain" providers.

      With a 30 day cert with renewal 10-15 days in advance that gives you breathing room

      Personally I think 3 days is far too short unless you have your automation pulling from two different suppliers.

      • bflesch 44 minutes ago
        Thank you, I missed the part with several "top of the chain" providers. So all of them would need to go down at the same time for things to really stop working.

        How many "top of chain" providers is letsencrypt using? Are they a single point of failure in that regard?

        I'd imagine that other "top of chain" providers want money for their certificates and that they might have a manual process which is slower than letsencrypt?

        • mholt 1 minute ago
          LE has 2 primary production data centers: https://letsencrypt.status.io/

          But in general, one of the points of ACME is to eliminate dependence on a single provider, and prevent vendor lock-in. ACME clients should ideally support multiple ACME CAs.

          For example, Caddy defaults to both LE and ZeroSSL. Users can additionally configure other CAs like Google Trust Services.

          This document discusses several failure modes to consider: https://github.com/https-dev/docs/blob/master/acme-ops.md#if...

        • cpach 5 minutes ago
          “Are they a single point of failure in that regard?”

          It depends. If the ACME client is configured to only use Let’s Encrypt, then the answer is yes. But the client could fall-back to Google’s CA, ZeroSSL, etc. And then there is no single point of failure.

          • bflesch 3 minutes ago
            Makes sense. I assume each of them is in control and at the whims of US president?
            • mholt 0 minutes ago
              They are not in control of the US president.
  • iamrobertismo 2 hours ago
    This is interesting, I am guessing the use case for ip address certs is so your ephemeral services can do TLS communication, but now you don't need to depend on provisioning a record on the name server as well for something that you might be start hundreds or thousands of, that will only last for like an hour or day.
    • jeroenhd 1 hour ago
      One thing this can be useful for is encrypted client hello (ECH), the way TLS/HTTPS can be used without disclosing the server name to any listening devices (standard SNI names are transmitted in plaintext).

      To use it, you need a valid certificate for the connection to the server which has a hostname that does get broadcast in readable form. For companies like Cloudflare, Azure, and Google, this isn't really an issue, because they can just use the name of their proxies.

      For smaller sites, often not hosting more than one or two domains, there is hardly a non-distinct hostname available.

      With IP certificates, the outer TLS connection can just use the IP address in its readable SNI field and encrypt the actual hostname for the real connection. You no longer need to be a third party proxying other people's content for ECH to have a useful effect.

      • agwa 43 minutes ago
        That doesn't work, as neither SNI nor the server_name field of the ECHConfig are allowed to contain IP addresses: https://www.ietf.org/archive/id/draft-ietf-tls-esni-25.html#...

        Even if it did work, the privacy value of hiding the SNI is pretty minimal for an IP address that hosts only a couple domains, as there are plenty of databases that let you look up an IP address to determine what domain names point there - e.g. https://bgp.tools/prefix/18.220.0.0/14#dns

      • buzer 41 minutes ago
        As far as I understand you cannot use IP address as the outer certificate as per https://www.ietf.org/archive/id/draft-ietf-tls-esni-25.txt

        > In verifying the client-facing server certificate, the client MUST interpret the public name as a DNS-based reference identity [RFC6125]. Clients that incorporate DNS names and IP addresses into the same syntax (e.g. Section 7.4 of [RFC3986] and [WHATWG-IPV4]) MUST reject names that would be interpreted as IPv4 addresses.

      • jsheard 41 minutes ago
        I don't really see the value in ECH for self-hosted sites regardless. It works for Cloudflare and similar because they have millions of unrelated domains behind their IP addresses, so connecting to their IPs reveals essentially nothing, but if your IP is only used for a handful of things then it's pretty obvious what's going on even if the SNI is obscured.
    • medmunds 58 minutes ago
      The July announcement for IP address certs listed a handful of potential use cases: https://letsencrypt.org/2025/07/01/issuing-our-first-ip-addr...
    • axus 2 hours ago
      No dependency on a registrar sounds nice. More anonymous.
      • traceroute66 1 hour ago
        > No dependency on a registrar sounds nice.

        Actually the main benefit is no dependency on DNS (booth direct and root).

        IP is a simple primitive, i.e. "is it routable or not ?".

        • saltcured 33 minutes ago
          The popular HTTP validation method has the same drawback whether using DNS or IP certificates? Namely, if you can compromise routes to hijack traffic, you can also hijack the validation requests. Right?
      • organsnyder 2 hours ago
        IP addresses also are assigned by registrars (ARIN in the US and Canada, for instance).
        • traceroute66 1 hour ago
          > IP addresses also are assigned by registrars (ARIN in the US and Canada, for instance).

          To be pedantic for a moment, ARIN etc. are registries.

          The registrar is your ISP, cloud provider etc.

          You can get a PI (Provider Independent) allocation for yourself, usually with the assistance of a sponsoring registrar. Which is a nice compromise way of cutting out the middleman without becoming a registrar yourself.

          • immibis 1 hour ago
            You can also become a registrar yourself - at least, RIPE allows it. However, fees are significantly higher and it's not clear why you'd want to, unless you were actually providing ISP services to customers (in which case it's mandatory - you're not allowed to use a PI allocation for that)
            • traceroute66 1 hour ago
              > and it's not clear why you'd want to

              The biggest modern-era reason is direct access to update your RPKI entries.

              But this only matters if you are doing stuff that makes direct access worthwhile.

              If your setup is mostly "set and forget" then you should just accept the lag associated with needing to open a ticket with your sponsor to update the RPKI.

        • buckle8017 1 hour ago
          Arguably neither is particularly secure, but you must have an IP so only needing to trust one of them seems better.
    • traceroute66 1 hour ago
      > I am guessing the use case for ip address certs is so your ephemeral services can do TLS communication

      There's also this little thing called DNS over TLS and DNS over HTTPS that you might have heard of ? ;)

    • iamrobertismo 2 hours ago
      Yeah actually seems pretty useful to not rely on the name server for something that isn't human facing.
    • pdntspa 1 hour ago
      Maybe you want TLS but getting a proper subdomain for your project requires talking to a bunch of people who move slowly?
      • iamrobertismo 1 hour ago
        Very very true, never thought about orgs like that. However, I don't think someone should use this like a bandaid like that. If the idea is that you want to have a domain associated with a service, then organizationally you probably need to have systems in place to make that easier.
        • pdntspa 1 hour ago
          Ideally, sure. But in some places you're what you're proposing is like trying to boil the oceans to make a cup of tea

          VBA et al succeeded because they enabled workers to move forward on things they would otherwise be blocked on organizationally

          Also - not seeing this kind of thing could be considered a gap in your vision. When outsiders accuse SV of living in a high-tech ivory tower, blind to the realities of more common folk, this is the kind of thing they refer to.

  • razakel 27 minutes ago
    Has anyone actually given a good explanation as to why TLS Client Auth is being removed?
    • cryptonector 22 minutes ago
      One reason is that the client certificate with id-kp-clientAuth EKU and a dNSName SAN doesn't actually authenticate the client's FQDN. To do that you'd have to do something of a return routability check at the app layer where the server connects to the client by resolving its FQDN to check that it's the same client as on the other connection. I'm not sure how seriously to take that complaint, but it's something.
  • cryptonector 25 minutes ago
    How are IP address certificates useful?
    • SahAssar 12 minutes ago
      * DoT/DoH

      * An outer SNI name when doing ECH perhaps

      * Being able to host secure http/mail/etc without being beholden to a domain registrar

  • cedws 40 minutes ago
    I guess IP certs won't really be used for anything important, but isn't there a bigger risk due to BGP hijacking?
  • meling 1 hour ago
    If I can use my DHCP assigned IP, will this allow me to drop having to use self-signed certificates for localhost development?
    • Sohcahtoa82 34 minutes ago
      What's stopping you from creating a "localhost.mydomain.com" DNS record that initially resolves to a public IP so you can get a certificate, then copying the certificate locally, then changing the DNS to 127.0.0.1?

      Other than basically being a pain in the ass.

    • michaelt 1 hour ago
      No, they will only give out certificates if you can prove ownership of the IP, which means it being publicly routable.
      • wongarsu 1 hour ago
        Finally a reason to adopt IPv6 for your local development
      • inetknght 1 hour ago
        A lot of publicly routable IP addresses are assigned by DHCP...
    • wolttam 1 hour ago
      Browsers consider ‘localhost’ a secure context without needing https

      For local /network/ development, maybe, but you’d probably be doing awkward hairpin natting at your router.

      • treve 1 hour ago
        it's nice to be able to use https locally if you're doing things with HTTP/2 specifically.
  • zamadatix 1 hour ago
    Does anyone know when Caddy plans on supporting this?
  • hojofpodge 1 hour ago
    Something about a 6 day long IP address based token brings me back to the question of why we are wasting so much time on utterly wrong TOFU authorization?

    If you are supposed to have an establishable identity I think there is DNSSEC back to the registrar for a name and (I'm not quite sure what?) back to the AS.for the IP.

    • ycombinatrix 1 hour ago
      Domains map one-to-one with registrars, but multiple AS can be using the same IP address.
      • hojofpodge 1 hour ago
        Then it would be a grave error to issue an IP cert without active insight into BGP. (Or it doesn't matter which chain you have.. But calling a website from a sampling of locations can't be a more correct answer.)