В этой заметке я рассказывал как можно получить SSL сертификат на свой сайт совершенно бесплатно. Через три месяца сертификат истекает и его нужно обновить, опять-таки бесплатно.
Для этого нужно выполнить простую последовательность действий.
Сначала перейдем в директорию с склонированным letsencrypt и обновим его.
1 | cd letsencrypt && git pull |
Затем нужно остановить веб-сервер, в моем случае – nginx:
1 | sudo service nginx stop |
Далее, провести само обновление и снова запустить сервер.
1 | ./letsencrypt-auto renew |
1 | sudo service nginx start |
Во время обновления можно столкнуться с ошибками, причина которых – нехватка оперативной памяти на сервере. Чтобы их избежать можно освободить больше памяти остановив такие процессы, как mysql, php-fpm, uwsgi или другие, интенсивно потребляющие память. О том какой процесс больше расходует памяти можно узнать с помощью этого совета.
Для автоматизации задачи можно набросать простой shell скрипт. Будьте внимательны, задавая свои пути.
1 2 3 4 5 6 7 | #!/usr/bin/bash cd /opt/letsencrypt/ git pull service nginx stop ./letsencrypt-auto renew service nginx start exit 0 |
Установить его на выполнение на cron от root пользователя:
1 | sudo crontab -e |
1 | 0 0 1 */3 * /path/to/script.sh >/dev/null 2>&1 |
Единицу на третьей позиции, обозначающую день, стоит заменить на день месяца когда вы обновили сертификат.