LINUX.ORG.RU
ФорумAdmin

SSL сертификат Let’s Encrypt

 , ,


2

1

Коллеги, добрый день. Пытаемся получить сертификат SSL для прикрутке к iredmail, но вылетает одна и таже ошибка с фаерволом . Система на CentOS 7 , NGINX 1.12.2 ; Собственно скрины и конфиги прикладываю:

Ввожу команду на генерацию серта и получаю это https://ibb.co/YWQs37Z (сама команда: root@mail2 ~]# certbot certonly --webroot -w /var/www/letsencrypt/ -d xxx.example.ru)

Логи NGINX: https://ibb.co/QbRc9xm

Selinux disabled. Iptables -L пуст.

То что надо во внешку открыть 80 порт это известно . Но он не открывается , 443 открывается , а вот 80 нет. На данном порту только nginx висит https://ibb.co/DQHPbgF

Сам конфиг nginx дефолтый, ничего не меняно

%
user nginx;
worker_processes 1;
pid /var/run/nginx.pid;

events {
    worker_connections 1024;
}

http {
    include /etc/nginx/conf-enabled/*.conf;
    include /etc/nginx/sites-enabled/*.conf;
}

Если включить фаервол и сделать firewall-cmd --list-all , то получим https://ibb.co/41qqdKX

Подскажите куда ещё можно копать? Уже не знаем как получить этот злобный сертификат

1)отключи временно фаервол в корневой директории nginx создай файл index.html или 1.html с любым содержанием.

2)релоадни nginx

3)проверь открывается ли файл из локалки

4)если открывается пробрось порт

5)проверь открывается ли файл из внешки

6)если открывается и все равно ошибка кидай вывод при создании сертификата

И нахрена ты меняешь у сертификата путь?

sanekmihailow ()
Ответ на: комментарий от sanekmihailow

1. да у меня roundcube по дефолту открывается 2. + 3. открывается и на 80 и на 443 4. пробросил 5. Открывается только по 443 , 80 не реагирует никак 6. Серт не создаётся

Ded_Yurec ()
Ответ на: комментарий от sanekmihailow

Говорит : Saving debug log to /var/log/letsencrypt/letsencrypt.log Could not choose appropriate plugin: The requested nginx plugin does not appear to be installed The requested nginx plugin does not appear to be installed

Гугол говорит что надо мол генерить как я по мануалу выше генерил , но решение не предлагают (

Ded_Yurec ()
Ответ на: комментарий от sanekmihailow

Только pfsense

если в локалке открывается, значит hairpin тоже надо на порт 80 сделать

sanekmihailow ()
Ответ на: комментарий от sanekmihailow

Сверху конфиг nginx же есть. Дублирую

nginx.conf

user nginx;
worker_processes 1;
pid /var/run/nginx.pid;

events {
    worker_connections 1024;
}

http {
    include /etc/nginx/conf-enabled/*.conf;
    include /etc/nginx/sites-enabled/*.conf;
}


sites-availeble/00-default.conf


#
# Note: This file must be loaded before other virtual host config files,
#
# HTTP
server {
    # Listen on ipv4
    listen 80;

    # Listen on ipv6.
    # Note: this setting listens on both ipv4 and ipv6 with Nginx release
    #       shipped in some Linux/BSD distributions.
    #listen [::]:80;

    server_name _;

    # Redirect all insecure http:// requests to https://
    return 301 https://$host$request_uri;
}


sites-availeble/00-default-ssl.conf


#
# Note: This file must be loaded before other virtual host config files,
#
# HTTPS
server {
    listen 443;
    server_name _;

    root /var/www/html;
    index index.php index.html;

    include /etc/nginx/templates/misc.tmpl;
    include /etc/nginx/templates/ssl.tmpl;
    include /etc/nginx/templates/iredadmin.tmpl;
    include /etc/nginx/templates/roundcube.tmpl;
    include /etc/nginx/templates/sogo.tmpl;
    include /etc/nginx/templates/netdata.tmpl;
    include /etc/nginx/templates/php-catchall.tmpl;
    include /etc/nginx/templates/stub_status.tmpl;
}
Ded_Yurec ()
Ответ на: комментарий от sanekmihailow

полный конфиг скинул , nginx ребутал. и виртуалку тож полностью ребутал

Ded_Yurec ()
Ответ на: комментарий от sanekmihailow

это стандартный конфиг. Заменил на домен, всё равно ошибка сохраняется. Какие ещё логи приложить или какие шаги проделать?

Ded_Yurec ()
Ответ на: комментарий от Ded_Yurec

пересмотрел еще раз пути и словил кек

твоя проблема либо в этом тут

      1. открывается и на 80 и на 443

точно? там не в обоих случаях прописан https

либо ты не пробросил порт

sanekmihailow ()
Ответ на: комментарий от sanekmihailow

внутри локальной сети я могу зайти через http:// и https:// , а извне только через https . Возможно что проблема в pfsense и он не может пробросить 80 порт , но это бред какой то

Ded_Yurec ()
Ответ на: комментарий от Ded_Yurec

Для начала посмотрите долетают ли пакеты на 80-й порт до pfsense. Хоть по большому счету и глупость, но возможно пров блокирует.

anc ★★★★★ ()
Ответ на: комментарий от sanekmihailow

Короче, проблема была в PFSENSE , её я порешал , глюк с пробросом . НО , теперь вылазит новая ошибка ))))

Detail: CAA record for mail.domain.com prevents issuance

Гугол приводит статьи только о том , что эта запись новая и бла бла . Лекарство как то не приводит никто . Как бороться ?)

Ded_Yurec ()
Ответ на: комментарий от Ded_Yurec

DNS на винде 2008R2 , была попытка сделать так :

в DNS добавляем TXT запись

mail.domain.ru 7200 IN CAA 0 issue «'letsencrypt.org'»

но всё тщетно..

Ded_Yurec ()
Ответ на: комментарий от Ded_Yurec

Короче, проблема была в PFSENSE , её я порешал , глюк с пробросом

Давайте назвать вещи правильно. Не «глюк» или «проблема в pfsense» а «кривые руки».

Detail: CAA record for mail.domain.com prevents issuance

У вас на dns сервере прописана[ы] CAA запись[и] letsencrypt.org там не присутствует. CAA запись не является обязательной, скорее как некая «эфемерная» доп защита к которой CA должны «прислушиваться», но даже при 128 никто же не гарантирует не выдачу, а уж при 0 так вообще на «мое усмотрение».

Лекарство как то не приводит никто

«Лекарство» приведено в тысячях статей, видимо у вас «гугл не оттуда растет».

anc ★★★★★ ()
Ответ на: комментарий от Ded_Yurec

Для начала на юх снесите ваши попытки добавления CAA записей (если только ранее там не было других добавленных от других CA). Они не являются обязательными. И так тяжело погуглить про настройку certbot + LE ? Повторю их тысячи.

anc ★★★★★ ()
Ответ на: комментарий от Ded_Yurec

DNS на винде 2008R2
DNS добавляем TXT запись
mail.domain.ru 7200 IN CAA 0 issue «'letsencrypt.org'»

Вот пипец как не удивлен, что не робит. У вас столько ошибок в слове «юх».
В вашем случае не надо издеваться над стюардессой, снесите CAA
PS Сорри отвлекся и не запостил это сообщение раньше, оно должно быть выше моего предыдущего ответа. Но все об одном и том же.

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

Снесли, но сертификат не генерится с ошибкой на CAA . Каким образом сгенерировать тогда ? По мануалам вводишь команду

certbot certonly --nginx -d mail.domain.ru

и всё генерится , а тут ошибка

Ded_Yurec ()
Ответ на: комментарий от Ded_Yurec

Не успел исправить
PSS
1.
Сравните выхлопы

host -t CAA ya.ru 8.8.8.8
и
host -t CAA mail.domain.ru 8.8.8.8

Надеюсь понятнее станет.

2.
Не забывайте про TTL

anc ★★★★★ ()
Ответ на: комментарий от anc

[root@mail2 ~]# host -t CAA ya.ru 8.8.8.8
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases:

ya.ru has CAA record 0 issue "globalsign.com"
ya.ru has CAA record 0 issuewild "globalsign.com"
ya.ru has CAA record 0 issue "yandex.ru"
ya.ru has CAA record 0 issuewild "yandex.ru"

[root@mail2 ~]# host -t CAA mail2.domain.ru 8.8.8.8
Using domain server:
Name: 8.8.8.8
Address: 8.8.8.8#53
Aliases:

mail2.domain.ru has no CAA record

Ded_Yurec ()
Ответ на: комментарий от Ded_Yurec

Ну и хорошо. Если вы только что снесли записи, и при этом только перед этим пробовали запускать certbot, то предполагаю вам надо подождать пока TTL не истечет.

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от Ded_Yurec

Посмотрите ещё

host -t CAA domain.ru 8.8.8.8
Записи при попытке получении сертификата применяются до последнего совпадения. Например у вас есть CAA domain.tld а у host.domain.tld её нет. Применена будет CAA domain.tld. Или есть у host.domain.tld она может отличаться от domain.tld но применена будет написанная у host.domain.tld.

ЗЫ И при начальном тестировании крайне рекомендую использовать параметр certbot --dry-run А то явно вы ещё не знаете что делаете, так несколько попыток и потом в бан попадете у LE, и ждите пока разбанят.

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от anc

У нас вообще CAA никогда не было и слышим про эту запись впервые . Ошибка всё равно сохраняется, такое ощущение что без этой CAA записи не обойтись

Ded_Yurec ()
Ответ на: комментарий от Ded_Yurec

Неа, я не поленился проверить. Все робит. Правда у меня не вариант nginx а dns-rfc2136, но роли это по большому счету как раз не играет для dns-rfc2136 чуть больше заморочек.

anc ★★★★★ ()
Ответ на: комментарий от Ded_Yurec

PS Ну и если все хорошо и записей нет, повторюсь, смотрите по своему TTL и только по истечении срока пробуйте ещё раз.
И если не заработает покажите полный выхлоп cretbot ( напоминаю про запуск с --dryrun)

anc ★★★★★ ()
Последнее исправление: anc (всего исправлений: 1)
Ответ на: комментарий от sanekmihailow

[root@mail2 ~]# certbot certonly --nginx -d mail2.dm.domain.ru --dry-run
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator nginx, Installer nginx
Starting new HTTPS connection (1): acme-staging-v02.api.letsencrypt.org
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for mail2.dm.domain.ru
Using default address 80 for authentication.
Waiting for verification...
Challenge failed for domain mail2.dm.domain.ru
http-01 challenge for mail2.dm.domain.ru
Cleaning up challenges
Some challenges have failed.

IMPORTANT NOTES:
 - The following errors were reported by the server:

   Domain: mail2.dm.domain.ru
   Type:   caa
   Detail: CAA record for mail2.dm.domain.ru prevents issuance



Ded_Yurec ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.