{"id":13566020,"url":"https://github.com/obynio/certbot-plugin-gandi","last_synced_at":"2026-02-19T10:17:22.183Z","repository":{"id":47199915,"uuid":"136016712","full_name":"obynio/certbot-plugin-gandi","owner":"obynio","description":"Certbot plugin for authentication using Gandi LiveDNS","archived":false,"fork":false,"pushed_at":"2025-02-25T15:00:11.000Z","size":56,"stargazers_count":200,"open_issues_count":8,"forks_count":27,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-03-26T14:05:46.158Z","etag":null,"topics":["certbot","certbot-plugin","gandi-api","gandi-livedns","letsencrypt","letsencrypt-plugin","wildcard-certificates"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/certbot-dns-gandi/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/obynio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-06-04T11:43:14.000Z","updated_at":"2025-03-17T00:01:23.000Z","dependencies_parsed_at":"2024-08-01T13:23:02.056Z","dependency_job_id":"58feab49-fad5-4ee4-9c78-ba51e50c8dff","html_url":"https://github.com/obynio/certbot-plugin-gandi","commit_stats":{"total_commits":56,"total_committers":10,"mean_commits":5.6,"dds":0.3571428571428571,"last_synced_commit":"9b58264feeab69939f8b348847dc42632bf44a1e"},"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/obynio%2Fcertbot-plugin-gandi","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/obynio%2Fcertbot-plugin-gandi/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/obynio%2Fcertbot-plugin-gandi/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/obynio%2Fcertbot-plugin-gandi/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/obynio","download_url":"https://codeload.github.com/obynio/certbot-plugin-gandi/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247097644,"owners_count":20883122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["certbot","certbot-plugin","gandi-api","gandi-livedns","letsencrypt","letsencrypt-plugin","wildcard-certificates"],"created_at":"2024-08-01T13:02:00.258Z","updated_at":"2026-02-19T10:17:17.135Z","avatar_url":"https://github.com/obynio.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# Certbot plugin for authentication using Gandi LiveDNS\n\nThis is a plugin for [Certbot](https://certbot.eff.org/) that uses the Gandi\nLiveDNS API to allow [Gandi](https://www.gandi.net/)\ncustomers to prove control of a domain name.\n\n\u003e [!IMPORTANT]  \n\u003e In order to match the naming convention for certbot plugin, the plugin has been repackaged under a new name `certbot-dns-plugin` and legacy users of the previous package will receive the new package as a dependency.\n\n## Usage\n\n1. Obtain a Gandi API token (see [Gandi LiveDNS API](https://doc.livedns.gandi.net/))\n\n2. Install the plugin and ensure the old plugin name variant is not present:\n   ```sh\n   pip uninstall certbot-plugin-gandi\n   pip install certbot-dns-gandi\u003e=1.6.0\n   ```\n   \n3. Create a `/etc/letsencrypt/gandi.ini` config file with the following contents:\n   ```conf\n   # Gandi Token\n   dns_gandi_token=TOKEN\n\n   # optional organization id, remove it if not used\n   dns_gandi_sharing_id=SHARINGID\n   ```\n   Replace `PERSONAL_ACCESS_TOKEN` with your Gandi personal access token.\n   You can also use a Gandi LiveDNS API Key instead, see FAQ below.\n  \n4. Ensure permissions are set to disallow access from other users, e.g., using `chmod 0600 gandi.ini`\n\n5. Run `certbot` and direct it to use the plugin for authentication with the config file:\n   ```sh\n   certbot certonly --authenticator dns-gandi --dns-gandi-credentials /etc/letsencrypt/gandi.ini -d example.com\n   # or\n   certbot renew --authenticator dns-gandi --dns-gandi-credentials /etc/letsencrypt/gandi.ini\n\nPlease 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.\n\nBe aware that the plugin configuration must be provided by CLI, configuration for third-party plugins in `cli.ini` is not supported by certbot for the moment. Please refer to [#4351](https://github.com/certbot/certbot/issues/4351), [#6504](https://github.com/certbot/certbot/issues/6504) and [#7681](https://github.com/certbot/certbot/issues/7681) for details.\n\n## Distribution\n\nPyPI is the upstream distribution channel, other channels are not maintained by me.\n\n* PyPI: https://pypi.org/project/certbot-dns-gandi\n* Archlinux: https://aur.archlinux.org/packages/certbot-dns-gandi-git/\n* Debian: https://packages.debian.org/sid/main/python3-certbot-dns-gandi\n* PyPI: https://pypi.org/project/certbot-dns-gandi/\n\n```sh\npip uninstall certbot-plugin-gandi\npip install certbot-dns-gandi\u003e=1.6.0\n```\n\nInstalling this plugin from PyPI using `pip` will also install a recent version of certbot itself, which may conflict with any other certbot already installed on your system. See the provided `Dockerfile` on how to containerize certbot + the plugin to run together.\n\n## Wildcard certificates\n\nThis plugin is particularly useful when you need to obtain a wildcard certificate using dns challenges:\n\n```\ncertbot 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/directory\n```\n\n## Automatic renewal\n\nYou can setup automatic renewal using `crontab` with the following job for weekly renewal attempts:\n\n```\n0 0 * * 0 certbot renew -q --authenticator dns-gandi --dns-gandi-credentials /etc/letsencrypt/gandi/gandi.ini --server https://acme-v02.api.letsencrypt.org/directory\n```\n\n## Reading material\n\n* A [blog post](https://www.linux.it/~ema/posts/letsencrypt-the-manual-plugin-is-not-working/) by [@realEmaRocca](https://twitter.com/realEmaRocca) describing how to use this plugin on Debian\n\n## FAQ\n\n\u003e What's `certbot-plugin-gandi` and `certbot-dns-gandi` ?\n\nDecision was taken to adapt the name of the plugin to the common DNS plugin naming convention `certbot-dns-*` so the legacy package `certbot-plugin-gandi` will be deprecated in favor of `certbot-dns-gandi`.\n\n\u003e I don't have a personal access token, only a Gandi LiveDNS API Key\n\nLive DNS API keys are deprecated and now unusable.\n\n\u003e I have a warning telling me `Plugin legacy name certbot-plugin-gandi:dns may be removed in a future version. Please use dns instead.`\n\nCertbot 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.\n\n\u003e Why do you keep this plugin a third-party plugin ? Just merge it with certbot ?\n\nThis Gandi plugin is a third-party plugin mainly because this plugin is not officially backed by Gandi and because Certbot [does not accept](https://certbot.eff.org/docs/contributing.html?highlight=propagation#writing-your-own-plugin) new plugin submissions.\n\n![no_submission](https://user-images.githubusercontent.com/2095991/101479748-fd9da280-3952-11eb-884f-491470718f4d.png)\n\n## Credits\n\nHuge thanks to Michael Porter for its [original work](https://gitlab.com/sudoliyang/certbot-plugin-gandi) !\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fobynio%2Fcertbot-plugin-gandi","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fobynio%2Fcertbot-plugin-gandi","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fobynio%2Fcertbot-plugin-gandi/lists"}