This release is a pre-release and may not be stable for production use.
Alibaba Cloud DNS Authenticator plugin for Certbot.
This plugin automates the process of completing a dns-01 challenge by creating, and subsequently removing, TXT records using the Alibaba Cloud DNS API.
Installation
pip install certbot-dns-alibabacloud
Named Arguments
--dns-alibabacloud-credentials |
Alibaba Cloud credentials INI file. (Required) |
--dns-alibabacloud-propagation-seconds |
The number of seconds to wait for DNS to propagate before asking the ACME server to verify the DNS record. (Default: 30) |
Credentials
You need to provide a credentials file containing your Alibaba Cloud AccessKey to Certbot so that it can communicate with Alibaba Cloud and complete the DNS-01 domain validation on your behalf. The Access Key can be created through the Alibaba Cloud RAM (Resource Access Management) console.
An example credentials file is shown below:
# Alibaba Cloud API credentials used by Certbot
dns_alibabacloud_access_key_id = LTAI5txxxxxxxxxxxxxxxxxx
dns_alibabacloud_access_key_secret = yyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
To manage the DNS records required for the challenge, the plugin first needs to locate the corresponding managed domain in Alibaba Cloud DNS for the requested certificate domain name.
The Access Key must have permission to list managed domains in Alibaba Cloud DNS, create and delete DNS records, and query existing records for challenge cleanup after the validation completes:
alidns:DescribeDomains
alidns:AddDomainRecord
alidns:DeleteDomainRecord
alidns:DescribeDomainRecords
Here is an example RAM policy that follows the Principle of Least Privilege:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "alidns:DescribeDomains",
"Resource": "*"
},
{
"Effect": "Allow",
"Action": [
"alidns:AddDomainRecord",
"alidns:DeleteDomainRecord",
"alidns:DescribeDomainRecords"
],
"Resource": "acs:alidns:*:*:domain/YOUR-DOMAIN-NAME.COM"
}
]
}
Examples
To acquire a certificate for example.com:
certbot certonly \
--authenticator dns-alibabacloud \
--dns-alibabacloud-credentials ~/.secrets/certbot/alibabacloud.ini \
-d example.com
To acquire a single certificate for both example.com and www.example.com:
certbot certonly \
--authenticator dns-alibabacloud \
--dns-alibabacloud-credentials ~/.secrets/certbot/alibabacloud.ini \
-d example.com \
-d www.example.com
To acquire a certificate for example.com, waiting 60 seconds for DNS propagation:
certbot certonly \
--authenticator dns-alibabacloud \
--dns-alibabacloud-credentials ~/.secrets/certbot/alibabacloud.ini \
--dns-alibabacloud-propagation-seconds 60 \
-d example.com
Metadata
Release files for certbot-dns-alibabacloud 0.1.0b1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| certbot_dns_alibabacloud-0.1.0b1.tar.gz | 10.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| certbot_dns_alibabacloud-0.1.0b1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.7 kB
Release files / certbot_dns_alibabacloud-0.1.0b1.tar.gz
| Download URL | certbot_dns_alibabacloud-0.1.0b1.tar.gz |
|---|---|
| Size | 10.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
63e88782f4df4fdbbebc1d33d9c8918cabdb665e278466a597bf44b82dacb30e
|
|
BLAKE2b-256 checksum How to use checksums |
c3b6f09b63ed5aa874c7ee2afbc0b8ac254921cea473566f2831dfb748fa73f3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.5
|
Release files / certbot_dns_alibabacloud-0.1.0b1-py3-none-any.whl
| Download URL | certbot_dns_alibabacloud-0.1.0b1-py3-none-any.whl |
|---|---|
| Size | 9.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
ebfcc83244d6470509fe812e086096dfbe87d44bf2141072521cb99329792358
|
|
BLAKE2b-256 checksum How to use checksums |
cfa8a52b70b3df03ced77716f45cbbe9753485930414641b317f811f64b9e3c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.5
|