Salta al contenuto principale


Dear #Letsencrypt, you helped secure millions and millions of servers, not just web servers. But your announcement at letsencrypt.org/2025/05/14/end… about ending Ending TLS Client Authentication Certificate Support in 2026 because Google changes their requirements would result in your certificates becoming a possible risk for ensuring SMTP traffic. Please think again. Please.

1/5

Questa voce è stata modificata (4 mesi fa)

reshared this

in reply to Jan Wildeboer 😷

Just at the time where all over the world discussions are happening to move mail servers back into organisations big and small instead of relying on the big email providers, due to risks associated with centralising email at (US) providers, you are willing to make life even more complicated for us postmasters. This is not what you should be doing. You should make it easier to use encryption instead of telling us postmasters find out ourselves where we can buy certificates in future.

2/5

Questa voce è stata modificata (5 mesi fa)

reshared this

in reply to Jan Wildeboer 😷

Sure, #LetsEncrypt, you can say that using certificate based client auth is a minor use case and that this functionality was never guaranteed to always be available and all of that. But the fact stays: you are removing a feature from your certificates that has been here for a very long time, just because Google demands this. Why Google wants this? I will ask them. But I am quite sure that this #oopsie side effect is not an oversight.

3/5

Questa voce è stata modificata (5 mesi fa)

Oblomov reshared this.

in reply to Jan Wildeboer 😷

The policy change at Google is documented here: googlechrome.github.io/chromer…

- prior to June 15, 2026, include the extendedKeyUsage extension and (1) only assert an extendedKeyUsage purpose of id-kp-serverAuth OR (2) only assert extendedKeyUsage purposes of id-kp-serverAuth and id-kp-clientAuth.
- on or after June 15, 2026, include the extendedKeyUsage extension and only assert an extendedKeyUsage purpose of id-kp-serverAuth.

The document doesn't explain why dropping clientAuth is now required

4/5

Questa voce è stata modificata (5 mesi fa)

Oblomov reshared this.

in reply to Jan Wildeboer 😷

This means that you would have to run separate CAs/PKIs (Certificate Authority/Public Key Infrastructure) for certs that Google accepts to trust (with only ServerAuth allowed) and one for certs with other EKU (Extended Key Usage) features (like ClientAuth). For server admins that results in two different certificates per server/domain name where right now you have it "all in one".

5/5

Oblomov reshared this.

in reply to Jan Wildeboer 😷

Addendum: This will have impact on many solutions that use mTLS (Mutual TLS).

"Could my mTLS or cloud-API use cases be affected?

Yes. Any system using public TLS certificates for mutual TLS or machine-to-machine calls—rather than separate ServerAuth and ClientAuth certificates—will break once Chrome distrusts mixed-use intermediates. Financial institutions and service-mesh deployments are the most common examples."

digicert.com/blog/how-the-clie…

in reply to Jan Wildeboer 😷

Addendum 2: Google wants TLS certificates to ONLY have the ServerAuth EKU. Any other EKU [1] in a certificate automatically means the certificate is NOT trusted by Chrome from mid next year.

What other EKUs exist and do you think it makes sense to exclude them all? IMHO this is a radical approach to TLS. But it seems to be the accepted position. No more certs with any EKU but ServerAuth.

[1] docs.openssl.org/3.4/man5/x509…

Questa voce è stata modificata (4 mesi fa)

Oblomov reshared this.

in reply to Jan Wildeboer 😷

i don't know / don't understand, why they stop issuing this certificates completely. as far as i understand it would be possible to add a profile to get certs with e.g. client-auth eku but without server-auth eku...

Would be more hassle as you could not use the same cert anymore but at least there would be a solution without fiddling with my own private pki ...

Questa voce è stata modificata (4 mesi fa)
in reply to IchEben

@IchEben IMO this would be a reasonable position for LetsEncrypt, have two PKI hierarchies: one for server auth (prb 99% of their use cases), one for client auth (1%) to separate the root certs, and keeping the client auth root out of Googles hair.

[Edit] this allows other cert distributions for servers (eg debian ca-certificates package) to continue to support client auth out of the box too.

Questa voce è stata modificata (4 mesi fa)
in reply to Phil Ashby 🍵

@phlash Yep. And they could allow more EKUs on the second PKI. CodeSigning, MailProtection. LetsEncrypt should be more than just the minimal ServerAuth that Google will accept. @IchEben
in reply to Daniel Fisher(lennybacon)

@lennybacon Not according to Letsencrypt:

"May 13, 2026: the tlsclient ACME profile will no longer be available and no further certificates with the Client Authentication EKU will be issued."

and

"After this change is complete, only TLS Server Authentication will be available from Let’s Encrypt."

letsencrypt.org/2025/05/14/end…

@phlash @IchEben

in reply to Jan Wildeboer 😷

@phlash @IchEben You are Right. They push it to a separate profile and will “phase it out”… that is indeed sad
in reply to Jan Wildeboer 😷

I'm a bit confused. Client certs rely on the server/issuer having the private key, no? And I'd not want that key to be in the hands of a third party?

I've always generated those myself, unlike the ones I need for public SSL/TLS.

Those don't need to be bought but maybe the mail servers in question need a better admin UX for managing them as part of the user management?

in reply to Lars Marowsky-Brée 😷

@larsmb If you operate server A and B, both have their private key. Then you can tell server A to accept any mail from a server that presents Bs key. In that case, B key is used as client cert (even though the same cert is used as server cert if someone from outside connects to mail server B)
in reply to James P Brosnahan

@david_chisnall @AndiBarth @larsmb PKI let's any client or server be trusted by only requiring they are verified once by a trusted third-party. In the US, there are legal benefits to this with data leaks, etc.
in reply to James P Brosnahan

@Jpbrosnahan1 @AndiBarth @larsmb

PKI let's any client or server be trusted by only requiring they are verified once by a trusted third-party.


Which is totally irrelevant for the use case under discussion in this thread (allowing a mail server under your control to establish an authenticated connection to another mail server under your control). Allowing machines not under your control to connect is the thing that you are trying to prevent. The fact that public PKI makes this possible is a bug, not a feature.

in reply to Jan Wildeboer 😷

Hm…

abcnews.go.com/International/w…

Sure, using Microsoft as mail hoster was always a stupid idea, but this is the proof why.

There was always the question if you could trust LetsEncrypt as US entity. The answer is now clear: No!

The US WANTS to monopolize e-mail, and use it to sanction enemies.

There are two things to do now:

1. Change the Mail Server code so that incoming connections are ok when they present a server certificate

2. Scold LetsEncrypt. At least DNS-verified client certificates need to be possible (for mail-only servers, DNS verification is the way to go, anyways).

Unknown parent

mastodon - Collegamento all'originale
Jan Wildeboer 😷
@david_chisnall The problem is that LetsEncrypt et all will stop issuing certs with any EKU *except* ServerAuth. So no more Certs with ClientAuth, CodeSigning, MailProtection or any other EKU. And setting up your own CA/PKI is not just a handful of openssl commands, as you very well know. Getting the root CA in the trust store on a Linux machine might be doable, but adding new root CAs to the trust store on devices like iPhones, Android is a very different story @larsmb @Jpbrosnahan1 @AndiBarth
Unknown parent

@larsmb @Jpbrosnahan1 @AndiBarth

That not everyone out there can run a private CA/PKI and demanding that to be the requirement is an exclusive and not inclusive approach.


I find it hard to imagine that there are people who are capable of deploying the kind of systems that creates a need for PKI, who cannot run the tiny handful of openssl command line commands it needs.

Being able to configure a web or mail server that works with Let's Encrypt is at least as hard. Even installing a web server is almost as hard.

And that's assuming that they use the openssl command line directly. There are (open source) packaged wrappers that make it much easier.

While a lot is being talked about the security aspect, I have yet to see examples of security breaches caused by having ClientAuth EKU in a certificate


The problem is not having a ClientAuth EKU certificate, the problem is having a certificate that has both ServerAuth and ClientAuth EKU flags. These are different uses. A certificate is never simultaneously used for both. If you are establishing a connection and presenting a certificate, you want a client certificate. If you are accepting an incoming connection and presenting a certificate, you want a ServerAuth certificate.

Combining the two violates two of the most fundamental principles in computer security:

  • The principle of least privilege. A certificate that combines the two violates this because it is combining two things that are never used together and so should be separate.
  • The principle of intentional use. A certificate that combines the two violates this by providing a certificate that is easy to use in the wrong case.

There have been compromises as a result of trusting certificates that were issued for server use as clients and vice versa. This is why EKU was added in the first place, setting both the client and server EKUs misses the point. I'm not sure why LE ever did this. Especially since they've explicitly said on numerous occasions that they don't issue client certificates (which is a shame, I wish they'd provide a flow for issuing S/MIME certs).

Their certificates have very limited use for client auth. Most of the time you want more than a domain name when authenticating clients. You want to authenticate users and you want to authenticate them with some specific claim.

Server certificates are simpler because the claim that you want to authenticate with the certificate is that the owner of the domain name that you think you're connecting to is responsible for the other endpoint. With client certificates, simply binding to a domain rarely makes sense. For situations where this actually is what you want, protocols often use dial-back, where the server establishes a connection back to the server, which tells you both that they have the certificate for that domain and control (or can hijack connections to) the IP associated with that domain (XMPP does this, for example, because early 2000s anti-spam ideas thought that knowing the sending domain was useful, but this doesn't work for email because relaying complicates the whole thing).

Unknown parent

mastodon - Collegamento all'originale
Lars Marowsky-Brée 😷

@david_chisnall @Jpbrosnahan1 @AndiBarth But setting up a "PKI" for my (private/personal) use client certs (where I don't want an outside party to know the private key, nor there be any record in a public cert log) was quite easy?

The linked article (digicert.com/blog/how-the-clie…) drives this point home: "separate public and private trust" and suggests this makes sense?

I use mTLS quite a bit for my setups and using LE for that hasn't ever crossed my mind.

I must be missing something.

in reply to Lars Marowsky-Brée 😷

@larsmb Yes. That not everyone out there can run a private CA/PKI and demanding that to be the requirement for any EKU except ServerAuth is an exclusive and not inclusive approach. While a lot is being talked about the security aspect, I have yet to see examples of security breaches caused by having ClientAuth EKU in a certificate. @david_chisnall @Jpbrosnahan1 @AndiBarth
in reply to Jan Wildeboer 😷

Let's Encrypt is MORE important than Google. IT should dictate what Google does IMO smh