Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

letsencrypt: Added support for Simply.com DNS challenge. #3717

Merged
merged 15 commits into from
Aug 16, 2024
4 changes: 4 additions & 0 deletions letsencrypt/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Changelog

## 5.1.1

- Add Simply DNS support
agners marked this conversation as resolved.
Show resolved Hide resolved

## 5.1.0

- Add external account binding support
Expand Down
26 changes: 26 additions & 0 deletions letsencrypt/DOCS.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ dns-linode
dns-luadns
dns-njalla
dns-noris
dns-simply
dns-nsone
dns-ovh
dns-rfc2136
Expand Down Expand Up @@ -151,6 +152,8 @@ domainoffensive_token: ''
plesk_username: ''
plesk_password: ''
plesk_api_url: ''
simply_account_name: ''
simply_api_key: ''
```
</details>

Expand Down Expand Up @@ -996,6 +999,28 @@ You can define the `propagation_seconds` explicitly. Otherwise, it will use a cu
</details>


<details>
<summary>Simply.com DNS challenge</summary>

```yaml
email: your.email@example.com
domains:
- your.domain.tld
certfile: fullchain.pem
keyfile: privkey.pem
challenge: dns
dns:
provider: dns-simply
simply_account_name: Sxxxxxx
simply_api_key: YOUR_API_KEY # Replace 'YOUR_API_KEY' with your actual Simply.com API key.
```

The `simply_account_name` refers to the Simply.com account number (Sxxxxxx), and the `simply_api_key` is the account's API key.
The API key assigned to your Simply.com account can be found in your Simply.com Control panel.

</details>


## Certificate files

The certificate files will be available within the "ssl" share after successful request of the certificates.
Expand Down Expand Up @@ -1026,6 +1051,7 @@ dns-luadns
dns-njalla
dns-noris
dns-plesk
dns-simply
dns-nsone
dns-ovh
dns-rfc2136
Expand Down
2 changes: 2 additions & 0 deletions letsencrypt/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ ARG \
CERTBOT_DNS_JOKER_VERSION \
CERTBOT_DNS_NAMECHEAP_VERSION \
CERTBOT_DNS_NORISNETWORK_VERSION \
CERTBOT_DNS_SIMPLY_VERSION \
CERTBOT_DNS_TRANSIP_VERSION \
CERTBOT_DNS_PORKBUN_VERSION \
CERTBOT_DNS_WEBSUPPORT_VERSION \
Expand Down Expand Up @@ -77,6 +78,7 @@ RUN \
certbot-dns-route53==${CERTBOT_VERSION} \
certbot-dns-sakuracloud==${CERTBOT_VERSION} \
certbot-dns-namecheap==${CERTBOT_DNS_NAMECHEAP_VERSION} \
certbot-dns-simply==${CERTBOT_DNS_SIMPLY_VERSION} \
certbot-dns-netcup==${CERTBOT_NETCUP_VERSION} \
certbot-plugin-gandi==${CERTBOT_GANDI_VERSION} \
certbot-dns-transip==${CERTBOT_DNS_TRANSIP_VERSION} \
Expand Down
1 change: 1 addition & 0 deletions letsencrypt/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ args:
CERTBOT_DNS_TRANSIP_VERSION: 0.5.2
CERTBOT_DNS_PORKBUN_VERSION: 0.8.0
CERTBOT_DNS_WEBSUPPORT_VERSION: 2.0.1
CERTBOT_DNS_SIMPLY_VERSION: 0.1.0
CERTBOT_GANDI_VERSION: 1.5.0
CERTBOT_NETCUP_VERSION: 1.4.3
CERTBOT_NJALLA_VERSION: 1.0.0
Expand Down
6 changes: 4 additions & 2 deletions letsencrypt/config.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
version: 5.1.0
version: 5.1.1
slug: letsencrypt
name: Let's Encrypt
description: Manage certificate from Let's Encrypt
Expand Down Expand Up @@ -85,6 +85,8 @@ schema:
netcup_api_key: str?
netcup_api_password: str?
netcup_customer_id: str?
simply_api_key: str?
simply_account_name: str?
njalla_token: str?
noris_token: str?
nsone_api_key: str?
Expand All @@ -100,7 +102,7 @@ schema:
dns-duckdns|dns-dynu|dns-gehirn|dns-google|dns-google-domains|\
dns-hetzner|dns-infomaniak|dns-joker|dns-linode|dns-luadns|dns-njalla|dns-nsone|\
dns-porkbun|dns-ovh|dns-rfc2136|dns-route53|dns-sakuracloud|\
dns-namecheap|dns-netcup|dns-gandi|dns-transip|dns-inwx|dns-dreamhost|\
dns-namecheap|dns-netcup|dns-simply|dns-gandi|dns-transip|dns-inwx|dns-dreamhost|\
dns-he|dns-easydns|dns-domainoffensive|dns-websupport|dns-noris|dns-plesk)?"
rfc2136_algorithm: str?
rfc2136_name: str?
Expand Down
2 changes: 2 additions & 0 deletions letsencrypt/rootfs/etc/cont-init.d/file-structure.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ echo -e "dns_desec_token = $(bashio::config 'dns.desec_token')\n" \
"dns_netcup_customer_id = $(bashio::config 'dns.netcup_customer_id')\n" \
"dns_netcup_api_key = $(bashio::config 'dns.netcup_api_key')\n" \
"dns_netcup_api_password = $(bashio::config 'dns.netcup_api_password')\n" \
"dns_simply_account_name = $(bashio::config 'dns.simply_account_name')\n" \
"dns_simply_api_key = $(bashio::config 'dns.simply_api_key')\n" \
"dns_njalla_token = $(bashio::config 'dns.njalla_token')\n" \
"dns_noris_token = $(bashio::config 'dns.noris_token')\n" \
"dns_nsone_api_key = $(bashio::config 'dns.nsone_api_key')\n" \
Expand Down
6 changes: 6 additions & 0 deletions letsencrypt/rootfs/etc/services.d/lets-encrypt/run
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,12 @@ elif [ "${CHALLENGE}" == "dns" ] && [ "${DNS_PROVIDER}" == "dns-netcup" ]; then
bashio::config.require 'dns.netcup_api_password'
PROVIDER_ARGUMENTS+=("--authenticator" "${DNS_PROVIDER}" "--${DNS_PROVIDER}-credentials" "/data/dnsapikey" "--${DNS_PROVIDER}-propagation-seconds" "${PROPAGATION_SECONDS}")

#Simply
elif [ "${CHALLENGE}" == "dns" ] && [ "${DNS_PROVIDER}" == "dns-simply" ]; then
bashio::config.require 'dns.simply_account_name'
bashio::config.require 'dns.simply_api_key'
PROVIDER_ARGUMENTS+=("--authenticator" "${DNS_PROVIDER}" "--${DNS_PROVIDER}-credentials" "/data/dnsapikey" "--${DNS_PROVIDER}-propagation-seconds" "${PROPAGATION_SECONDS}")

#TransIP
elif [ "${CHALLENGE}" == "dns" ] && [ "${DNS_PROVIDER}" == "dns-transip" ]; then
bashio::config.require.username 'dns.transip_username'
Expand Down