Проект

Общее

Профиль

Автообновления сертификатов Lets Encrypt

Создайте папку work в папке root она чуть позже пригодится

 
mkdir work 

Создайте в папке Letsencrypt hook со следующим содержанием

nano /etc/letsencrypt/renewal-hooks/deploy/hook01

 
#!/bin/sh 
do 
        if [ "$domain" = mail.вашдомен.рф ] 
        then 
                /root/work/tegu_certs 
                /bin/systemctl restart tegu 
        fi 
done 

Сделайте его исполняемым

 
chmod +x /etc/letsencrypt/renewal-hooks/deploy/hook01 

Создайте еще один скрипт

 
nano /root/work/tegu_certs 

Пропишите в нем следующие строки

 
#!/bin/bash 
cat /etc/letsencrypt/live/mail.вашдомен.рф/fullchain.pem > /opt/tegu/certs/fullchain.pem 
cat /etc/letsencrypt/live/mail.вашдомен.рф/privkey.pem > /opt/tegu/certs/privkey.pem 
chgrp mail /opt/tegu/certs/* 
chmod 640 /opt/tegu/certs/* 

Сделайте скрипт исполняемым

 
chmod +x /root/work/tegu_certs 

Смените группу владельцев

 
chgrp root /etc/letsencrypt/archive/mail.вашдомен.рф/* 

Запустите скрипт

 
/root/work/tegu_certs 

Проверьте результат отрабатывания скрипта

 
ls -lh /opt/tegu/certs/ 

В этой папке должны появится сертификаты

 
fullchain.pem privkey.pem 

В основных настройках почтового сервера мы указываем следующие пути к сертификатам

 
/opt/tegu/certs/fullchain.pem 
/opt/tegu/certs/privkey.pem 

Должно получиться так

Добавьте выполнение скрипта в crontab, чтоб он выполнялся по расписанию.

crontab -e

и добавьте строку

20 0,12 * * *           /root/work/process.sh >/dev/null

После того как сертификаты сгенерированы и прописаны на почтовом сервере, в основных настройках необходимо включить опцию "Требовать шифрования TLS/SSL для авторизации"

Перезапустите почтовый сервер

 
systemctl restart tegu