Package: certbot-plugin-gandi
Certbot plugin for authentication using Gandi LiveDNSThis is a plugin forCertbotthat uses the Gandi
LiveDNS API to allowGandicustomers to prove control of a domain name.Usage/!\ Certbot 1.7.0 imposed breaking changes on this plugin, make sure to remove any prefix-based configurationObtain a Gandi API token (seeGandi LiveDNS API)Install the plugin usingpip install certbot-plugin-gandiCreate agandi.iniconfig file with the following contents and applychmod 600 gandi.inion it:# Gandi personal access token
dns_gandi_token=PERSONAL_ACCESS_TOKENReplacePERSONAL_ACCESS_TOKENwith your Gandi personal access token and ensure permissions are set
to disallow access to other users. You can also use a Gandi LiveDNS API Key instead, see FAQ below.Runcertbotand direct it to use the plugin for authentication and to use
the config file previously created:certbot certonly --authenticator dns-gandi --dns-gandi-credentials /etc/letsencrypt/gandi/gandi.ini -d domain.comAdd additional options as required to specify an installation plugin etc.Please note that this solution is usually not relevant if you're using Gandi's web hosting services as Gandi offers free automated certificates for all simplehosting plans having SSL in the admin interface.Be aware that the plugin configuration must be provided by CLI, configuration for third-party plugins incli.iniis not supported by certbot for the moment. Please refer to#4351,#6504and#7681for details.DistributionPyPI is the upstream distribution channel, other channels are not maintained by me.PyPI:https://pypi.org/project/certbot-plugin-gandi/Archlinux:https://aur.archlinux.org/packages/certbot-dns-gandi-git/Debian:https://packages.debian.org/sid/main/python3-certbot-dns-gandiUbuntu:https://packages.ubuntu.com/kinetic/python3-certbot-dns-gandiSnap: Not yet packaged. I'm lazy.Latests builds are also available on Launchpad:https://launchpad.net/ubuntu/+source/python-certbot-dns-gandiBe careful, installing this plugin with PyPI will also install certbot via PyPI which may conflict with any other certbot already installed on your system.Wildcard certificatesThis plugin is particularly useful when you need to obtain a wildcard certificate using dns challenges:certbot certonly --authenticator dns-gandi --dns-gandi-credentials /etc/letsencrypt/gandi/gandi.ini -d domain.com -d \*.domain.com --server https://acme-v02.api.letsencrypt.org/directoryAutomatic renewalYou can setup automatic renewal usingcrontabwith the following job for weekly renewal attempts:0 0 * * 0 certbot renew -q --authenticator dns-gandi --dns-gandi-credentials /etc/letsencrypt/gandi/gandi.ini --server https://acme-v02.api.letsencrypt.org/directoryReading materialAblog postby@realEmaRoccadescribing how to use this plugin on DebianFAQI don't have a personal access token, only a Gandi LiveDNS API KeyUse the following configuration in yourgandi.inifile instead:# live dns v5 api key
dns_gandi_api_key=APIKEY

# optional organization id, remove it if not used
dns_gandi_sharing_id=SHARINGIDReplaceAPIKEYwith your Gandi API key and ensure permissions are set
to disallow access to other users.I have a warning telling mePlugin legacy name certbot-plugin-gandi:dns may be removed in a future version. Please use dns instead.Certbot had moved to remove 3rd party plugins prefixes since v1.7.0. Please switch to the new configuration format and remove any used prefix-based configuration.
For the time being, you can still use prefixes, but if you do so and keep using prefix-based cli arguments, stay consistent and use prefix-based configuration in the ini file.New post-prefix configuration for certbot>=1.7.0--authenticator dns-gandi --dns-gandi-credentialsgandi.ini# live dns v5 api key
dns_gandi_api_key=APIKEY

# optional organization id, remove it if not used
# if you use certbot<1.7.0 please use certbot_plugin_gandi:dns_sharing_id=SHARINGID
dns_gandi_sharing_id=SHARINGIDLegacy prefix-based configuration for certbot<1.7.0-a certbot-plugin-gandi:dns --certbot-plugin-gandi:dns-credentialsgandi.ini# live dns v5 api key
certbot_plugin_gandi:dns_api_key=APIKEY

# optional organization id, remove it if not used
certbot_plugin_gandi:dns_sharing_id=SHARINGIDSeecertbot/8131andcertbot-plugin-gandi/23for details. Please make sure to update the configuration file to the new format.I get aProperty "certbot_plugin_gandi:dns_api_key" not found (should be API key for Gandi account).. Skipping.See above.Why do you keep this plugin a third-party plugin ? Just merge it with certbot ?This Gandi plugin is a third party plugin mainly because this plugin is not officially backed by Gandi and because Certbotdoes not acceptnew plugin submissions.CreditsHuge thanks to Michael Porter for itsoriginal work!