certbot certificates
$ apt update $ sudo apt install certbot $ certbot certbot certonly --webroot --agree-tos --email <почта администратора домена> --webroot-path <путь до каталога с файлами проверки> -d <домен 1> -d <домен 2> -d ...
Ключ | Описание |
---|---|
certonly | запрос нового сертификата |
webroot | проверка будет выполняться на основе запроса к корню сайта |
agree-tos | даем согласие на лицензионное соглашение |
почтовый адрес администратора домена | |
webroot-path | каталог в системе Linux, который является корневым для сайта |
d | перечисление доменов, для которых запрашиваем сертификат |
certbot --apache -d powershellpro.ru -d www.powershellpro.ru certbot certonly --webroot --agree-tos --email postmaster@dmosk.ru --webroot-path /usr/share/nginx/html/ -d dmosk.ru -d www.dmosk.ru ./certbot-auto certonly --manual --preferred-challenges=dns --email youremail@email.com --server https://acme-v02.api.letsencrypt.org/directory --agree-tos -d *.domain.com,domain.com
После успешного выполнения команды, сертификаты будут созданы в каталоге /etc/letsencrypt/archive/dmosk.ru, а также симлинки на них в каталоге /etc/letsencrypt/live/dmosk.ru. При настройке приложений, стоит указывать пути до симлинков, так как при обновлении файлы в первом каталоге будут меняться, во втором — нет. Публичный ключ будет с именем cert.pem, а приватный — privkey.pem.
openssl pkcs12 -export -out certificate.pfx -inkey privkey.pem -in fullchain.pem -certfile cert.pem
certbot certonly --manual --agree-tos --email postmaster@dmosk.ru --preferred-challenges=dns -d dmosk.ru -d www.dmosk.ru certbot certonly --webroot -w /var/www/30f.ru/html/ --email batman@30f.ru -d 30f.ru -d www.30f.ru
* где:
На запрос подтверждения отвечаем Y — система выдаст что-то на подобие:
Please deploy a DNS TXT record under the name _acme-challenge.dmosk.ru with the following value:
W2SC9b88y2j2oUjhxVgS7Bphph9g5PqhkBq9KiWkLTm
Утилита certbot позволяет выполнить обновление сертификата в автоматическом режиме. В зависимости от операционной системы, инструменты различаются.
Linux Смотрим полный путь до скрипта certbot:
$ which certbot
Открываем на редактирование cron и добавляем следующее:
$ crontab -e
а) для Ubuntu / Debian / Rocky Linux:
0 0 * * 1,4 /usr/bin/certbot renew --noninteractive
б) для CentOS:
0 0 * * 1,4 /bin/certbot renew --noninteractive
#!/bin/bash COMPOSE="/usr/bin/docker compose --no-ansi" DOCKER="/usr/bin/docker" cd /opt/wordpress/ $COMPOSE run certbot renew --dry-run && $COMPOSE kill -s SIGHUP webserver $DOCKER system prune -af
Выпуск сертификата
acme.sh -f -r -d {your-domain-here} acme.sh --force --renew --domain {your-domain-name-here} acme.sh -f -r -d www.mydomain.ru acme.sh -f -r -d www.mydomain.ru -d myserv1.mydomain.ru
Обновление сертификата
acme.sh -f -r -d www.mydomain.ru
Копируем из /.acme.sh/имядомена_ecc в /usr/local/x-ui/bin