Показаны сообщения с ярлыком certbot. Показать все сообщения
Показаны сообщения с ярлыком certbot. Показать все сообщения

понедельник, 1 апреля 2019 г.

Certbot ошибки когда много аккаунтов

Продлить нужно сертификат для почтового сервера

Сначала проверяем nginx конфиг для почтового домена

server
{
        listen 1.2.3.4:80;
        server_name mail.domain.tld;

        # letsencrypt
        location ~ ^/\.well-known {
            auth_basic off;
            allow all;
            root /home/www/acme;
        }

        location ~ ^/\.well-known/acme-challenge
        {
            auth_basic off;
            allow all;
            root /home/www/acme;
        }
}

По факту в letsencrypt один аккаунт в папке v01 и два аккаунта в v02 (причина ошибок)

acme-v01.api.letsencrypt.org
acme-v02.api.letsencrypt.org

certbot certificates
Проверить статус сертификатов. Вижу, что сертификат почтовика просрочен.

certbot версии 0.23.0, запускаем с проверкой

/usr/bin/certbot certonly --webroot -w /home/www/acme -d mail.domain.tld --email testcert@domain.tld --non-interactive --agree-tos --dry-run


пятница, 16 ноября 2018 г.

Letsencrypt certbot entered correctly and the DNS A record(s) for that domain. Перенос certs на другой сервер, с добавлением к другим certs

Ошибка, хотя адрес правильный, права выставлены правильно.
Совмещены сертификаты с нескольких серверов
certbot renew --dry-run для части сертификатов выполняется
При запуске certbot certonly для одного домена, пишет укажите аккаунт

certbot certonly --webroot -w /home/www/acme -d www.domain.tld -d domain.tld --email testcert@domain.tld --non-interactive --agree-tos

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Missing command line flag or config entry for this setting:
Please choose an account
Choices: ['old1.hostname@2016-12-28T09:20:13Z (5d57)', 'old2.hostname@2018-04-25T12:50:13Z (ebbd)', 'real.hostname@2018-10-01T12:46:46Z (8656)']

Решение - объединить все на один реальный аккаунт, где real.hostname
Для этого в папке /etc/letsencrypt/renewal
во всех конфигах меняю account на один с сервера, на который были перенесены certs

[renewalparams]
authenticator = webroot
installer = None
account = 1d375aa7bda4c25k7ae464946751670a
renew_hook = /usr/local/bin/renew.sh

И удалил старые аккаунты из папки 
/etc/letsencrypt/accounts/acme-v01.api.letsencrypt.org/directory

После этого все заработало.

понедельник, 15 октября 2018 г.

Certbot auto renew

Где добавлять renew?
1) manual https://certbot.eff.org/docs/using.html?highlight=renew#renewing-certificates
    By default, the following locations are searched:
    /etc/letsencrypt/cli.ini
добавляем в этот файл
renew-hook = /usr/local/bin/renew.sh

в /usr/local/bin/renew.sh файл добавляем
#!/bin/sh
/bin/systemctl reload nginx

Проверяем в /var/log/letsencrypt

2) Если обновляется через systemd, то смотрим:

/lib/systemd/system/certbot.timer
и добавляем там
 --renew-hook "/bin/systemctl reload nginx"