Compare commits

...

16 Commits

Author SHA1 Message Date
LinuxServer-CI
f23d9fbeff Bot Updating Package Versions 2022-08-18 00:38:25 -05:00
LinuxServer-CI
e6628f05c3 Bot Updating Templated Files 2022-08-12 16:23:18 -05:00
Adam
f8ee44ca8d Merge pull request #256 from coreyramirezgomez/ft/dynu_dns 2022-08-12 22:21:51 +01:00
LinuxServer-CI
a5d730d298 Bot Updating Package Versions 2022-08-11 07:21:22 +02:00
Corey Ramirez-Gomez
e22a083d7a Add Dynu DNS Support 2022-08-10 09:27:53 +00:00
LinuxServer-CI
a2371253a7 Bot Updating Package Versions 2022-08-04 00:32:43 -05:00
LinuxServer-CI
4864761b54 Bot Updating Package Versions 2022-07-21 07:32:51 +02:00
LinuxServer-CI
3d70935ecf Bot Updating Package Versions 2022-07-14 07:34:38 +02:00
LinuxServer-CI
e5b672e52b Bot Updating Package Versions 2022-07-08 12:46:30 +02:00
Eric Nemchik
1adf35b5df Merge pull request #246 from linuxserver/minor-readme-update
Minor readme update
2022-07-08 05:37:38 -05:00
Eric Nemchik
c279c173b3 Minor readme update 2022-07-07 21:01:12 -05:00
LinuxServer-CI
8ed7c7ee28 Bot Updating Package Versions 2022-07-06 23:02:12 +02:00
LinuxServer-CI
1f42c02a4a Bot Updating Package Versions 2022-06-23 00:25:18 -05:00
LinuxServer-CI
37b5af4856 Bot Updating Package Versions 2022-06-16 00:22:29 -05:00
LinuxServer-CI
016dc18007 Bot Updating Package Versions 2022-06-07 21:51:48 -05:00
LinuxServer-CI
dd034ef3c1 Bot Updating Package Versions 2022-06-02 07:35:33 +02:00
8 changed files with 39 additions and 28 deletions

View File

@@ -112,6 +112,7 @@ RUN \
certbot-dns-dnsmadeeasy \
certbot-dns-dnspod \
certbot-dns-domeneshop \
certbot-dns-dynu \
certbot-dns-google \
certbot-dns-he \
certbot-dns-hetzner \

View File

@@ -112,6 +112,7 @@ RUN \
certbot-dns-dnsmadeeasy \
certbot-dns-dnspod \
certbot-dns-domeneshop \
certbot-dns-dynu \
certbot-dns-google \
certbot-dns-he \
certbot-dns-hetzner \

View File

@@ -112,6 +112,7 @@ RUN \
certbot-dns-dnsmadeeasy \
certbot-dns-dnspod \
certbot-dns-domeneshop \
certbot-dns-dynu \
certbot-dns-google \
certbot-dns-he \
certbot-dns-hetzner \

View File

@@ -94,8 +94,8 @@ This will *ask* Google et al not to index and list your site. Be careful with th
* This container includes auto-generated pfx and private-fullchain-bundle pem certs that are needed by other apps like Emby and Znc.
* To use these certs in other containers, do either of the following:
1. *(Easier)* Mount the container's config folder in other containers (ie. `-v /path-to-le-config:/le-ssl`) and in the other containers, use the cert location `/le-ssl/keys/letsencrypt/`
2. *(More secure)* Mount the SWAG folder `etc` that resides under `/config` in other containers (ie. `-v /path-to-le-config/etc:/le-ssl`) and in the other containers, use the cert location `/le-ssl/letsencrypt/live/<your.domain.url>/` (This is more secure because the first method shares the entire SWAG config folder with other containers, including the www files, whereas the second method only shares the ssl certs)
1. *(Easier)* Mount the container's config folder in other containers (ie. `-v /path-to-swag-config:/swag-ssl`) and in the other containers, use the cert location `/swag-ssl/keys/letsencrypt/`
2. *(More secure)* Mount the SWAG folder `etc` that resides under `/config` in other containers (ie. `-v /path-to-swag-config/etc:/swag-ssl`) and in the other containers, use the cert location `/swag-ssl/letsencrypt/live/<your.domain.url>/` (This is more secure because the first method shares the entire SWAG config folder with other containers, including the www files, whereas the second method only shares the ssl certs)
* These certs include:
1. `cert.pem`, `chain.pem`, `fullchain.pem` and `privkey.pem`, which are generated by Certbot and used by nginx and various other apps
2. `privkey.pfx`, a format supported by Microsoft and commonly used by dotnet apps such as Emby Server (no password)
@@ -213,7 +213,7 @@ Container images are configured using parameters passed at runtime (such as thos
| `-e VALIDATION=http` | Certbot validation method to use, options are `http`, `dns` or `duckdns` (`dns` method also requires `DNSPLUGIN` variable set) (`duckdns` method requires `DUCKDNSTOKEN` variable set, and the `SUBDOMAINS` variable must be either empty or set to `wildcard`). |
| `-e SUBDOMAINS=www,` | Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this _exactly_ to `wildcard` (wildcard cert is available via `dns` and `duckdns` validation only) |
| `-e CERTPROVIDER=` | Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt. |
| `-e DNSPLUGIN=cloudflare` | Required if `VALIDATION` is set to `dns`. Options are `aliyun`, `azure`, `cloudflare`, `cloudxns`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `domeneshop`, `gandi`, `gehirn`, `google`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `netcup`, `njalla`, `nsone`, `ovh`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip` and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. |
| `-e DNSPLUGIN=cloudflare` | Required if `VALIDATION` is set to `dns`. Options are `aliyun`, `azure`, `cloudflare`, `cloudxns`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `domeneshop`, `dynu`, `gandi`, `gehirn`, `google`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `netcup`, `njalla`, `nsone`, `ovh`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip` and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`. |
| `-e PROPAGATION=` | Optionally override (in seconds) the default propagation time for the dns plugins. |
| `-e DUCKDNSTOKEN=` | Required if `VALIDATION` is set to `duckdns`. Retrieve your token from https://www.duckdns.org |
| `-e EMAIL=` | Optional e-mail address used for cert expiration notifications (Required for ZeroSSL). |
@@ -335,6 +335,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **10.08.22:** - Added support for Dynu DNS validation.
* **18.05.22:** - Added support for Azure DNS validation.
* **09.04.22:** - Added certbot-dns-loopia for DNS01 validation.
* **05.04.22:** - Added support for standalone DNS validation.

View File

@@ -1,27 +1,28 @@
alpine-baselayout-3.2.0-r16
alpine-keys-2.4-r0
apache2-utils-2.4.53-r0
apache2-utils-2.4.54-r0
apk-tools-2.12.7-r0
apr-1.7.0-r0
apr-1.7.0-r1
apr-util-1.6.1-r7
argon2-libs-20190702-r1
bash-5.1.16-r0
brotli-libs-1.0.9-r5
busybox-1.33.1-r7
busybox-1.33.1-r8
c-client-2007f-r11
ca-certificates-20211220-r0
ca-certificates-bundle-20211220-r0
ca-certificates-20220614-r0
ca-certificates-bundle-20220614-r0
coreutils-8.32-r2
curl-7.79.1-r1
curl-7.79.1-r2
expat-2.4.7-r0
fail2ban-0.11.2-r0
freetype-2.10.4-r3
gdbm-1.19-r0
git-2.32.1-r0
git-2.32.3-r0
git-perl-2.32.3-r0
glib-2.68.3-r0
gmp-6.2.1-r1
gnupg-2.2.31-r0
gnutls-3.7.1-r0
gnupg-2.2.31-r1
gnutls-3.7.1-r1
icu-libs-67.1-r2
ip6tables-1.8.7-r1
iptables-1.8.7-r1
@@ -33,8 +34,8 @@ libbsd-0.11.3-r0
libbz2-1.0.8-r1
libc-utils-0.7.2-r3
libcap-2.50-r0
libcrypto1.1-1.1.1o-r0
libcurl-7.79.1-r1
libcrypto1.1-1.1.1q-r0
libcurl-7.79.1-r2
libedit-20210216.3.1-r0
libevent-2.1.12-r2
libffi-3.3-r2
@@ -57,7 +58,7 @@ libmnl-1.0.4-r1
libmount-2.37.4-r0
libnftnl-libs-1.2.0-r0
libpng-1.6.37-r1
libpq-13.6-r0
libpq-13.8-r0
libproc-3.3.17-r0
libressl3.3-libcrypto-3.3.6-r0
libressl3.3-libssl-3.3.6-r0
@@ -67,7 +68,7 @@ libseccomp-2.5.1-r2
libsecret-0.20.4-r1
libsm-1.2.3-r0
libsodium-1.0.18-r0
libssl1.1-1.1.1o-r0
libssl1.1-1.1.1q-r0
libstdc++-10.3.1_git20210424-r2
libtasn1-4.17.0-r0
libunistring-0.9.10-r1
@@ -84,15 +85,15 @@ libxslt-1.1.35-r0
libxt-1.2.1-r0
libzip-1.7.3-r2
linux-pam-1.5.1-r1
logrotate-3.18.1-r1
logrotate-3.18.1-r3
lz4-libs-1.9.3-r1
memcached-1.6.9-r0
mpdecimal-2.5.1-r1
musl-1.2.2-r3
musl-utils-1.2.2-r3
nano-5.7-r2
ncurses-libs-6.2_p20210612-r0
ncurses-terminfo-base-6.2_p20210612-r0
ncurses-libs-6.2_p20210612-r1
ncurses-terminfo-base-6.2_p20210612-r1
nettle-3.7.3-r0
nghttp2-libs-1.43.0-r0
nginx-1.20.2-r1
@@ -117,11 +118,13 @@ nginx-mod-stream-geoip2-1.20.2-r1
nginx-vim-1.20.2-r1
npth-1.6-r0
oniguruma-6.9.7.1-r0
openssl-1.1.1o-r0
openssl-1.1.1q-r0
p11-kit-0.23.22-r0
pcre-8.44-r0
pcre2-10.36-r0
pcre2-10.36-r1
perl-5.32.1-r0
perl-error-0.17029-r1
perl-git-2.32.3-r0
php7-7.4.26-r0
php7-bcmath-7.4.26-r0
php7-bz2-7.4.26-r0
@@ -213,12 +216,12 @@ scanelf-1.3.2-r0
shadow-4.8.1-r0
skalibs-2.10.0.3-r0
sqlite-libs-3.35.5-r0
ssl_client-1.33.1-r7
ssl_client-1.33.1-r8
tzdata-2022a-r0
unixodbc-2.3.9-r1
utmps-0.1.0.2-r0
whois-5.5.10-r0
xz-5.2.5-r1
xz-libs-5.2.5-r1
zlib-1.2.12-r1
zlib-1.2.12-r3
zstd-libs-1.4.9-r1

View File

@@ -51,7 +51,7 @@ opt_param_usage_include_env: true
opt_param_env_vars:
- { env_var: "SUBDOMAINS", env_value: "www,", desc: "Subdomains you'd like the cert to cover (comma separated, no spaces) ie. `www,ftp,cloud`. For a wildcard cert, set this _exactly_ to `wildcard` (wildcard cert is available via `dns` and `duckdns` validation only)" }
- { env_var: "CERTPROVIDER", env_value: "", desc: "Optionally define the cert provider. Set to `zerossl` for ZeroSSL certs (requires existing [ZeroSSL account](https://app.zerossl.com/signup) and the e-mail address entered in `EMAIL` env var). Otherwise defaults to Let's Encrypt." }
- { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `aliyun`, `azure`, `cloudflare`, `cloudxns`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `domeneshop`, `gandi`, `gehirn`, `google`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `netcup`, `njalla`, `nsone`, `ovh`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip` and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." }
- { env_var: "DNSPLUGIN", env_value: "cloudflare", desc: "Required if `VALIDATION` is set to `dns`. Options are `aliyun`, `azure`, `cloudflare`, `cloudxns`, `cpanel`, `desec`, `digitalocean`, `directadmin`, `dnsimple`, `dnsmadeeasy`, `dnspod`, `domeneshop`, `dynu`, `gandi`, `gehirn`, `google`, `he`, `hetzner`, `infomaniak`, `inwx`, `ionos`, `linode`, `loopia`, `luadns`, `netcup`, `njalla`, `nsone`, `ovh`, `rfc2136`, `route53`, `sakuracloud`, `standalone`, `transip` and `vultr`. Also need to enter the credentials into the corresponding ini (or json for some plugins) file under `/config/dns-conf`." }
- { env_var: "PROPAGATION", env_value: "", desc: "Optionally override (in seconds) the default propagation time for the dns plugins." }
- { env_var: "DUCKDNSTOKEN", env_value: "", desc: "Required if `VALIDATION` is set to `duckdns`. Retrieve your token from https://www.duckdns.org" }
- { env_var: "EMAIL", env_value: "", desc: "Optional e-mail address used for cert expiration notifications (Required for ZeroSSL)." }
@@ -111,8 +111,8 @@ app_setup_block: |
* This container includes auto-generated pfx and private-fullchain-bundle pem certs that are needed by other apps like Emby and Znc.
* To use these certs in other containers, do either of the following:
1. *(Easier)* Mount the container's config folder in other containers (ie. `-v /path-to-le-config:/le-ssl`) and in the other containers, use the cert location `/le-ssl/keys/letsencrypt/`
2. *(More secure)* Mount the SWAG folder `etc` that resides under `/config` in other containers (ie. `-v /path-to-le-config/etc:/le-ssl`) and in the other containers, use the cert location `/le-ssl/letsencrypt/live/<your.domain.url>/` (This is more secure because the first method shares the entire SWAG config folder with other containers, including the www files, whereas the second method only shares the ssl certs)
1. *(Easier)* Mount the container's config folder in other containers (ie. `-v /path-to-swag-config:/swag-ssl`) and in the other containers, use the cert location `/swag-ssl/keys/letsencrypt/`
2. *(More secure)* Mount the SWAG folder `etc` that resides under `/config` in other containers (ie. `-v /path-to-swag-config/etc:/swag-ssl`) and in the other containers, use the cert location `/swag-ssl/letsencrypt/live/<your.domain.url>/` (This is more secure because the first method shares the entire SWAG config folder with other containers, including the www files, whereas the second method only shares the ssl certs)
* These certs include:
1. `cert.pem`, `chain.pem`, `fullchain.pem` and `privkey.pem`, which are generated by Certbot and used by nginx and various other apps
2. `privkey.pfx`, a format supported by Microsoft and commonly used by dotnet apps such as Emby Server (no password)
@@ -155,6 +155,7 @@ app_setup_nginx_reverse_proxy_block: ""
# changelog
changelogs:
- { date: "10.08.22:", desc: "Added support for Dynu DNS validation." }
- { date: "18.05.22:", desc: "Added support for Azure DNS validation." }
- { date: "09.04.22:", desc: "Added certbot-dns-loopia for DNS01 validation." }
- { date: "05.04.22:", desc: "Added support for standalone DNS validation." }

View File

@@ -0,0 +1,3 @@
# Instructions: https://github.com/bikram990/certbot-dns-dynu#configuration
# Replace with your API token from your dynu account.
dns_dynu_auth_token = AbCbASsd!@34

View File

@@ -120,7 +120,7 @@ if ! grep -q 'PARAMETERS' "/config/nginx/dhparams.pem"; then
fi
# check to make sure DNSPLUGIN is selected if dns validation is used
[[ "$VALIDATION" = "dns" ]] && [[ ! "$DNSPLUGIN" =~ ^(aliyun|azure|cloudflare|cloudxns|cpanel|desec|digitalocean|directadmin|dnsimple|dnsmadeeasy|dnspod|domeneshop|gandi|gehirn|google|he|hetzner|infomaniak|inwx|ionos|linode|loopia|luadns|netcup|njalla|nsone|ovh|rfc2136|route53|sakuracloud|standalone|transip|vultr)$ ]] && \
[[ "$VALIDATION" = "dns" ]] && [[ ! "$DNSPLUGIN" =~ ^(aliyun|azure|cloudflare|cloudxns|cpanel|desec|digitalocean|directadmin|dnsimple|dnsmadeeasy|dnspod|domeneshop|dynu|gandi|gehirn|google|he|hetzner|infomaniak|inwx|ionos|linode|loopia|luadns|netcup|njalla|nsone|ovh|rfc2136|route53|sakuracloud|standalone|transip|vultr)$ ]] && \
echo "Please set the DNSPLUGIN variable to a valid plugin name. See docker info for more details." && \
sleep infinity
@@ -234,7 +234,7 @@ if [ "$VALIDATION" = "dns" ]; then
elif [[ "$DNSPLUGIN" =~ ^(google)$ ]]; then
if [ -n "$PROPAGATION" ];then PROPAGATIONPARAM="--dns-${DNSPLUGIN}-propagation-seconds ${PROPAGATION}"; fi
PREFCHAL="--dns-${DNSPLUGIN} --dns-${DNSPLUGIN}-credentials /config/dns-conf/${DNSPLUGIN}.json ${PROPAGATIONPARAM}"
elif [[ "$DNSPLUGIN" =~ ^(aliyun|desec|dnspod|domeneshop|he|hetzner|infomaniak|inwx|ionos|loopia|netcup|njalla|transip|vultr)$ ]]; then
elif [[ "$DNSPLUGIN" =~ ^(aliyun|desec|dnspod|domeneshop|dynu|he|hetzner|infomaniak|inwx|ionos|loopia|netcup|njalla|transip|vultr)$ ]]; then
if [ -n "$PROPAGATION" ];then PROPAGATIONPARAM="--dns-${DNSPLUGIN}-propagation-seconds ${PROPAGATION}"; fi
PREFCHAL="-a dns-${DNSPLUGIN} --dns-${DNSPLUGIN}-credentials /config/dns-conf/${DNSPLUGIN}.ini ${PROPAGATIONPARAM}"
elif [[ "$DNSPLUGIN" =~ ^(standalone)$ ]]; then