mirror of
				https://github.com/linuxserver/docker-swag.git
				synced 2025-10-31 13:07:44 +09:00 
			
		
		
		
	| @@ -0,0 +1,2 @@ | ||||
| # min   hour    day     month   weekday command | ||||
| 8       2       *       *       *       /app/le-renew.sh >> /config/log/letsencrypt/letsencrypt.log 2>&1 | ||||
|   | ||||
| @@ -1,9 +0,0 @@ | ||||
| # do daily/weekly/monthly maintenance | ||||
| # min   hour    day     month   weekday command | ||||
| */15    *       *       *       *       run-parts /etc/periodic/15min | ||||
| 0       *       *       *       *       run-parts /etc/periodic/hourly | ||||
| 0       2       *       *       *       run-parts /etc/periodic/daily | ||||
| 0       3       *       *       6       run-parts /etc/periodic/weekly | ||||
| 0       5       1       *       *       run-parts /etc/periodic/monthly | ||||
| # renew letsencrypt certs | ||||
| 8       2       *       *       *       /app/le-renew.sh >> /config/log/letsencrypt/letsencrypt.log 2>&1 | ||||
| @@ -31,6 +31,12 @@ if [[ "${VALIDATION}" = "dns" ]] && ! echo "${CERTBOT_DNS_AUTHENTICATORS}" | gre | ||||
|     sleep infinity | ||||
| fi | ||||
|  | ||||
| # set owner of certbot's CONFIG_DIR, WORK_DIR, and LOGS_DIR to abc | ||||
| lsiown -R abc:abc \ | ||||
|     /etc/letsencrypt \ | ||||
|     /var/lib/letsencrypt \ | ||||
|     /var/log/letsencrypt | ||||
|  | ||||
| # set_ini_value logic: | ||||
| # - if the name is not found in the file, append the name=value to the end of the file | ||||
| # - if the name is found in the file, replace the value | ||||
| @@ -46,6 +52,7 @@ function set_ini_value() { | ||||
|  | ||||
| # ensure config files exist and has at least one value set (set_ini_value does not work on empty files) | ||||
| touch /config/etc/letsencrypt/cli.ini | ||||
| lsiown abc:abc /config/etc/letsencrypt/cli.ini | ||||
| grep -qF 'agree-tos' /config/etc/letsencrypt/cli.ini || echo 'agree-tos=true' >>/config/etc/letsencrypt/cli.ini | ||||
|  | ||||
| # copy dns default configs | ||||
| @@ -192,9 +199,9 @@ if [[ ! "${URL}" = "${ORIGURL}" ]] || | ||||
|         REV_ACMESERVER=("https://acme-v02.api.letsencrypt.org/directory") | ||||
|     fi | ||||
|     if [[ -f /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem ]]; then | ||||
|         certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true | ||||
|         s6-setuidgid abc certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true | ||||
|     else | ||||
|         certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true | ||||
|         s6-setuidgid abc certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true | ||||
|     fi | ||||
|     rm -rf /config/etc/letsencrypt/{accounts,archive,live,renewal} | ||||
| fi | ||||
| @@ -207,9 +214,9 @@ if [[ -f "/config/keys/letsencrypt/chain.pem" ]] && { [[ "${CERTPROVIDER}" == "l | ||||
|     echo "The cert seems to be using the old LE root cert, which is no longer valid. Deleting and revoking." | ||||
|     REV_ACMESERVER=("https://acme-v02.api.letsencrypt.org/directory") | ||||
|     if [[ -f /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem ]]; then | ||||
|         certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true | ||||
|         s6-setuidgid abc certbot revoke --non-interactive --cert-path /config/etc/letsencrypt/live/"${ORIGDOMAIN}"/fullchain.pem --server "${REV_ACMESERVER[@]}" || true | ||||
|     else | ||||
|         certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true | ||||
|         s6-setuidgid abc certbot revoke --non-interactive --cert-name "${ORIGDOMAIN}" --server "${REV_ACMESERVER[@]}" || true | ||||
|     fi | ||||
|     rm -rf /config/etc/letsencrypt/{accounts,archive,live,renewal} | ||||
| fi | ||||
| @@ -342,7 +349,7 @@ if [[ ! -f "/config/keys/letsencrypt/fullchain.pem" ]]; then | ||||
|         set_ini_value "eab-hmac-key" "${ZEROSSL_EAB_HMAC_KEY}" /config/etc/letsencrypt/cli.ini | ||||
|     fi | ||||
|     echo "Generating new certificate" | ||||
|     certbot certonly --non-interactive --renew-by-default | ||||
|     s6-setuidgid abc certbot certonly --non-interactive --renew-by-default | ||||
|     if [[ ! -d /config/keys/letsencrypt ]]; then | ||||
|         if [[ "${VALIDATION}" = "dns" ]]; then | ||||
|             echo "ERROR: Cert does not exist! Please see the validation error above. Make sure you entered correct credentials into the ${DNSCREDENTIALFILE} file." | ||||
|   | ||||
| @@ -1,38 +0,0 @@ | ||||
| #!/usr/bin/with-contenv bash | ||||
| # shellcheck shell=bash | ||||
|  | ||||
| # make folders | ||||
| mkdir -p \ | ||||
|     /config/crontabs | ||||
|  | ||||
| ## root | ||||
| # if crontabs do not exist in config | ||||
| if [[ ! -f /config/crontabs/root ]]; then | ||||
|     # copy crontab from system | ||||
|     if crontab -l -u root; then | ||||
|         crontab -l -u root >/config/crontabs/root | ||||
|     fi | ||||
|  | ||||
|     # if crontabs still do not exist in config (were not copied from system) | ||||
|     # copy crontab from included defaults (using -n, do not overwrite an existing file) | ||||
|     cp -n /etc/crontabs/root /config/crontabs/ 2> >(grep -v 'cp: not replacing') | ||||
| fi | ||||
| # set permissions and import user crontabs | ||||
| lsiown root:root /config/crontabs/root | ||||
| crontab -u root /config/crontabs/root | ||||
|  | ||||
| ## abc | ||||
| # if crontabs do not exist in config | ||||
| if [[ ! -f /config/crontabs/abc ]]; then | ||||
|     # copy crontab from system | ||||
|     if crontab -l -u abc; then | ||||
|         crontab -l -u abc >/config/crontabs/abc | ||||
|     fi | ||||
|  | ||||
|     # if crontabs still do not exist in config (were not copied from system) | ||||
|     # copy crontab from included defaults (using -n, do not overwrite an existing file) | ||||
|     cp -n /etc/crontabs/abc /config/crontabs/ 2> >(grep -v 'cp: not replacing') | ||||
| fi | ||||
| # set permissions and import user crontabs | ||||
| lsiown abc:abc /config/crontabs/abc | ||||
| crontab -u abc /config/crontabs/abc | ||||
| @@ -1 +0,0 @@ | ||||
| oneshot | ||||
| @@ -1 +0,0 @@ | ||||
| /etc/s6-overlay/s6-rc.d/init-crontabs-config/run | ||||
| @@ -3,7 +3,7 @@ | ||||
|  | ||||
| # make our folders and links | ||||
| mkdir -p \ | ||||
|     /config/{fail2ban,crontabs,dns-conf} \ | ||||
|     /config/{fail2ban,dns-conf} \ | ||||
|     /config/etc/letsencrypt/renewal-hooks \ | ||||
|     /config/log/{fail2ban,letsencrypt,nginx} \ | ||||
|     /config/nginx/proxy-confs \ | ||||
|   | ||||
		Reference in New Issue
	
	Block a user