Скрипт Bash для автоматического обновления SSL-сертификата Letsencrypt на Tomcat

Мануал

Здесь мы расскажем, как использовать Bash Script для автоматического обновления SSL-сертификата Letsencrypt на Tomcat.

Шаги, используемые для установки сертификата Letsencrypt, как показано в статье, выполняются вручную.

Представлен скрипт Bash, чтобы установить автоматический процесс обновления.

Это придаст вам душевное спокойствие, избегая повторяющегося ручного процесса.

Предпосылки

Есть несколько пакетов, которые нужно установить, чтобы этот процесс работал нормально.

Чтобы получать уведомления по электронной почте о продлении, вам необходимо установить пакет, который предоставляет команду mail.

Для CentOS:

Запустите следующие команды:

# wget https://dl.eff.org/certbot-auto -P /usr/local/bin
# chmod a+x /usr/local/bin/certbot-auto

Если у вас есть активный брандмауэр, например firewalld, откройте порт https на брандмауэре.

# firewall-cmd --add-service https --permanent
# firewall-cmd --reload

Чтобы получать оповещения по электронной почте, установите пакет mailx:

$ sudo yum -y install mailx

Для Ubuntu:

Запустите эти команды на вашем сервере Ubuntu, чтобы выполнить все требования.

# wget https://dl.eff.org/certbot-auto -P /usr/local/bin
# chmod a+x /usr/local/bin/certbot-auto

Если у вас есть брандмауэр UFW, откройте порт https, который часто используется Letsencrypt при обновлении сертификата.

$ sudo ufw allow https

Чтобы получать оповещения по электронной почте, установите пакет mailx:

$ sudo apt-get -y install mailutils

Скрипт Bash для автоматического обновления SSL-сертификата Letsencrypt на Tomcat

Использование скрипта

Теперь, когда все настроено, клонируйте этот скрипт, измените его, сделайте его исполняемым и установите для него задание cron.

Сначала клонируйте хранилище:

$ git clone https://github.com/jmutai/tomcat-letsencrypt.git
$ cd tomcat-letsencrypt

Теперь посмотрим, что нужно сделать , после того как вы клонировали репо или скачали скрипт.

Есть несколько переменных, которые вам нужно определить, прежде чем вы будете готовы выполнить скрипт.

Файл для редактирования – tomcat-letsencrypt-autorenew.sh.

TOMCAT_DOMAIN=""
TOMCAT_KEY_PASS=""
CERTBBOT_BIN="/usr/local/bin/certbot-auto"
EMAIL_NOTIFICATION="email_address"

Сохраните изменения затем:

$ chmod +x tomcat-letsencrypt-autorenew.sh
$ sudo cp tomcat-letsencrypt-autorenew.sh /usr/local/bin

Вам необходимо настроить файл tomcat server.xml.

Файл SSL должен быть в /etc/ssl/$‹DOMAIN‹.jks.

Выполните скрипт, запустив:

$ sudo su -
# /usr/local/bin tomcat-letsencrypt-autorenew.sh

Если вам не нужны уведомления по электронной почте, вы можете пропустить функцию send_email_notification.

Установите задание cron

Ежедневно выполнять задание cron, проверяя, требуется ли сертификат для продления

# crontab -e

Добавьте

30 3 * * * /usr/local/bin tomcat-letsencrypt-autorenew.sh

Это означает, что он будет работать каждый день в 3 часа утра для проверок. если сертификат не подлежит обновлению, скрипт завершится корректно.

 

Добавить комментарий