Certbot show_account command with custom ACME provider

I have registered an account with a non-default ACME provider. Now I want to unregister that account, but I have no idea how. The show_account command returns only this Could not find an existing account for server https://acme-v02.api.letsencrypt.org/directory.
I looked online and I found this doc, which says that you can alternatively look at the regr.json for the URI of the account. I found the URI and tried sudo certbot show_account --account https://acme.provider.eu/acme/acct/, but that doesn't work either. When I try sudo certbot unregister --account https://acme.provider.eu/acme/acct/ it doesn't work either. Everything returns "Could not find existing account for server https://acme-v02.api.letsencrypt.org/directory."

For completion, simply reregistering the account gives this error: There is an existing account; registration of a duplicate account with this command is currently unsupported. So the account is definitely registered.

Does anybody know how to actually get the correct account ID or unregister an account?

Please fill out the fields below so we can help you better. Note: you must provide your domain name to get help. Domain names for issued certificates are all made public in Certificate Transparency logs (e.g. crt.sh | example.com), so withholding your domain name here does not increase secrecy, but only makes it harder for us to provide help.

My domain is: irrelevant

I ran this command: sudo certbot show_account

It produced this output: Could not find an existing account for server https://acme-v02.api.letsencrypt.org/directory

My web server is (include version): apache

The operating system my web server runs on is (include version): Debian

My hosting provider, if applicable, is: not applicable

I can login to a root shell on my machine (yes or no, or I don't know): yes

I'm using a control panel to manage my site (no, or provide the name and version of the control panel): no

The version of my client is (e.g. output of certbot --version or certbot-auto --version if you're using Certbot): 3.2.0

try giving --server 'that custom server' option too

2 Likes

Thanks. This did the trick. I can't believe this isn't in the documentation though. It's unfortunate that certbot and its documentation is 100% about letsencrypt and doesn't really provide useful info on scenarios that use other non-default ACME providers / servers.

You're correct about Certbot being mainly LE orientated.

That said, that's simply shown by the default ACME server choice and it's easily fixed with the --server option, nothing more. And Let's Encrypt is the largest free ACME CA out there.

You can fill out a feature request on the Certbot GitHub repo by filling out an issue.

1 Like

The --server option is documented and you must have been using it before to register and get a cert. If you're using that other provider for all your certs, you can place a line server = yourserver in your /etc/letsencrypt/cli.ini file and certbot will use that server for everything from now on.

2 Likes

You're right; I did use the --server flag when registering the account. But my assumption was that the show_account command would just show me all the accounts (since it's not documented anywhere).

From the official documentation, the show_account subcommand weirdly shows the text "Options useful for the "show_account" subcommand:", but then doesn't list anything.

image

Other subcommands have the same issue. This is what leads me to believe the documentation is incomplete. But maybe I'm missing something here. Can you show me where it's documented, so that next time I can more easily find what I'm looking for?

Hm, when I implemented the show_account, I did add some code that should (I believe) add the --server option to the show_account subcommand:

Not sure why Certbot doesn't do that?

Also when I attempted certbot --help show_account, it just outputs a generic help text and nothing specific about the show_account subcommand..

Probably buggy Certbot :roll_eyes: Maybe someone should open an issue at GitHub · Where software is built.

3 Likes

I think you're right on this one, and you've actually read the documentation. That alone deserves a medal today. :laughing:

Know that all the arguments listed on the help page are valid and accepted for any operation. It just depends on if the chosen action makes use of it. If an argument doesn't affect the given command, it is silently ignored.

2 Likes