`certbot-auto` can't find certificates after obtaining (a working) one (Debian 8, Tomcat 9)

Certbot's --csr argument makes it behave very differently than usual. Normally Certbot generates its own private key and saves the the key, certificate and automatic renewal settings in /etc/letsencryot/. When using --csr, it doesn't. The certificates command pulls from that information, so it doesn't see certificates issued using --csr.

The certificate file was saved in the current directory, at the path Certbot displayed.

You can inspect it with a non-Certbot tool like "openssl x509 -noout -text -in /srv/ssl/certbot/0001_chain.pem", if you want to.

I'd really suggest you avoid using --csr if you can. Some ACME clients let you specify a custom CSR and access all of their features, but Certbot doesn't.

I don't use Tomcat, so I can suggest what not to do, but don't know much about what you should do.

You can use a Certbot --deploy-hook to have Certbot generate files in the format Tomcat wants. (And also reload or restart Tomcat.) This thread covers some of it:

(A relatively recent Certbot feature that won't be covered in older tutorials is the --reuse-key option. That causes Certbot to generate a private key the first time you create a certificate, but reuse the same key when renewing it in the future. However, as the link above shows, you don't need to do that.)

3 Likes