GleSYS DNS authentication plugin for Certbot
Project description
GleSYS DNS Authenticator for Certbot
This allows automatic completion of Certbot’s DNS01 challange for domains managed on GleSYS DNS.
Installing
Installation of Certbot plugins are a bit tricky. The least bad way is to create a Python virtual environment as root and install it there.
$ cd /root/
$ python3 -m venv --prompt=certbot certbot
$ source certbot/bin/activate
$ pip install --upgrade pip setuptools
$ pip install certbot-dns-glesys
You can now run Certbot using /root/certbot/bin/certbot.
If you use Fedora like me I have prepared an RPM you can use instead.
$ sudo dnf install https://github.com/runfalk/certbot-dns-glesys/releases/download/1.0.0/python3-certbot-dns-glesys-2.0.0-1.fedora33.noarch.rpm
If you use another RPM based distribution you may be able to build it yourself. On Fedora I install rpmdevtools before this. Note that this command must not be run inside a virtualenv (or the installation path will be incorrect). You can verify the installation path using rpm -qpl dist/*.rpm.
$ ./make_rpm.sh
PRs are welcome for other distributions.
Usage
Create an API key with the following permissions:
domain:list
domain:listrecords
domain:addrecord
domain:deleterecord
Don’t forget to give access to the appropriate IP-address range. If you want to be able to run the client from anywhere, enter 0.0.0.0/0.
To use the authenticator you need to provide some required options:
- --dns-glesys-credentials (required)
INI file with user and password for your GlesSYS API user.
The credentials file must have the following format:
dns_glesys_user = CL00000
dns_glesys_password = apikeygoeshere
For safety reasons the file must not be world readable. You can solve this by running:
$ chmod 600 credentials.ini
Then you can run certbot using:
$ certbot certonly \
--authenticator dns-glesys \
--dns-glesys-credentials credentials.ini \
-d domain.com
If you want to obtain a wildcard certificate you can use the the domain -d "*.domain.com".
Disclaimer
This plugin is neither affiliated with nor endorsed by GleSYS Internet Services AB.
Changelog
Version 2.0.0
Released 28th December 2020
This is a breaking change. The CLI arguments and the name of the package has changed to match other DNS authenticator plugins.
Updated name to certbot-dns-glesys to match other DNS plugins
Move away from legacy Certbot API (means you need to reconfigure your authenticator). All arguemnts and parameters are now prefix-less
Dropped Python 2 support
Dropped Python 3.5 support
Version 1.0.0
Released 11th April 2020
Changed to GleSYS JSON API
Added RPM as an installation option
Dropped support for EOL Python versions
Version 0.2.0
Released on 23rd April 2018
This is a breaking change since it requires the domain:list permission.
Added proper support for sub domain guessing, pull request #4 (@Lillecarl)
Version 0.1.1
Released on 15th March, 2018
Bumped default propagation time to 90 seconds to improve reliability
Fixed wrong base url in GlesysDomainApiClient, pull request #2 (@montaniasystemab)
Version 0.1.0
Released on 30th September, 2017
Initial release
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file certbot_dns_glesys-2.0.0-py2.py3-none-any.whl
.
File metadata
- Download URL: certbot_dns_glesys-2.0.0-py2.py3-none-any.whl
- Upload date:
- Size: 6.4 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/49.1.3 requests-toolbelt/0.9.1 tqdm/4.55.0 CPython/3.9.1
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f984cb0df1065cf0d34f5d76be7108754392b129ba45c2b9a6ff3a1e0c0e7526 |
|
MD5 | 1ac22788e1848f94dd3d8bcf7d6f85e0 |
|
BLAKE2b-256 | dfa0a791f5e4f89c4f81c59c4dc642af8922eb1d7d1eddd026e8cab8a29b2862 |