Unrecognized arguments: --dns-cloudflare-credentials

Summary:

unrecognized arguments: --dns-cloudflare-credentials

I have already use pip install certbot-dns-cloudflare to install the plugin.

I only want to generate certs. I do not need to deploy them to any webserver

====================

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. https://crt.sh/?q=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: zeetings-dev.com

I ran this command:

certbot certonly --agree-tos --config-dir .letsencrypt-config --work-dir letsencrypt --logs-dir letsencrypt-log \
 --dns-cloudflare-credentials .letsencrypt-config/cf.ini -d zeetings-dev.com --dns-cloudflare

It produced this output:

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: unrecognized arguments: --dns-cloudflare-credentials .letsencrypt-config/cf.ini

My web server is (include version):

google app engine & nginx

The operating system my web server runs on is (include version): Unknown (GAE) and ubuntu 16.04

My hosting provider, if applicable, is:

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

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

Hi @kongakong,

You should wait till the dns plugins are included in the ppa certbot repo... they are working on it.

If you don't want to wait :stuck_out_tongue: , I would recommend to use certbot-auto instead of certbot (if you want instructions to install it with the dns plugin let me know).

And if you want to use the plugin with your current certbot installation, install pip3 and then install the dns plugin (use at your own risk):

apt install python3-pip
pip3 install certbot-dns-cloudflare

And executing certbot plugins command you should see the new plugin:

* dns-cloudflare
Description: Obtain certificates using a DNS TXT record (if you are using
Cloudflare for DNS).
Interfaces: IAuthenticator, IPlugin
Entry point: dns-cloudflare =
certbot_dns_cloudflare.dns_cloudflare:Authenticator

Cheers,
sahsanu

Hi @sahsanu, pip manual install works for me. But when renew, error pops out

certbot-auto renew
Requesting to rerun /usr/local/sbin/certbot-auto with root privileges...
Saving debug log to /var/log/letsencrypt/letsencrypt.log

-------------------------------------------------------------------------------
Processing /etc/letsencrypt/renewal/zhihu-card.info.conf
-------------------------------------------------------------------------------
Renewal configuration file /etc/letsencrypt/renewal/zhihu-card.info.conf (cert: zhihu-card.info) produced an unexpected error: 'Namespace' object has no attribute 'dns_cloudflare_credentials'. Skipping.

In my conf file:

[renewalparams]
authenticator = dns-cloudflare
dns_cloudflare_credentials = /home/laike9m/.cloudflare_key.ini
installer = None

How do I make it work?

@bmw @joohoi, how do persisted DNS-plugin-specific options in renewalparams work? Is this right?

Hi @laike9m,

If you use this command certbot-auto plugins do you see the plugin dns-cloudflare available in the list?.

If you have upgraded certbot-auto or it has self-upgraded then you have lost the dns-cloudflare plugin because in the upgrade certbot-auto removes the venv path and with that the plugins installed so you should install it again pip3 install certbot-dns-cloudflare.

If that is the case maybe you should add the param --no-self-upgrade to your cron job for certbot-auto renew command to avoid undesired upgrades and execute the certbot-auto command manually from time to time to check whether there is a new version and in case it upgrades, re-install the dns plugin.

Cheers,
sahsanu

1 Like

It's strange. dns-cloudflare is not listed in certbot-auto's plugins, even after I ran pip3 install. So I ran pip3 freeze, and confirmed they are all installed

certbot==0.22.2
certbot-dns-cloudflare==0.24.0

Hi @laike9m,

Use this command:

certbot-auto --version

If it needs to upgrade it will do, then use this command to install the plugin:

/opt/eff.org/certbot/venv/bin/pip install certbot-dns-cloudflare

and try again, certbot-auto plugins

Cheers,
sahsanu

3 Likes

Cool. Now it works, thanks for your help!

1 Like

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.