https://github.com/warjiang/certbot-dnshub
Certbot dns plugin to obtain certificates by multi dns provider.
https://github.com/warjiang/certbot-dnshub
Last synced: 5 months ago
JSON representation
Certbot dns plugin to obtain certificates by multi dns provider.
- Host: GitHub
- URL: https://github.com/warjiang/certbot-dnshub
- Owner: warjiang
- License: apache-2.0
- Created: 2023-11-26T07:56:14.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-12-09T16:49:52.000Z (over 2 years ago)
- Last Synced: 2026-01-04T21:57:32.911Z (5 months ago)
- Language: Python
- Size: 1.28 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Multi dns provider authentication plugin for certbot
[](https://github.com/warjiang/certbot-dnshub/actions/workflows/pypi.yml)
[](https://pypi.org/project/certbot-dnshub/)
[](https://pypi.org/project/certbot-dnshub/)
[](https://pypi.org/project/certbot-dnshub/)
[](https://pypi.org/project/certbot-dnshub/)
> English | [中文](README_zh-CN.md)
Multi dns provider authentication plugin for certbot. It can help you automatically apply and update Let's Encrypt wildcard certificates.
## PreRequisites
1. You already have a domain name, such as `example.com`.
2. The corresponding domain name service provider has provided openapi or sdk, such as dnspod, aliyun, tencent cloud, etc.
3. Get the configuration information(for example ak/sk or token) of openai or sdk
## Usage
you can use this plugin with docker or pip. We recommend using docker.
Take [dnspod](./assets/dnspod.md) as an example, first get the dnspod openapi configuration information, and then execute the following command:
1. Use docker container
```bash
docker pull certbot/certbot
docker run -it --rm --name certbot \
-v /etc/letsencrypt:/etc/letsencrypt \
-v /var/lib/letsencrypt:/var/lib/letsencrypt \
-v `pwd`/credentials.ini:/opt/certbot/credentials.ini \
--entrypoint /bin/sh certbot/certbot
pip install certbot-dnshub
chmod 600 /opt/certbot/credentials.ini
certbot certonly -a dnshub \
--dnshub-credentials /path/to/credentials.ini \
-d www.example.com
```
2. Use pip
```bash
python3 -m venv certbot
source certbot/bin/activate
pip install certbot certbot-dnshub
chmod 600 /path/to/credentials.ini
certbot certonly -a dnshub \
--dnshub-credentials /path/to/credentials.ini \
-d www.example.com
```
## Supported DNS providers
| Provider | Provider Document | Usage Document | Update Time |
|---------|---------------------------------------------------------------------|----------------------------|------------|
| dnspod | [dnspod Document](https://www.dnspod.cn/docs/index.html) | [Usage Document](./assets/dnspod.md) | 2023-11-26 |
| aliyun | [aliyun dns Document](https://help.aliyun.com/document_detail/29772.html) | [Usage Document](./assets/aliyun.md) | 2023-11-27 |
# FAQ
1. Unsafe permissions on credentials configuration file: /opt/certbot/credentials.ini

permission of credentials.ini invalid, you can change it to 600 manually
```bash
chmod 600 /path/to/credentials.ini
```
2.