I have 2 plugins for PowerDNS installed via pip. Certbot doesn't find either of them. It used to. I've seem similar topic in here, but nothing quite like I'm dealing with. Thanks for the help.
I ran this command: certbot certonly -n --logs-dir /var/log/certcron/_.TEMPvoyant.com --authenticator certbot-dns-powerdns:dns-powerdns -d *.voyant.com --cert-name voyant.com --agree-tos --email "devops@voyant.com"
It produced this output: The requested certbot-dns-powerdns:dns-powerdns plugin does not appear to be installed
My web server is (include version): NA
The operating system my Certbot runs on is (include version): Ubuntu 20.04
My hosting provider, if applicable, is: NA
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): certbot 2.1.0
The other domain that produces the same error
root@ply-certbot-u20-01:/srv/certbot/PDNStest# certbot certonly -n --logs-dir /var/log/certcron/_.TEMPvoyant.com --authenticator certbot-pdns:auth -d *.voyant.com --cert-name voyant.com --agree-tos --email "devops@voyant.com"
Saving debug log to /var/log/certcron/_.TEMPvoyant.com/letsencrypt.log
The requested certbot-pdns:auth plugin does not appear to be installed
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/certcron/_.TEMPvoyant.com/letsencrypt.log or re-run Certbot with -v for more details.
root@ply-certbot-u20-01:/srv/certbot/PDNStest#
root@ply-certbot-u20-01:/srv/certbot/PDNStest# pip list | grep cert
certbot 2.1.0
certbot-dns-dnsmadeeasy 1.22.0
certbot-dns-powerdns 0.2.1
certbot-pdns 1.2.0
certifi 2019.11.28
root@ply-certbot-u20-01:/srv/certbot/PDNStest#
root@ply-certbot-u20-01:/srv/certbot/PDNStest# certbot plugins --text
Saving debug log to /var/log/letsencrypt/letsencrypt.log
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* auth
Description: Place challenges in DNS records
Interfaces: Plugin
Entry point: auth = certbot_pdns.authenticator:Authenticator
* dns-dnsmadeeasy
Description: Obtain certificates using a DNS TXT record (if you are using DNS
Made Easy for DNS).
Interfaces: Authenticator, Plugin
Entry point: dns-dnsmadeeasy =
certbot_dns_dnsmadeeasy._internal.dns_dnsmadeeasy:Authenticator
* dns-powerdns
Description: Obtain certificates using a DNS TXT record (if you are using
PowerDNS for DNS.)
Interfaces: Authenticator, Plugin
Entry point: dns-powerdns = certbot_dns_powerdns.dns_powerdns:Authenticator
* standalone
Description: Spin up a temporary webserver
Interfaces: Authenticator, Plugin
Entry point: standalone = certbot._internal.plugins.standalone:Authenticator
* webroot
Description: Place files in webroot directory
Interfaces: Authenticator, Plugin
Entry point: webroot = certbot._internal.plugins.webroot:Authenticator
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Sorry _az, I meant to mention that I tried that as well, but it's like -a doesn't like see the argument.
root@ply-certbot-u20-01:~# certbot certonly -n --logs-dir /var/log/certcron/_.TEMPvoyant.com --authenticator auth -d *.voyant.com --cert-name voyant.com --agree-tos --email "devops@voyant.com"
Saving debug log to /var/log/certcron/_.TEMPvoyant.com/letsencrypt.log
usage:
certbot [SUBCOMMAND] [options] [-d DOMAIN] [-d DOMAIN] ...
Certbot can obtain and install HTTPS/TLS/SSL certificates. By default,
it will attempt to use a webserver both for obtaining and installing the
certificate.
certbot: error: argument -a/--authenticator: expected one argument
root@ply-certbot-u20-01:~#
# certbot certonly -n --logs-dir /var/log/certcron/_.TEMPvoyant.com --authenticator '\a\u\t\h' -d *.voyant.com --cert-name voyant.com --agree-tos --email "devops@voyant.com"
Saving debug log to /var/log/certcron/_.TEMPvoyant.com/letsencrypt.log
The requested \a\u\t\h plugin does not appear to be installed
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/certcron/_.TEMPvoyant.com/letsencrypt.log or re-run Certbot with -v for more details.
# certbot certonly -n --logs-dir /var/log/certcron/_.TEMPvoyant.com --authenticator 'auth' -d *.voyant.com --cert-name voyant.com --agree-tos --email "devops@voyant.com"
Saving debug log to /var/log/certcron/_.TEMPvoyant.com/letsencrypt.log
usage:
certbot [SUBCOMMAND] [options] [-d DOMAIN] [-d DOMAIN] ...
Certbot can obtain and install HTTPS/TLS/SSL certificates. By default,
it will attempt to use a webserver both for obtaining and installing the
certificate.
certbot: error: argument -a/--authenticator: expected one argument
# certbot certonly -n --logs-dir /var/log/certcron/_.TEMPvoyant.com --authenticator certbot-pdns -d *.voyant.com --cert-name voyant.com --agree-tos --email "devops@voyant.com"
Saving debug log to /var/log/certcron/_.TEMPvoyant.com/letsencrypt.log
The requested certbot-pdns plugin does not appear to be installed
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/certcron/_.TEMPvoyant.com/letsencrypt.log or re-run Certbot with -v for more details.
I remember that issue from before and I got excited for a second, but I don't think that's the case here.
Following these steps, I was able to install and use the certbot-pdns plugin via the auth entrypoint:
sudo python3 -m venv /opt/certbot/
sudo /opt/certbot/bin/pip install --upgrade pip
sudo /opt/certbot/bin/pip install certbot certbot-pdns
sudo ln -s /opt/certbot/bin/certbot /usr/bin/certbot
sudo certbot certonly -d example.com -a auth --dry-run
An unexpected error occurred:
FileNotFoundError: [Errno 2] No such file or directory: '/etc/letsencrypt/certbot-pdns.json'
Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.