#lets-encrypt #certbot
#позволяет шифровать #certbot
Вопрос:
У меня есть скрипт, который автоматически обновляет сертификат let’s encrypt, когда он становится доступным. Мы запускаем этот скрипт каждый день в 17:00
#!/bin/sh
/usr/bin/certbot --cert-name sitename.com --text --agree-tos certonly -a webroot --keep-until-expiring --webroot-path /var/www/path/public -d sitename.com -d www.sitename.com
Недавно я видел, что каждый день создается новый сертификат с новым каталогом с 00XX
суффиксом.
У этого файла не было никаких шансов с момента его создания (19 августа)
Итак /etc/letsencrypt/archive
, выглядит так:
drwxr-xr-x. 2 root root 4096 Nov 11 09:45 sitename.com
drwxr-xr-x. 2 root root 4096 Aug 19 16:39 sitename.com-0001
drwxr-xr-x. 2 root root 4096 Aug 19 16:43 sitename.com-0002
drwxr-xr-x. 2 root root 4096 Oct 16 17:00 sitename.com-0003
drwxr-xr-x. 2 root root 4096 Oct 17 17:00 sitename.com-0004
drwxr-xr-x. 2 root root 4096 Oct 18 17:00 sitename.com-0005
drwxr-xr-x. 2 root root 4096 Oct 19 17:00 sitename.com-0006
drwxr-xr-x. 2 root root 4096 Oct 20 17:00 sitename.com-0007
drwxr-xr-x. 2 root root 4096 Oct 23 17:00 sitename.com-0008
drwxr-xr-x. 2 root root 4096 Oct 24 17:00 sitename.com-0009
drwxr-xr-x. 2 root root 4096 Oct 25 17:01 sitename.com-0010
drwxr-xr-x. 2 root root 4096 Oct 26 17:00 sitename.com-0011
drwxr-xr-x. 2 root root 4096 Oct 27 17:00 sitename.com-0012
drwxr-xr-x. 2 root root 4096 Oct 30 17:00 sitename.com-0013
drwxr-xr-x. 2 root root 4096 Oct 31 17:00 sitename.com-0014
drwxr-xr-x. 2 root root 4096 Nov 1 17:00 sitename.com-0015
drwxr-xr-x. 2 root root 4096 Nov 2 17:00 sitename.com-0016
drwxr-xr-x. 2 root root 4096 Nov 3 17:00 sitename.com-0017
drwxr-xr-x. 2 root root 4096 Nov 6 17:00 sitename.com-0018
drwxr-xr-x. 2 root root 4096 Nov 7 17:00 sitename.com-0019
drwxr-xr-x. 2 root root 4096 Nov 8 17:00 sitename.com-0020
drwxr-xr-x. 2 root root 4096 Nov 9 17:01 sitename.com-0021
drwxr-xr-x. 2 root root 4096 Nov 10 17:00 sitename.com-0022
Я считаю, что -0001
и -0002
были созданы из-за неправильной настройки при первом создании сертификата.
Но кто-нибудь может помочь объяснить, почему сертификат и каталог создаются каждый день с 16 октября?
Ответ №1:
Мне удалось разобраться в проблеме.
После запуска
/usr/bin/certbot certificates
Произошла ошибка:
Renewal configuration file /etc/letsencrypt/renewal/sitename.com.conf produced an unexpected error: renewal config file {} is missing a required file reference. Skipping.
И кажется, что conf
для каждого из каталогов есть файл -00XX
.
Посмотрев /etc/letsencrypt/renewal/sitename.com.conf
, я обнаружил, что файл был пуст.
Итак, я взял последний -00XX
conf
файл и удалил 00XX
суффикс из текстовых строк.
conf
Файл должен выглядеть следующим образом:
# renew_before_expiry = 30 days
version = 1.0.0
archive_dir = /etc/letsencrypt/archive/sitename.com
cert = /etc/letsencrypt/live/sitename.com/cert.pem
privkey = /etc/letsencrypt/live/sitename.com/privkey.pem
chain = /etc/letsencrypt/live/sitename.com/chain.pem
fullchain = /etc/letsencrypt/live/sitename.com/fullchain.pem
# Options used in the renewal process
[renewalparams]
authenticator = webroot
account = XXXXXXXXXXXXXXXXXXXXXXX
webroot_path = /var/www/path/public,
server = https://acme-v02.api.letsencrypt.org/directory
Но это все равно создаст новый каталог и сертификат для каждого дня
Вам нужно будет добавить это в свой conf
файл, добавив строку для каждого домена, связанного с вашим сертификатом.
[[webroot_map]]
sitename.com = /var/www/path/public
www.sitename.com = /var/www/path/public
И это должно предотвратить создание сертификатов каждый день.
Я считаю, что проблема связана с удалением доменов из сертификата и обновлением вручную.