Mercurial Hosting > luan
comparison host/renewSsl.sh @ 2048:59f3a7f3d10b acme-tiny tip
add check for local_https in renewSsl.sh
| author | Violet7 |
|---|---|
| date | Tue, 11 Nov 2025 01:45:02 -0800 |
| parents | a4435e2e3417 |
| children |
comparison
equal
deleted
inserted
replaced
| 2046:e0896f65c847 | 2048:59f3a7f3d10b |
|---|---|
| 1 #!/bin/bash | 1 #!/bin/bash |
| 2 | 2 |
| 3 set -e | |
| 3 cd "$1" || exit 1 | 4 cd "$1" || exit 1 |
| 5 | |
| 4 ROOTPWD=$(pwd) | 6 ROOTPWD=$(pwd) |
| 7 KEYFILE="$ROOTPWD/local/tiny_account.key" | |
| 8 for SITEROOT in "$ROOTPWD"/sites/*; do | |
| 9 { | |
| 10 # Skip if not a directory | |
| 11 [ -d "$SITEROOT" ] || continue | |
| 5 | 12 |
| 6 for SITEROOT in "$ROOTPWD"/sites/*; do | 13 DOMAIN=$(basename "$SITEROOT") |
| 7 # Skip if not a directory | 14 CSRFILE="$SITEROOT/$DOMAIN.csr" |
| 8 [ -d "$SITEROOT" ] || continue | 15 FULLCHAIN="$SITEROOT/fullchain.cer" |
| 16 CHALLENGEDIR="$SITEROOT/site/.well-known/acme-challenge" | |
| 17 TMPOUT="/tmp/$DOMAIN.crt" | |
| 18 echo "Processing domain: $DOMAIN" | |
| 9 | 19 |
| 10 DOMAIN=$(basename "$SITEROOT") | 20 # local_https.sh does not create a csr file, assume |
| 11 echo "Processing domain: $DOMAIN" | 21 # it is a self-signed local cert if it doesn't exist |
| 22 if [ ! -f "$CSRFILE" ]; then | |
| 23 echo "CSR file not found, assuming self-signed and skipping." | |
| 24 continue | |
| 25 fi | |
| 12 | 26 |
| 13 mkdir -p "$SITEROOT/site/.well-known/acme-challenge" | 27 mkdir -p "$CHALLENGEDIR" |
| 14 | 28 |
| 15 python3 "$ROOTPWD/acme_tiny.py" \ | 29 python3 "$ROOTPWD/acme_tiny.py" \ |
| 16 --account-key "$ROOTPWD/local/tiny_account.key" \ | 30 --account-key "$KEYFILE" \ |
| 17 --csr "$SITEROOT/$DOMAIN.csr" \ | 31 --csr "$CSRFILE" \ |
| 18 --acme-dir "$SITEROOT/site/.well-known/acme-challenge" \ | 32 --acme-dir "$CHALLENGEDIR" \ |
| 19 > "/tmp/$DOMAIN.crt" | 33 > "$TMPOUT" |
| 20 | 34 |
| 21 # check if exists | 35 # check if exists |
| 22 if [ -f "$SITEROOT/fullchain.cer" ]; then | 36 if [ -f "$FULLCHAIN" ]; then |
| 23 mv "$SITEROOT/fullchain.cer" "$SITEROOT/fullchain.cer.old" | 37 mv $FULLCHAIN "$FULLCHAIN.old" |
| 24 fi | 38 fi |
| 25 | 39 |
| 26 mv "/tmp/$DOMAIN.crt" "$SITEROOT/fullchain.cer" | 40 mv "$TMPOUT" "$FULLCHAIN" |
| 27 | 41 |
| 28 echo "Renewed certificate for $DOMAIN" | 42 echo "Renewed certificate for $DOMAIN" |
| 43 } || { | |
| 44 echo "Error processing $SITEROOT — skipping." | |
| 45 } | |
| 29 done | 46 done |
| 30 | 47 |
| 31 sudo /usr/local/bin/nginx -s reload | 48 sudo /usr/local/bin/nginx -s reload |
| 32 echo "Nginx reloaded." | 49 echo "Nginx reloaded." |
