Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Error in certificate

13 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

0 new messages