Some scripts to create and renew all your certificates, and concatenate fullchain and privkey so haproxy is able to use it
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

30 lines
973 B

  1. #!/bin/bash
  2. #Configuration variables
  3. certbot_bin="/usr/bin/certbot"
  4. postfix_pem_path="/etc/ssl/"
  5. mail_server="192.168.201.172"
  6. if [ ! $# -ge 1 ] ; then
  7. echo "$(date +%c) Please give domain name as parameter"
  8. exit 1
  9. fi
  10. DOMAIN_OPTION=""
  11. for domain in "${@}"; do
  12. DOMAIN_OPTION="${DOMAIN_OPTION} -d mail.${domain} -d smtp.${domain} -d imap.${domain}"
  13. done
  14. echo "$(date +%c) Generate certificat for ${@}"
  15. ${certbot_bin} certonly ${DOMAIN_OPTION} --renew-by-default --http-01-port 63443 --agree-tos
  16. if [ $? -eq 0 ]; then
  17. echo "$(date +%c) Success!"
  18. rsync -az -L /etc/letsencrypt/live/mail.$1/cert.pem /etc/letsencrypt/live/mail.$1/privkey.pem /etc/letsencrypt/live/mail.$1/chain.pem ssl-san@${mail_server}:${postfix_pem_path}
  19. ssh ssl-san@${mail_server} "sudo systemctl reload postfix"
  20. ssh ssl-san@${mail_server} "sudo systemctl restart dovecot"
  21. else
  22. echo "$(date +%c) Error creating certificate with error code $?, exit script..."
  23. exit 1
  24. fi
  25. exit 0