From 80ccc3ea501e5da72d577ffc871a78da219116a3 Mon Sep 17 00:00:00 2001 From: Haitao Pan Date: Sat, 7 Oct 2023 10:45:06 +0800 Subject: [PATCH] playbook/roles/cert-manager/files/certs_automated_issuance.sh: update --- .../files/certs_automated_issuance.sh | 33 ++++++++++++------- 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/playbook/roles/cert-manager/files/certs_automated_issuance.sh b/playbook/roles/cert-manager/files/certs_automated_issuance.sh index 493eaf0c..8417b7a1 100644 --- a/playbook/roles/cert-manager/files/certs_automated_issuance.sh +++ b/playbook/roles/cert-manager/files/certs_automated_issuance.sh @@ -13,18 +13,27 @@ rm -rvf ${Domain}.* -f rm -rvf /etc/ssl/${Domain}.* -f # Try to issue a certificate from ZeroSSL. If it fails, try Let's Encrypt. -if ! sh ~/.acme.sh/acme.sh --set-default-ca --server zerossl --issue --force --dns dns_ali -d ${Domain} -d "*.${Domain}"; -then - sh ~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --force --dns dns_ali -d ${Domain} -d "*.${Domain}" + +sh ~/.acme.sh/acme.sh --set-default-ca --server zerossl --issue --force --dns dns_ali -d ${Domain} -d "*.${Domain}"; + +if [[ ! -s "~/.acme.sh/${Domain}_ecc/ca.cer" ]] || [[ ! -s "~/.acme.sh/${Domain}_ecc/${domain}.cer" ]] || [[ ! -s "~/.acme.sh/${Domain}_ecc/${domain}.key" ]] +; then + echo "${Domain}.pem and ${Domain}.key is empty , Let's Try to issue a certificate with Let's Encrypt" + sh ~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --force --dns dns_ali -d ${Domain} -d "*.${Domain}" +else + cat ~/.acme.sh/${Domain}_ecc/${domain}.cer > ${Domain}.pem + cat ~/.acme.sh/${Domain}_ecc/ca.cer >> ${Domain}.pem + cat ~/.acme.sh/${Domain}_ecc/${Domain}.key > ${Domain}.key + sudo cp ${Domain}.pem /etc/ssl/ -f && sudo cp ${Domain}.key /etc/ssl/ -f fi -cat ~/.acme.sh/${Domain}_ecc/${domain}.cer > ${Domain}.pem -cat ~/.acme.sh/${Domain}_ecc/ca.cer >> ${Domain}.pem -cat ~/.acme.sh/${Domain}_ecc/${Domain}.key > ${Domain}.key -sudo cp ${Domain}.pem /etc/ssl/ && sudo cp ${Domain}.key /etc/ssl/ - -# Non-empty check for ${domain}.pem and ${Domain}.key -if [ ! -s "${Domain}.pem" ] || [ ! -s "${Domain}.key" ]; then - echo "${Domain}.pem and ${Domain}.key must not be empty" - exit 1 +if [[ ! -s "~/.acme.sh/${Domain}_ecc/ca.cer" ]] || [[ ! -s "~/.acme.sh/${Domain}_ecc/${domain}.cer" ]] || [[ ! -s "~/.acme.sh/${Domain}_ecc/${domain}.key" ]]; then + echo "${Domain}.pem and ${Domain}.key must not be empty" + exit 1 +else + cat ~/.acme.sh/${Domain}_ecc/${domain}.cer > ${Domain}.pem + cat ~/.acme.sh/${Domain}_ecc/ca.cer >> ${Domain}.pem + cat ~/.acme.sh/${Domain}_ecc/${Domain}.key > ${Domain}.key + sudo cp ${Domain}.pem /etc/ssl/ -f && sudo cp ${Domain}.key /etc/ssl/ -f + sh ~/.acme.sh/acme.sh --set-default-ca --server letsencrypt --issue --force --dns dns_ali -d ${Domain} -d "*.${Domain}" fi