diff --git a/.version b/.version index 23ae1b5..1020118 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -2.9.6 +2.9.7 diff --git a/README.md b/README.md index dd8a6c7..92e59f7 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@



- + @@ -458,6 +458,18 @@ Special thanks to the following contributors:
Fuechslein + + + +
Amir Zarrinkafsh +
+ + + + +
gabbe +
+ diff --git a/backend/internal/certificate.js b/backend/internal/certificate.js index 96972fe..661950d 100644 --- a/backend/internal/certificate.js +++ b/backend/internal/certificate.js @@ -758,6 +758,7 @@ const internalCertificate = { }, /** + * Request a certificate using the http challenge * @param {Object} certificate the certificate row * @returns {Promise} */ @@ -768,6 +769,7 @@ const internalCertificate = { '--config "' + letsencryptConfig + '" ' + '--cert-name "npm-' + certificate.id + '" ' + '--agree-tos ' + + '--authenticator webroot ' + '--email "' + certificate.meta.letsencrypt_email + '" ' + '--preferred-challenges "dns,http" ' + '--domains "' + certificate.domain_names.join(',') + '" ' + diff --git a/backend/templates/_location.conf b/backend/templates/_location.conf index 5a7a6ab..7d70700 100644 --- a/backend/templates/_location.conf +++ b/backend/templates/_location.conf @@ -1,10 +1,11 @@ location {{ path }} { + set $upstream {{ forward_scheme }}://{{ forward_host }}:{{ forward_port }}{{ forward_path }}; proxy_set_header Host $host; proxy_set_header X-Forwarded-Scheme $scheme; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Real-IP $remote_addr; - proxy_pass {{ forward_scheme }}://{{ forward_host }}:{{ forward_port }}{{ forward_path }}; + proxy_pass $upstream; {% if access_list_id > 0 %} {% if access_list.items.length > 0 %} diff --git a/backend/templates/default.conf b/backend/templates/default.conf index 7eef11f..5196f28 100644 --- a/backend/templates/default.conf +++ b/backend/templates/default.conf @@ -16,6 +16,8 @@ server { error_log /data/logs/default-host_error.log warn; {% include "_exploits.conf" %} + include conf.d/include/letsencrypt-acme-challenge.conf; + {%- if value == "404" %} location / { return 404; diff --git a/backend/yarn.lock b/backend/yarn.lock index 84180c2..71e6676 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -3351,9 +3351,9 @@ table@^5.2.3: string-width "^3.0.0" tar@^4, tar@^4.4.2: - version "4.4.13" - resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.13.tgz#43b364bc52888d555298637b10d60790254ab525" - integrity sha512-w2VwSrBoHa5BsSyH+KxEqeQBAllHhccyMFVHtGtdMpF4W7IRWfZjFiQceJPChOeTsSDVUpER2T8FA93pr0L+QA== + version "4.4.15" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.15.tgz#3caced4f39ebd46ddda4d6203d48493a919697f8" + integrity sha512-ItbufpujXkry7bHH9NpQyTXPbJ72iTlXgkBAYsAjDXk3Ds8t/3NfO5P4xZGy7u+sYuQUbimgzswX4uQIEeNVOA== dependencies: chownr "^1.1.1" fs-minipass "^1.2.5" diff --git a/docker/rootfs/etc/letsencrypt.ini b/docker/rootfs/etc/letsencrypt.ini index 4949da0..ccb2f0b 100644 --- a/docker/rootfs/etc/letsencrypt.ini +++ b/docker/rootfs/etc/letsencrypt.ini @@ -1,6 +1,5 @@ text = True non-interactive = True -authenticator = webroot webroot-path = /data/letsencrypt-acme-challenge key-type = ecdsa elliptic-curve = secp384r1 diff --git a/docker/rootfs/etc/nginx/conf.d/default.conf b/docker/rootfs/etc/nginx/conf.d/default.conf index a763498..81d6ae4 100644 --- a/docker/rootfs/etc/nginx/conf.d/default.conf +++ b/docker/rootfs/etc/nginx/conf.d/default.conf @@ -9,9 +9,10 @@ server { server_name localhost-nginx-proxy-manager; access_log /data/logs/fallback_access.log standard; - error_log /dev/null crit; + error_log /data/logs/fallback_error.log warn; include conf.d/include/assets.conf; include conf.d/include/block-exploits.conf; + include conf.d/include/letsencrypt-acme-challenge.conf; location / { index index.html; diff --git a/docs/yarn.lock b/docs/yarn.lock index df7550e..90394e1 100644 --- a/docs/yarn.lock +++ b/docs/yarn.lock @@ -6405,10 +6405,10 @@ minipass@^3.0.0, minipass@^3.1.1: dependencies: yallist "^4.0.0" -minizlib@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.0.tgz#fd52c645301ef09a63a2c209697c294c6ce02cf3" - integrity sha512-EzTZN/fjSvifSX0SlqUERCN39o6T40AMarPbv0MrarSFtIITCBh7bi+dU8nxGFHuqs9jdIAeoYoKuQAAASsPPA== +minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== dependencies: minipass "^3.0.0" yallist "^4.0.0" @@ -9156,14 +9156,14 @@ tapable@^1.0.0, tapable@^1.1.3: integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA== tar@^6.0.2: - version "6.0.2" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.2.tgz#5df17813468a6264ff14f766886c622b84ae2f39" - integrity sha512-Glo3jkRtPcvpDlAs/0+hozav78yoXKFr+c4wgw62NNMO3oo4AaJdCo21Uu7lcwr55h39W2XD1LMERc64wtbItg== + version "6.1.6" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.6.tgz#c23d797b0a1efe5d479b1490805c5443f3560c5d" + integrity sha512-oaWyu5dQbHaYcyZCTfyPpC+VmI62/OM2RTUYavTk1MDr1cwW5Boi3baeYQKiZbY2uSQJGr+iMOzb/JFxLrft+g== dependencies: chownr "^2.0.0" fs-minipass "^2.0.0" minipass "^3.0.0" - minizlib "^2.1.0" + minizlib "^2.1.1" mkdirp "^1.0.3" yallist "^4.0.0" diff --git a/global/certbot-dns-plugins.js b/global/certbot-dns-plugins.js index 70f45ab..3caaf14 100644 --- a/global/certbot-dns-plugins.js +++ b/global/certbot-dns-plugins.js @@ -314,6 +314,16 @@ dns_linode_version = [|3|4]`, full_plugin_name: 'dns-linode', }, //####################################################// + loopia: { + display_name: 'Loopia', + package_name: 'certbot-dns-loopia', + package_version: '1.0.0', + dependencies: '', + credentials: `dns_loopia_user = user@loopiaapi +dns_loopia_password = abcdef0123456789abcdef01234567abcdef0123`, + full_plugin_name: 'dns-loopia', + }, + //####################################################// luadns: { display_name: 'LuaDNS', package_name: 'certbot-dns-luadns',