Error in certificate

6 views
Skip to first unread message

Michael Dukelsky

unread,
Mar 9, 2020, 12:15:01 PM3/9/20
to
Привет, All!

Посылаю имейл mail'ом.
echo $(date '+%F %T') " $msg_body" | env MAILRC=/dev/null /usr/bin/mail -n \
-r "$mailfrom" \
-s "$subject" \
-S smtp="smtp.mydomain.com:587" \
-S smtp-use-starttls \
-S ssl-verify=ignore \
-S smtp-auth=login \
-S smtp-auth-user="$mailfrom" \
-S 'smtp-auth-password=тута_лежит_пароль' \
-S nss-config-dir="/etc/pki/nssdb" \
$mailto

В процессе переговоров с сервером mail получает
220 2.0.0 Ready to start TLS
Error in certificate: Peer's certificate issuer is not recognized.
[...]
issuer=CN=Let's Encrypt Authority X3,O=Let's Encrypt,C=US

Из-за того, что указано ssl-verify=ignore, письмо всё равно отсылается. Можно
ли как-то сделать, чтобы Let's Encrypt был признан? Или перенаправить вывод в
/dev/null и забить на эту проблему?

Желаю успехов, All!
За сим откланиваюсь, Michael.

... node (at) f1042 (dot) ru

Sergey Anohin

unread,
Mar 9, 2020, 1:45:02 PM3/9/20
to
Hello, Michael!

MD> Из-за того, что указано ssl-verify=ignore, письмо всё равно отсылается.
MD> Можно ли как-то сделать, чтобы Let's Encrypt был признан? Или
MD> перенаправить вывод в /dev/null и забить на эту проблему?

Можно, ноги растут скорее всего из-за того что LE CA до сих пор не было в банде
корневых сертификатов, как в EL8 я хз, но в 7ке
вроде не было, и оно туда руками суется.

То есть у тебя установлено это:
yum install ca-certificates
Ты качаешь корневые LE и кладешь в каталог
/etc/pki/ca-trust/source/anchors/

и потом делаешь
update-ca-trust

ЗЫ Также с LE приходилось костылить php.ini прописывая список CA там...Это на
случай например отправки смтп-пхп модулем
через секурное соединение.

С наилучшими пожеланиями, Sergey Anohin.

Michael Dukelsky

unread,
Mar 9, 2020, 2:25:01 PM3/9/20
to
Привет, Sergey!

09 March 2020 20:30, Sergey Anohin послал(а) письмо к Michael Dukelsky:

MD>> Из-за того, что указано ssl-verify=ignore, письмо всё равно
MD>> отсылается. Можно ли как-то сделать, чтобы Let's Encrypt был
MD>> признан? Или перенаправить вывод в /dev/null и забить на эту
MD>> проблему?

SA> Можно, ноги растут скорее всего из-за того что LE CA до сих пор не
SA> было в банде корневых сертификатов, как в EL8 я хз, но в 7ке вроде не
SA> было, и оно туда руками суется.

SA> То есть у тебя установлено это:
SA> yum install ca-certificates
SA> Ты качаешь корневые LE и кладешь в каталог
SA> /etc/pki/ca-trust/source/anchors/

Положил туда это: https://letsencrypt.org/certs/trustid-x3-root.pem.txt (без
.txt)

SA> и потом делаешь
SA> update-ca-trust

и сделал
# update-ca-trust extract
Ничего не изменилось. CentOS 7.7.1908.

Желаю успехов, Sergey!

Sergey Anohin

unread,
Mar 9, 2020, 2:45:02 PM3/9/20
to
Hello, Michael!

MD> Положил туда это: https://letsencrypt.org/certs/trustid-x3-root.pem.txt
MD> (без .txt)

Попробуй так:

wget "https://letsencrypt.org/certs/isrgrootx1.pem"
-O"/etc/pki/ca-trust/source/anchors/lets-encrypt-isrgrootx1.pem​"
wget "https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem"
-O"/etc/pki/ca-trust/source/anchors/lets-encrypt-x3-cross-signed.pem​"
wget "https://letsencrypt.org/certs/letsencryptauthorityx3.pem"
-O"/etc/pki/ca-trust/source/anchors/letsencryptauthorityx3.pem​"

Michael Dukelsky

unread,
Mar 9, 2020, 2:55:02 PM3/9/20
to
Привет, Sergey!

09 March 2020 21:39, Sergey Anohin послал(а) письмо к Michael Dukelsky:

MD>> Положил туда это:
MD>> https://letsencrypt.org/certs/trustid-x3-root.pem.txt (без .txt)

SA> Попробуй так:

SA> wget "https://letsencrypt.org/certs/isrgrootx1.pem"
SA> -O"/etc/pki/ca-trust/source/anchors/lets-encrypt-isrgrootx1.pem​
^^^^^^^
А зачем это в имени?

Sergey Anohin

unread,
Mar 9, 2020, 3:05:02 PM3/9/20
to
Hello, Michael!
MD> и сделал
MD> # update-ca-trust extract
MD> Ничего не изменилось. CentOS 7.7.1908.

А твой сертификат не попал в REVOKED? Недавно LE рассылал тут письма что
некоторые сертификаты надо принудительно перевыпустить.

ЗЫ Манипуляции с корневыми сертификатами ты ведь делаешь на той машине где
скрипт запускаешь?

Sergey Anohin

unread,
Mar 9, 2020, 3:20:02 PM3/9/20
to
Hello, Michael!

SA>> wget "https://letsencrypt.org/certs/isrgrootx1.pem"
SA>> -O"/etc/pki/ca-trust/source/anchors/lets-encrypt-isrgrootx1.pem​
MD> ^^^^^^^
MD> А зачем это в имени?

возможно копипаста кривая, отсюда

https://blog.bayrell.org/ru/linux/ssl/46-dobavlenie-kornevogo-sertifikata-letsencrypt.html

Michael Dukelsky

unread,
Mar 9, 2020, 3:25:01 PM3/9/20
to
Привет, Sergey!

09 March 2020 21:40, Sergey Anohin послал(а) письмо к Michael Dukelsky:

MD>> и сделал
MD>> # update-ca-trust extract
MD>> Ничего не изменилось. CentOS 7.7.1908.
SA> А твой сертификат не попал в REVOKED? Недавно LE рассылал тут письма
SA> что некоторые сертификаты надо принудительно перевыпустить.

Я такого письма не получал. Сегодня сертификат на сервере обновился.

SA> ЗЫ Манипуляции с корневыми сертификатами ты ведь делаешь на той машине
SA> где скрипт запускаешь?

Да.

Michael Dukelsky

unread,
Mar 9, 2020, 3:45:01 PM3/9/20
to
Привет, Sergey!

09 March 2020 22:05, Sergey Anohin послал(а) письмо к Michael Dukelsky:

SA> https://blog.bayrell.org/ru/linux/ssl/46-dobavlenie-kornevogo-sertifik
SA> ata-letsencrypt.html

Не помогло.

Dmitry Ivanov

unread,
Mar 9, 2020, 4:15:02 PM3/9/20
to
Здравствуйте, Michael.

Вы писали 10 марта 2020 г., 1:22:06:

> Я такого письма не получал. Сегодня сертификат на сервере обновился.

https://community.letsencrypt.org/t/revoking-certain-certificates-on-march-4/114864
--
С уважением,
Dmitry

Eugene Subbotin

unread,
Mar 9, 2020, 6:20:01 PM3/9/20
to
On 09.03.2020 19:59, Michael Dukelsky wrote:

MD> Посылаю имейл mail'ом.
MD> echo $(date '+%F %T') " $msg_body" | env MAILRC=/dev/null
MD> /usr/bin/mail -n \ -r "$mailfrom" \
MD> -s "$subject" \
MD> -S smtp="smtp.mydomain.com:587" \
MD> -S smtp-use-starttls \
MD> -S ssl-verify=ignore \
MD> -S smtp-auth=login \
MD> -S smtp-auth-user="$mailfrom" \
MD> -S 'smtp-auth-password=тута_лежит_пароль' \
MD> -S nss-config-dir="/etc/pki/nssdb" \
MD> $mailto
MD>
MD> В процессе переговоров с сервером mail получает
MD> 220 2.0.0 Ready to start TLS
MD> Error in certificate: Peer's certificate issuer is not
MD> recognized. [...]
MD> issuer=CN=Let's Encrypt Authority X3,O=Let's Encrypt,C=US
MD>
MD> Из-за того, что указано ssl-verify=ignore, письмо всё равно
MD> отсылается. Можно ли как-то сделать, чтобы Let's Encrypt был
MD> признан? Или перенаправить вывод в /dev/null и забить на эту
MD> проблему? Желаю успехов, All! За сим откланиваюсь, Michael.

На хосте вся цепочка подключена?
Проверь: openssl s_client -starttls smtp -connect smtp.mydomain.com:587
-servername smtp.mydomain.com
Не ругается ни на что?
Должно всю доверенную цепочку показать и признать как-то так:

CONNECTED(00000005)
depth=2 O = Digital Signature Trust Co., CN = DST Root CA X3
verify return:1
depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
verify return:1
depth=0 CN = smtp.mydomain.com
verify return:1
---
Certificate chain
0 s:CN = smtp.mydomain.com
i:C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
1 s:C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
i:O = Digital Signature Trust Co., CN = DST Root CA X3
---
Server certificate

--
... It's full of stars!

Andrew Kant

unread,
Mar 10, 2020, 3:50:02 AM3/10/20
to
Hello Michael!

Monday March 09 2020 22:31, Michael Dukelsky wrote to Sergey Anohin:

MD> @RealName: Михаил Дукельский
MD> Привет, Sergey!

MD> 09 March 2020 22:05, Sergey Anohin послал(а) письмо к Michael Dukelsky:

SA>> https://blog.bayrell.org/ru/linux/ssl/46-dobavlenie-kornevogo-serti
SA>> fik ata-letsencrypt.html

MD> Hе помогло.

Hе надо тупо пользоваться советами, которые не понимаешь. Выясни, где твой
openssl хранит список доверенных, добавь к нему.

Как говорится, man openssl :)

Hачни с команды
openssl verify -show_chain твой_файл_с_сертификатом
(при необходимости надо либо указать тип pem/der либо преобразовать в то,
что он берет по умолчанию - всё есть в мане).

Good bye!
Andrew

Sergey Anohin

unread,
Mar 10, 2020, 5:05:01 AM3/10/20
to
Hello, Eugene!

ES> На хосте вся цепочка подключена?

кстати да, из-за этого тоже косяки могут быть, vsftpd например хочет fullchain
а в эксиме можно так:

tls_certificate = cert.pem
tls_privatekey = privkey.pem
tls_verify_certificates = chain.pem

в постфиксе, не помню, но наверняка либо так, либо с fullchain

Alexey Fayans

unread,
Mar 10, 2020, 6:45:01 AM3/10/20
to
Hello Michael!

On Mon, 09 Mar 2020 at 18:59 +0300, you wrote to All:

MD> Из-за того, что указано ssl-verify=ignore, письмо всё равно
MD> отсылается. Можно ли как-то сделать, чтобы Let's Encrypt был признан?
MD> Или перенаправить вывод в /dev/null и забить на эту проблему?

А можно айпишник SMTP сервера? Интересно посмотреть, всё ли там хорошо с
сертификатом.

Вообще, проблема должна решаться с помощью yum -y update ca-certificates без
каких-либо дополнительных плясок с бубном.


... Music Station BBS | https://bbs.bsrealm.net | telnet://bbs.bsrealm.net

Michael Dukelsky

unread,
Mar 10, 2020, 9:35:02 AM3/10/20
to
Привет, Andrew!

10 March 2020 09:34, Andrew Kant послал(а) письмо к Michael Dukelsky:

MD>> Hе помогло.

AK> Hе надо тупо пользоваться советами, которые не понимаешь. Выясни, где
AK> твой openssl хранит список доверенных, добавь к нему.

AK> Как говорится, man openssl :)

AK> Hачни с команды
AK> openssl verify -show_chain твой_файл_с_сертификатом
AK> (при необходимости надо либо указать тип pem/der либо преобразовать в
AK> то, что он берет по умолчанию - всё есть в мане).

У тебя какой-то другой openssl. У меня в команде openssl verify нет
-show_chain.

Желаю успехов, Andrew!

Michael Dukelsky

unread,
Mar 10, 2020, 9:35:02 AM3/10/20
to
Привет, Eugene!

10 March 2020 02:14, Eugene Subbotin послал(а) письмо к Michael Dukelsky:

MD>> Посылаю имейл mail'ом.
MD>> echo $(date '+%F %T') " $msg_body" | env MAILRC=/dev/null
MD>> /usr/bin/mail -n \ -r "$mailfrom" \
MD>> -s "$subject" \
MD>> -S smtp="smtp.mydomain.com:587" \
MD>> -S smtp-use-starttls \
MD>> -S ssl-verify=ignore \
MD>> -S smtp-auth=login \
MD>> -S smtp-auth-user="$mailfrom" \
MD>> -S 'smtp-auth-password=тута_лежит_пароль' \
MD>> -S nss-config-dir="/etc/pki/nssdb" \
MD>> $mailto
MD>>
MD>> В процессе переговоров с сервером mail получает
MD>> 220 2.0.0 Ready to start TLS
MD>> Error in certificate: Peer's certificate issuer is not
MD>> recognized. [...]
MD>> issuer=CN=Let's Encrypt Authority X3,O=Let's Encrypt,C=US
MD>>
MD>> Из-за того, что указано ssl-verify=ignore, письмо всё равно
MD>> отсылается. Можно ли как-то сделать, чтобы Let's Encrypt был
MD>> признан? Или перенаправить вывод в /dev/null и забить на эту
MD>> проблему? Желаю успехов, All! За сим откланиваюсь, Michael.

ES> На хосте вся цепочка подключена?
ES> Проверь: openssl s_client -starttls smtp -connect
ES> smtp.mydomain.com:587 -servername smtp.mydomain.com Не ругается ни на
ES> что? Должно всю доверенную цепочку показать и признать как-то так:

ES> CONNECTED(00000005)
ES> depth=2 O = Digital Signature Trust Co., CN = DST Root CA X3
ES> verify return:1
ES> depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
ES> verify return:1
ES> depth=0 CN = smtp.mydomain.com
ES> verify return:1
ES> ---
ES> Certificate chain
ES> 0 s:CN = smtp.mydomain.com
ES> i:C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
ES> 1 s:C = US, O = Let's Encrypt, CN = Let's Encrypt Authority X3
ES> i:O = Digital Signature Trust Co., CN = DST Root CA X3
ES> ---
ES> Server certificate

Так и есть.

Желаю успехов, Eugene!

Michael Dukelsky

unread,
Mar 10, 2020, 9:50:01 AM3/10/20
to
Привет, Dmitry!

09 March 2020 23:07, Dmitry Ivanov послал(а) письмо к Michael Dukelsky:

>> Я такого письма не получал. Сегодня сертификат на сервере обновился.

DI> https://community.letsencrypt.org/t/revoking-certain-certificates-on-m
DI> arch-4/114864

Моего серийного номера в списке нет.

Желаю успехов, Dmitry!

Eugene Subbotin

unread,
Mar 10, 2020, 10:00:02 AM3/10/20
to
On 10.03.2020 17:18, Michael Dukelsky wrote:

ES>> На хосте вся цепочка подключена?
ES>> Проверь: openssl s_client -starttls smtp -connect
ES>> smtp.mydomain.com:587 -servername smtp.mydomain.com Не
ES>> ругается ни на что? Должно всю доверенную цепочку показать
ES>> и признать как-то так:

ES>> CONNECTED(00000005)
ES>> depth=2 O = Digital Signature Trust Co., CN = DST Root CA X3
ES>> verify return:1
ES>> depth=1 C = US, O = Let's Encrypt, CN = Let's Encrypt
ES>> Authority X3 verify return:1
ES>> depth=0 CN = smtp.mydomain.com
ES>> verify return:1
ES>> ---
ES>> Certificate chain
ES>> 0 s:CN = smtp.mydomain.com
ES>> i:C = US, O = Let's Encrypt, CN = Let's Encrypt
ES>> Authority X3 1 s:C = US, O = Let's Encrypt, CN = Let's
ES>> Encrypt Authority X3 i:O = Digital Signature Trust Co.,
ES>> CN = DST Root CA X3 ---
ES>> Server certificate

MD> Так и есть.

Ага, если ошибок доверия в openssl нет, то есть смысл посмотреть что в самом
nssdb у тебя: certutil -L -d /etc/pki/nssdb что выдаёт?

Sergey Anohin

unread,
Mar 10, 2020, 10:20:01 AM3/10/20
to
Hello, Michael!

MD> Моего серийного номера в списке нет.

А на почтовике у тебя postfix или exim? Покажи кусок где сертификаты
прикручены?

Michael Dukelsky

unread,
Mar 10, 2020, 10:40:01 AM3/10/20
to
Привет, Sergey!

10 March 2020 17:05, Sergey Anohin послал(а) письмо к Michael Dukelsky:

SA> А на почтовике у тебя postfix или exim? Покажи кусок где сертификаты
SA> прикручены?

Postfix.
smtpd_tls_cert_file = /etc/pki/tls/certs/cert.pem
smtpd_tls_CAfile = /etc/pki/tls/certs/fullchain.pem
smtpd_tls_CApath = /etc/pki/tls/certs
Это софтлинки. Они ссылаются на сертификаты от letsencrypt.

Желаю успехов, Sergey!

Michael Dukelsky

unread,
Mar 10, 2020, 10:40:01 AM3/10/20
to
Привет, Eugene!

10 March 2020 17:54, Eugene Subbotin послал(а) письмо к Michael Dukelsky:

ES> Ага, если ошибок доверия в openssl нет, то есть смысл посмотреть что в
ES> самом nssdb у тебя: certutil -L -d /etc/pki/nssdb что выдаёт?

Certificate Nickname Trust Attributes
SSL,S/MIME,JAR/XPI

Желаю успехов, Eugene!

Eugene Subbotin

unread,
Mar 10, 2020, 10:55:02 AM3/10/20
to
On 10.03.2020 18:23, Michael Dukelsky wrote:

ES>> Ага, если ошибок доверия в openssl нет, то есть смысл
ES>> посмотреть что в самом nssdb у тебя: certutil -L -d
ES>> /etc/pki/nssdb что выдаёт?
MD>
MD> Certificate Nickname
MD> Trust Attributes
MD> SSL,S/MIME,JAR/XPI

Хе, так база пустая :) Ну и нафиг она нужна тогда там...
Попробуй вместо -S nss-config-dir="/etc/pki/nssdb" указать:
-S ssl-ca-dir="/etc/pki/tls/certs"

Michael Dukelsky

unread,
Mar 10, 2020, 11:25:01 AM3/10/20
to
Привет, Eugene!

10 March 2020 18:52, Eugene Subbotin послал(а) письмо к Michael Dukelsky:

ES>>> Ага, если ошибок доверия в openssl нет, то есть смысл
ES>>> посмотреть что в самом nssdb у тебя: certutil -L -d
ES>>> /etc/pki/nssdb что выдаёт?
MD>>
MD>> Certificate Nickname
MD>> Trust Attributes
MD>> SSL,S/MIME,JAR/XPI

ES> Хе, так база пустая :) Ну и нафиг она нужна тогда там...
ES> Попробуй вместо -S nss-config-dir="/etc/pki/nssdb" указать:
ES> -S ssl-ca-dir="/etc/pki/tls/certs"

Missing "nss-config-dir" variable.
. . . message not sent.

Eugene Subbotin

unread,
Mar 10, 2020, 11:45:01 AM3/10/20
to
On 10.03.2020 19:21, Michael Dukelsky wrote:

ES>>>> Ага, если ошибок доверия в openssl нет, то есть
ES>>>> смысл посмотреть что в самом nssdb у тебя: certutil
ES>>>> -L -d /etc/pki/nssdb что выдаёт?
MD>>> Certificate Nickname
MD>>> Trust Attributes
MD>>> SSL,S/MIME,JAR/XPI
ES>> Хе, так база пустая :) Ну и нафиг она нужна тогда там...
ES>> Попробуй вместо -S nss-config-dir="/etc/pki/nssdb" указать:
ES>> -S ssl-ca-dir="/etc/pki/tls/certs"
MD> Missing "nss-config-dir" variable.
MD> . . . message not sent.

Ну раз ему так очень надо эту базу, то оставь этот параметр и мой добавь.
Видимо
nssdb используется для S/MIME, но т.к. там нет корневых сертификатов, то их
стоит брать из каталога /etc/pki/tls/certs или файла
/etc/pki/tls/certs/ca-bundle.crt соответствующими параметрами ssl-ca-dir или
ssl-ca-file. Странно, конечно, что оно само не подтягивает оттуда их, надо
попробовать будет на CentOS воспроизвести это.

Sergey Anohin

unread,
Mar 10, 2020, 1:10:01 PM3/10/20
to
Hello, Michael!

MD> Postfix.
MD> smtpd_tls_cert_file = /etc/pki/tls/certs/cert.pem
MD> smtpd_tls_CAfile = /etc/pki/tls/certs/fullchain.pem
MD> smtpd_tls_CApath = /etc/pki/tls/certs
MD> Это софтлинки. Они ссылаются на сертификаты от letsencrypt.

Я конечно не очень постфикс помню, ну если не поможет совет от Евгения,
на крайний случай попробуй

smtp_tls_cert_file = /etc/letsencrypt/live/mail.example.com/fullchain.pem
smtp_tls_key_file = /etc/letsencrypt/live/mail.example.com/privkey.pem
smtp_tls_CApath = /etc/ssl/certs
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt

Вроде как это правильный вариант

Andrew Kant

unread,
Mar 10, 2020, 2:40:01 PM3/10/20
to
Hello Michael!

Tuesday March 10 2020 16:20, Michael Dukelsky wrote to Andrew Kant:

MD> @RealName: Михаил Дукельский
MD> Привет, Andrew!

MD> 10 March 2020 09:34, Andrew Kant послал(а) письмо к Michael Dukelsky:

MD>>> Hе помогло.

AK>> Hе надо тупо пользоваться советами, которые не понимаешь. Выясни,
AK>> где твой openssl хранит список доверенных, добавь к нему.

AK>> Как говорится, man openssl :)

AK>> Hачни с команды
AK>> openssl verify -show_chain твой_файл_с_сертификатом
AK>> (при необходимости надо либо указать тип pem/der либо преобразовать
AK>> в то, что он берет по умолчанию - всё есть в мане).

MD> У тебя какой-то другой openssl. У меня в команде openssl verify нет
MD> -show_chain.

а ты хотя-бы man openssl-verify сделал?

VERIFY(1SSL) OpenSSL VERIFY(1SSL)

NAME
openssl-verify, verify - Utility to verify certificates

SYNOPSIS
openssl verify [-help] [-CAfile file] [-CApath directory] [-no-CAfile]
[-no-CApath] [-allow_proxy_certs] [-attime timestamp] [-check_ss_sig]
[-CRLfile file] [-crl_download] [-crl_check] [-crl_check_all] [-engine
id] [-explicit_policy] [-extended_crl] [-ignore_critical]
[-inhibit_any] [-inhibit_map] [-no_check_time] [-partial_chain]
[-policy arg] [-policy_check] [-policy_print] [-purpose purpose]
[-suiteB_128] [-suiteB_128_only] [-suiteB_192] [-trusted_first]
[-no_alt_chains] [-untrusted file] [-trusted file] [-use_deltas]
[-verbose] [-auth_level level] [-verify_depth num] [-verify_email
email] [-verify_hostname hostname] [-verify_ip ip] [-verify_name name]
[-x509_strict] [-show_chain] [-] [certificates]
^^^^^^^^^^^^^

DESCRIPTION
The verify command verifies certificate chains.

Вот тоже самое на оффсайте:

https://www.openssl.org/docs/man1.1.0/man1/openssl-verify.html


Если же у тебя какая-то старая версия, то, сам понимаешь, кто в этом виноват.

Good bye!
Andrew

Michael Dukelsky

unread,
Mar 10, 2020, 2:50:02 PM3/10/20
to
Привет, Sergey!

10 March 2020 19:52, Sergey Anohin послал(а) письмо к Michael Dukelsky:

SA> Я конечно не очень постфикс помню, ну если не поможет совет от
SA> Евгения, на крайний случай попробуй

SA> smtp_tls_cert_file =
SA> /etc/letsencrypt/live/mail.example.com/fullchain.pem smtp_tls_key_file
SA> = /etc/letsencrypt/live/mail.example.com/privkey.pem smtp_tls_CApath =
SA> /etc/ssl/certs smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt

SA> Вроде как это правильный вариант

Не повлияло никак. В любом случае, thunderbird отправляет на сервер письма без
ошибок и сервер доступен через https и браузер не жалуется на сертификат.
Скорее, дело в клиенте.

Желаю успехов, Sergey!

Michael Dukelsky

unread,
Mar 10, 2020, 2:50:02 PM3/10/20
to
Привет, Eugene!

10 March 2020 19:40, Eugene Subbotin послал(а) письмо к Michael Dukelsky:

ES> Ну раз ему так очень надо эту базу, то оставь этот параметр и мой
ES> добавь. Видимо nssdb используется для S/MIME, но т.к. там нет корневых
ES> сертификатов, то их стоит брать из каталога /etc/pki/tls/certs или
ES> файла /etc/pki/tls/certs/ca-bundle.crt соответствующими параметрами
ES> ssl-ca-dir или ssl-ca-file. Странно, конечно, что оно само не
ES> подтягивает оттуда их, надо попробовать будет на CentOS воспроизвести
ES> это.

Попробовал. Всё то же. Кроме того, я ещё попробовал взять соответствующие файлы
из firefox, переписал их в ~/.config/keys.
certutil -L -d sql:~/.config/keys показывает кучу сертификатов, в том числе и
Let's Encrypt Authority X3. Тем не менее, -S
nss-config-dir="sql:~/.config/keys" ситуацию не исправляет.

Желаю успехов, Eugene!

Sergey Anohin

unread,
Mar 10, 2020, 4:50:01 PM3/10/20
to
Hello, Michael!

MD> Попробовал. Всё то же. Кроме того, я ещё попробовал взять соответствующие
MD> файлы из firefox, переписал их в ~/.config/keys.
MD> certutil -L -d sql:~/.config/keys показывает кучу сертификатов, в том
MD> числе и Let's Encrypt Authority X3. Тем не менее, -S
MD> nss-config-dir="sql:~/.config/keys" ситуацию не исправляет.

Попробуй по доке, ну только адаптируй под свой почтовик:

https://coderwall.com/p/ez1x2w/send-mail-like-a-boss

Michael Dukelsky

unread,
Mar 11, 2020, 5:15:02 AM3/11/20
to
Привет, All!

09 March 2020 18:59, Michael Dukelsky послал(а) письмо к All:

MD> Error in certificate: Peer's certificate issuer is not recognized.

В результате проведённого общими усилиями исследования мне стало ясно, что дело
в кривизне mailx. В man mailx написано, что он может быть собран с
использованием NSS или OpenSSL. Поэтому я проставил "use_nss 0" в mailx.spec и
пересобрал mailx. Теперь отсылка письма замечательно работает без "-S
ssl-verify=ignore" и без "-S nss-config-dir=...".

Спасибо всем, принявшим участие в обсуждении.

Желаю успехов, All!

Michael Dukelsky

unread,
Mar 11, 2020, 5:15:02 AM3/11/20
to
Привет, Andrew!

10 March 2020 20:32, Andrew Kant послал(а) письмо к Michael Dukelsky:

AK>>> Hачни с команды
AK>>> openssl verify -show_chain твой_файл_с_сертификатом
AK>>> (при необходимости надо либо указать тип pem/der либо
AK>>> преобразовать в то, что он берет по умолчанию - всё есть в
AK>>> мане).

MD>> У тебя какой-то другой openssl. У меня в команде openssl verify
MD>> нет -show_chain.

AK> а ты хотя-бы man openssl-verify сделал?

Да, конечно. Правда в моём дистрибутиве это man verify, но это не важно. Кроме
меня, этот man читал ещё и поиск по ману, /show_chain. И тоже ничего не нашёл.

AK> Если же у тебя какая-то старая версия, то, сам понимаешь, кто в этом
AK> виноват.

Типа все, кто использует дистрибутивы LTS, - дураки.

Желаю успехов, Andrew!

Anton Gorlov

unread,
Mar 11, 2020, 6:00:01 AM3/11/20
to
Привет Michael!

09 мар 20 года (а было тогда 22:31)
Michael Dukelsky в своем письме к Sergey Anohin писал:

SA>> https://blog.bayrell.org/ru/linux/ssl/46-dobavlenie-kornevogo-ser
SA>> tifik ata-letsencrypt.html
MD> Не помогло.

На сервере надеюсь подключен fullchain.pem?




С уважением. Anton aka Stalker

Linux Registered User #386476
[#*TEAM:*#] [#_Злой СисОп_#] [*Heavy Metal!*] [*_Усачи_*]

Alexey Vissarionov

unread,
Mar 11, 2020, 9:50:02 AM3/11/20
to
Доброго времени суток, Michael!
11 Mar 2020 12:07:12, ты -> Andrew Kant:

AK>> Если же у тебя какая-то старая версия, то, сам понимаешь, кто в этом
AK>> виноват.
MD> Типа все, кто использует дистрибутивы LTS, - дураки.

Если эти люди используют LTS ради какой-то абстрактной "стабильности" - они
действительно дураки.

LTS выпускают, поддерживают и используют далеко не от хорошей жизни. И его
использование оправдано ровно в одном случае: когда нужно обеспечить работу
какого-нибудь проприетарного говна, обновляемого раз в несколько лет.


--
Alexey V. Vissarionov aka Gremlin from Kremlin
gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii

... Люди не боятся темноты - они боятся темных углов

Andrew Kant

unread,
Mar 11, 2020, 10:00:01 AM3/11/20
to
Hello Michael!

Wednesday March 11 2020 12:07, Michael Dukelsky wrote to Andrew Kant:

AK>>>> Hачни с команды
AK>>>> openssl verify -show_chain твой_файл_с_сертификатом
AK>>>> (при необходимости надо либо указать тип pem/der либо
AK>>>> преобразовать в то, что он берет по умолчанию - всё есть в
AK>>>> мане).

MD>>> У тебя какой-то другой openssl. У меня в команде openssl verify
MD>>> нет -show_chain.

AK>> а ты хотя-бы man openssl-verify сделал?

MD> Да, конечно. Правда в моём дистрибутиве это man verify, но это не важно.
В моем и то и другое - синонимы, но я тебе привел вариант, который объясняет,
что это именно для openssl.

MD> Кроме меня, этот man читал ещё и поиск по ману, /show_chain. И
MD> тоже ничего не нашёл.
Hу молодец, испробовал все варианты, а мозг включить не говорили, так что ты не
виноват - это всё кривая инструкция.

AK>> Если же у тебя какая-то старая версия, то, сам понимаешь, кто в
AK>> этом виноват.

MD> Типа все, кто использует дистрибутивы LTS, - дураки.
Hу в моем Stable почему-то всё есть. А какой у тебя дистрибутив и почему в нем
старый OpenSSL - мне не интересно, это твои проблемы. Кстати, обычно рядом с
пакетом OpenSSL (или даже в нем) идет и актуальный список трастед-сертификатов.
Если у тебя OpenSSL древний, то напрашивается мысль, что и список аналогичный,
обновись и не морочь себе и другим голову.

Hо если не хочешь - не надо, никто неволить тебя не собирается, трахайся
дальше.

Good bye!
Andrew

Reply all
Reply to author
Forward
0 new messages