Compare commits

..

24 Commits

Author SHA1 Message Date
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
LinuxServer-CI
0069f887a7 Bot Updating Package Versions 2022-05-26 07:25:29 +02:00
aptalca
623e99c6ab Merge pull request #234 from linuxserver/azure
fix azure dns
2022-05-18 09:48:23 -04:00
aptalca
996d3b26df fix azure dns 2022-05-18 09:32:44 -04:00
LinuxServer-CI
252d57cf34 Bot Updating Package Versions 2022-05-18 10:54:23 +02:00
LinuxServer-CI
4b486b547c Bot Updating Templated Files 2022-05-18 10:50:45 +02:00
Roxedus
ef95db397b Merge pull request #217 from RobinDadswell/azureDNSSupport 2022-05-18 01:49:25 -07:00
LinuxServer-CI
0bb1f55280 Bot Updating Package Versions 2022-05-12 07:29:01 +02:00
LinuxServer-CI
5df55cc0c0 Bot Updating Package Versions 2022-05-03 17:59:50 -05:00
LinuxServer-CI
ceabef087f Bot Updating Templated Files 2022-05-04 00:55:45 +02:00
LinuxServer-CI
6f9ed0721d Bot Updating Templated Files 2022-05-04 00:54:37 +02:00
LinuxServer-CI
5319c88dfa Bot Updating Package Versions 2022-04-28 00:43:35 -05:00
LinuxServer-CI
c875b69297 Bot Updating Package Versions 2022-04-21 00:41:17 -05:00
Robin Dadswell
3893db4077 New: Azure DNS support 2022-04-17 22:09:14 +01:00
LinuxServer-CI
f8e4eca8d0 Bot Updating Package Versions 2022-04-14 07:20:07 +02:00
9 changed files with 103 additions and 63 deletions

View File

@@ -101,6 +101,7 @@ RUN \
pip3 install -U --find-links https://wheel-index.linuxserver.io/alpine/ \
${CERTBOT} \
certbot-dns-aliyun \
certbot-dns-azure \
certbot-dns-cloudflare \
certbot-dns-cloudxns \
certbot-dns-cpanel \

View File

@@ -101,6 +101,7 @@ RUN \
pip3 install -U --find-links https://wheel-index.linuxserver.io/alpine/ \
${CERTBOT} \
certbot-dns-aliyun \
certbot-dns-azure \
certbot-dns-cloudflare \
certbot-dns-cloudxns \
certbot-dns-cpanel \

View File

@@ -101,6 +101,7 @@ RUN \
pip3 install -U --find-links https://wheel-index.linuxserver.io/alpine/ \
${CERTBOT} \
certbot-dns-aliyun \
certbot-dns-azure \
certbot-dns-cloudflare \
certbot-dns-cloudxns \
certbot-dns-cpanel \

8
Jenkinsfile vendored
View File

@@ -343,9 +343,11 @@ pipeline {
if [[ ("${BRANCH_NAME}" == "master") || ("${BRANCH_NAME}" == "main") ]] && [[ (! -f ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml) || ("$(md5sum ${TEMPDIR}/unraid/templates/unraid/${CONTAINER_NAME}.xml | awk '{ print $1 }')" != "$(md5sum ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml | awk '{ print $1 }')") ]]; then
cd ${TEMPDIR}/unraid/templates/
if grep -wq "${CONTAINER_NAME}" ${TEMPDIR}/unraid/templates/unraid/ignore.list; then
echo "Image is on the ignore list, removing Unraid template"
git rm unraid/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Removing Deprecated Unraid Template' || :
echo "Image is on the ignore list, marking Unraid template as deprecated"
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
git add -u unraid/${CONTAINER_NAME}.xml
git mv unraid/${CONTAINER_NAME}.xml unraid/deprecated/${CONTAINER_NAME}.xml || :
git commit -m 'Bot Moving Deprecated Unraid Template' || :
else
cp ${TEMPDIR}/docker-${CONTAINER_NAME}/.jenkins-external/${CONTAINER_NAME}.xml ${TEMPDIR}/unraid/templates/unraid/
git add unraid/${CONTAINER_NAME}.xml

View File

@@ -46,17 +46,17 @@ SWAG - Secure Web Application Gateway (formerly known as letsencrypt, no relatio
## Supported Architectures
Our images support multiple architectures such as `x86-64`, `arm64` and `armhf`. We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
We utilise the docker manifest for multi-platform awareness. More information is available from docker [here](https://github.com/docker/distribution/blob/master/docs/spec/manifest-v2-2.md#manifest-list) and our announcement [here](https://blog.linuxserver.io/2019/02/21/the-lsio-pipeline-project/).
Simply pulling `lscr.io/linuxserver/swag` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
Simply pulling `lscr.io/linuxserver/swag:latest` should retrieve the correct image for your arch, but you can also pull specific arch images via tags.
The architectures supported by this image are:
| Architecture | Tag |
| :----: | --- |
| x86-64 | amd64-latest |
| arm64 | arm64v8-latest |
| armhf | arm32v7-latest |
| Architecture | Available | Tag |
| :----: | :----: | ---- |
| x86-64 | ✅ | amd64-\<version tag\> |
| arm64 | ✅ | arm64v8-\<version tag\> |
| armhf| ✅ | arm32v7-\<version tag\> |
## Application Setup
@@ -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)
@@ -144,7 +144,7 @@ Here are some example snippets to help you get started creating a container.
version: "2.1"
services:
swag:
image: lscr.io/linuxserver/swag
image: lscr.io/linuxserver/swag:latest
container_name: swag
cap_add:
- NET_ADMIN
@@ -195,7 +195,7 @@ docker run -d \
-p 80:80 `#optional` \
-v /path/to/appdata/config:/config \
--restart unless-stopped \
lscr.io/linuxserver/swag
lscr.io/linuxserver/swag:latest
```
## Parameters
@@ -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`, `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`, `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). |
@@ -222,6 +222,10 @@ Container images are configured using parameters passed at runtime (such as thos
| `-e STAGING=false` | Set to `true` to retrieve certs in staging mode. Rate limits will be much higher, but the resulting cert will not pass the browser's security test. Only to be used for testing purposes. |
| `-v /config` | All the config files including the webroot reside here. |
### Portainer notice
This image utilises `cap_add` or `sysctl` to work properly. This is not implemented properly in some versions of Portainer, thus this image may not work if deployed through Portainer.
## Environment variables from files (Docker secrets)
You can set any environment variable from a file by using a special prepend `FILE__`.
@@ -265,7 +269,7 @@ We publish various [Docker Mods](https://github.com/linuxserver/docker-mods) to
* container version number
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' swag`
* image version number
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/swag`
* `docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/swag:latest`
## Updating Info
@@ -283,7 +287,7 @@ Below are the instructions for updating containers:
### Via Docker Run
* Update the image: `docker pull lscr.io/linuxserver/swag`
* Update the image: `docker pull lscr.io/linuxserver/swag:latest`
* Stop the running container: `docker stop swag`
* Delete the container: `docker rm swag`
* Recreate a new container with the same docker run parameters as instructed above (if mapped correctly to a host folder, your `/config` folder and settings will be preserved)
@@ -331,6 +335,7 @@ Once registered you can define the dockerfile to use with `-f Dockerfile.aarch64
## Versions
* **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.
* **28.03.22:** - created a logfile for fail2ban nginx-unauthorized in /etc/cont-init.d/50-config

View File

@@ -1,27 +1,27 @@
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
coreutils-8.32-r2
curl-7.79.1-r0
curl-7.79.1-r2
expat-2.4.7-r0
fail2ban-0.11.2-r0
freetype-2.10.4-r1
freetype-2.10.4-r3
gdbm-1.19-r0
git-2.32.0-r0
git-perl-2.32.0-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
gnupg-2.2.31-r1
gnutls-3.7.1-r0
icu-libs-67.1-r2
ip6tables-1.8.7-r1
@@ -34,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.1n-r0
libcurl-7.79.1-r0
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
@@ -58,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.7-r0
libproc-3.3.17-r0
libressl3.3-libcrypto-3.3.6-r0
libressl3.3-libssl-3.3.6-r0
@@ -68,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.1n-r0
libssl1.1-1.1.1q-r0
libstdc++-10.3.1_git20210424-r2
libtasn1-4.17.0-r0
libunistring-0.9.10-r1
@@ -79,52 +79,52 @@ libxau-1.0.9-r0
libxcb-1.14-r2
libxdmcp-1.1.3-r0
libxext-1.3.4-r0
libxml2-2.9.13-r0
libxml2-2.9.14-r0
libxpm-3.5.13-r0
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-r0
nginx-mod-devel-kit-1.20.2-r0
nginx-mod-http-brotli-1.20.2-r0
nginx-mod-http-dav-ext-1.20.2-r0
nginx-mod-http-echo-1.20.2-r0
nginx-mod-http-fancyindex-1.20.2-r0
nginx-mod-http-geoip2-1.20.2-r0
nginx-mod-http-headers-more-1.20.2-r0
nginx-mod-http-image-filter-1.20.2-r0
nginx-mod-http-nchan-1.20.2-r0
nginx-mod-http-perl-1.20.2-r0
nginx-mod-http-redis2-1.20.2-r0
nginx-mod-http-set-misc-1.20.2-r0
nginx-mod-http-upload-progress-1.20.2-r0
nginx-mod-http-xslt-filter-1.20.2-r0
nginx-mod-mail-1.20.2-r0
nginx-mod-rtmp-1.20.2-r0
nginx-mod-stream-1.20.2-r0
nginx-mod-stream-geoip2-1.20.2-r0
nginx-vim-1.20.2-r0
nginx-1.20.2-r1
nginx-mod-devel-kit-1.20.2-r1
nginx-mod-http-brotli-1.20.2-r1
nginx-mod-http-dav-ext-1.20.2-r1
nginx-mod-http-echo-1.20.2-r1
nginx-mod-http-fancyindex-1.20.2-r1
nginx-mod-http-geoip2-1.20.2-r1
nginx-mod-http-headers-more-1.20.2-r1
nginx-mod-http-image-filter-1.20.2-r1
nginx-mod-http-nchan-1.20.2-r1
nginx-mod-http-perl-1.20.2-r1
nginx-mod-http-redis2-1.20.2-r1
nginx-mod-http-set-misc-1.20.2-r1
nginx-mod-http-upload-progress-1.20.2-r1
nginx-mod-http-xslt-filter-1.20.2-r1
nginx-mod-mail-1.20.2-r1
nginx-mod-rtmp-1.20.2-r1
nginx-mod-stream-1.20.2-r1
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.1n-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.0-r0
perl-git-2.32.3-r0
php7-7.4.26-r0
php7-bcmath-7.4.26-r0
php7-bz2-7.4.26-r0
@@ -216,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-r0
xz-5.2.5-r1
xz-libs-5.2.5-r1
zlib-1.2.12-r0
zlib-1.2.12-r1
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`, `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`, `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: "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." }
- { date: "28.03.22:", desc: "created a logfile for fail2ban nginx-unauthorized in /etc/cont-init.d/50-config" }

View File

@@ -0,0 +1,26 @@
# Instructions: https://certbot-dns-azure.readthedocs.io/en/latest/
# Replace with your values
# dns_azure_environment can be one of the following: AzurePublicCloud, AzureUSGovernmentCloud, AzureChinaCloud, AzureGermanCloud
# Service Principal with Client Secret
dns_azure_sp_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5
dns_azure_sp_client_secret = E-xqXU83Y-jzTI6xe9fs2YC~mck3ZzUih9
dns_azure_tenant_id = ed1090f3-ab18-4b12-816c-599af8a88cf7
dns_azure_environment = "AzurePublicCloud"
dns_azure_zone1 = example.com:/subscriptions/c135abce-d87d-48df-936c-15596c6968a5/resourceGroups/dns1
# Service Prinicipal with Certificate
#dns_azure_sp_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5
#dns_azure_sp_certificate_path = /path/to/certificate.pem
#dns_azure_tenant_id = ed1090f3-ab18-4b12-816c-599af8a88cf7
#dns_azure_environment = "AzurePublicCloud"
#dns_azure_zone1 = example.com:/subscriptions/c135abce-d87d-48df-936c-15596c6968a5/resourceGroups/dns1
# Azure Managed Identity
#dns_azure_msi_client_id = 912ce44a-0156-4669-ae22-c16a17d34ca5
#dns_azure_zone1 = example.com:/subscriptions/c135abce-d87d-48df-936c-15596c6968a5/resourceGroups/dns1
# System Assigned Azure Managed Identity
#dns_azure_msi_system_assigned = true
#dns_azure_environment = "AzurePublicCloud"
#dns_azure_zone1 = example.com:/subscriptions/c135abce-d87d-48df-936c-15596c6968a5/resourceGroups/dns1

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|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|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
@@ -243,6 +243,9 @@ if [ "$VALIDATION" = "dns" ]; then
elif [[ "$DNSPLUGIN" =~ ^(directadmin)$ ]]; then
if [ -n "$PROPAGATION" ];then PROPAGATIONPARAM="--${DNSPLUGIN}-propagation-seconds ${PROPAGATION}"; fi
PREFCHAL="-a ${DNSPLUGIN} --${DNSPLUGIN}-credentials /config/dns-conf/${DNSPLUGIN}.ini ${PROPAGATIONPARAM}"
elif [[ "$DNSPLUGIN" =~ ^(azure)$ ]]; then
if [ -n "$PROPAGATION" ];then echo "Azure dns plugin does not support setting propagation time"; fi
PREFCHAL="-a dns-${DNSPLUGIN} --dns-${DNSPLUGIN}-credentials /config/dns-conf/${DNSPLUGIN}.ini"
else
if [ -n "$PROPAGATION" ];then PROPAGATIONPARAM="--dns-${DNSPLUGIN}-propagation-seconds ${PROPAGATION}"; fi
PREFCHAL="--dns-${DNSPLUGIN} --dns-${DNSPLUGIN}-credentials /config/dns-conf/${DNSPLUGIN}.ini ${PROPAGATIONPARAM}"