Last active
July 17, 2019 00:15
-
-
Save zetc0de/19473954367509b8177af103fbcd61c4 to your computer and use it in GitHub Desktop.
Script Renew SSL Letsencrypt Pada Zimbra
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
green='\e[0;34m' | |
red='\e[1;31m' | |
RESET="\033[00m" #normal | |
# if [[ $EUID -ne 0 ]] | |
# then | |
# echo -e "${red}This script must run as root!" | |
# echo -e "Bye...$RESET" | |
# exit 1 | |
# fi | |
# function checkDomain { | |
# echo -ne "${green}Check /etc/letsencrypt/live/ Folder...${RESET}" | |
# for i in $(ls /etc/letsencrypt/live) | |
# then | |
# echo "- $i" | |
# } | |
function setDomain { | |
# checkDomain | |
echo -ne "${green}Enter Domain : " | |
read domain | |
} | |
# export domain="" | |
function backup { | |
echo -e "${green}Backup SSL Zimbra...${RESET}" | |
mkdir -p /opt/zimbra/ssl/zimbra-backupssl.$(date "+%Y%m%d") | |
cp -r /opt/zimbra/ssl/zimbra /opt/zimbra/ssl/zimbra-backupssl.$(date "+%Y%m%d") | |
rm -f /opt/zimbra/ssl/zimbra/* >/dev/null 2>&1 | |
} | |
function renew { | |
echo -e "${green}Stop Service Zimbra...${RESET}" | |
su - zimbra -c 'zmcontrol stop' | |
backup | |
setDomain | |
rm -f /opt/zimbra/ssl/letsencrypt/*.pem | |
mkdir -p /etc/zimbra/ssl/letsencrypt | |
certbot renew >/dev/null 2>&1 | |
chown -R zimbra:zimbra /opt/zimbra/ssl/letsencrypt/ | |
cat /etc/letsencrypt/live/${domain}/chain.pem > /opt/zimbra/ssl/letsencrypt/chain.pem | |
cat /etc/letsencrypt/live/${domain}/cert.pem > /opt/zimbra/ssl/letsencrypt/cert.pem | |
cat /etc/letsencrypt/live/${domain}/fullchain.pem > /opt/zimbra/ssl/letsencrypt/fullchain.pem | |
cat /etc/letsencrypt/live/${domain}/privkey.pem > /opt/zimbra/ssl/letsencrypt/privkey.pem | |
cat ~/root-ca.pem >> /opt/zimbra/ssl/letsencrypt/chain.pem | |
su - zimbra -c "cd /opt/zimbra/ssl/letsencrypt/ && zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem >/dev/null 2>&1" | |
cp /opt/zimbra/ssl/letsencrypt/privkey.pem /opt/zimbra/ssl/zimbra/commercial/commercial.key | |
cd /opt/zimbra/ssl/letsencrypt/ | |
echo -e "${green}Deploy Zimbra SSL...${RESET}" | |
su - zimbra -c "cd /opt/zimbra/ssl/letsencrypt/ && zmcertmgr deploycrt comm cert.pem chain.pem >/dev/null 2>&1" | |
echo -e "${green}Start Service Zimbra...${RESET}" | |
su - zimbra -c 'zmcontrol start' | |
} | |
renew |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment