Назад | Перейти на главную страницу

SSL-сертификаты Postfix с Comodo (PostivieSSL) - «Неизвестный орган»

У меня проблема с моим почтовым сервером, на котором запущена установка postfix / dovecot, по сути, когда я запускаю различные тесты безопасности, мне говорят, что мои сертификаты не могут быть проверены, см. Здесь: https://ssl-tools.net/mailservers/brailsford.xyz

Имеющиеся у меня сертификаты и связанные файлы (действительные согласно https://brailsford.xyz) являются:

У меня также есть мой ключевой файл для crt, brailsford_xyz.key

Моя установка в постфиксе:

smtpd_tls_cert_file=/etc/ssl/certs/postfixchain.crt
smtpd_tls_key_file=/etc/ssl/private/brailsford.key
smtpd_tls_CAfile=/etc/ssl/certs/COMODORSADomainValidationSecureServerCA.crt
smtpd_use_tls=yes

Цепочка постфиксов представляет собой комбинацию трех ранее полученных сертификатов в следующем порядке:

  1. brailsford_xyz.crt
  2. COMODORSADomainValidationSecureServerCA.crt
  3. AddTrustExternalCARoot.crt

Может ли кто-нибудь посоветовать, что я делаю не так и как я могу это исправить?

Кажется, ваша цепочка сертификатов SSL не завершена (или, скорее, отсутствует ссылка). Посмотреть на то openssl s_client возвращается, когда я подключаюсь к вашему почтовому серверу:

$ openssl s_client -CAfile /etc/ssl/certs/ca-certificates.crt -starttls smtp -connect brailsford.xyz:587
CONNECTED(00000003)
depth=1 C = GB, ST = Greater Manchester, L = Salford, O = COMODO CA Limited, CN = COMODO RSA Domain Validation Secure Server CA
verify error:num=20:unable to get local issuer certificate
verify return:0
---
Certificate chain
 0 s:/OU=Domain Control Validated/OU=PositiveSSL/CN=brailsford.xyz
   i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
 1 s:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Domain Validation Secure Server CA
   i:/C=GB/ST=Greater Manchester/L=Salford/O=COMODO CA Limited/CN=COMODO RSA Certification Authority
 2 s:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
   i:/C=SE/O=AddTrust AB/OU=AddTrust External TTP Network/CN=AddTrust External CA Root
---

Как видите, есть сертификат с эмитентом (i) из "/ C = GB / ST = Greater Manchester / L = Salford / O = COMODO CA Limited / CN = COMODO RSA Certification Authority", но цепочка не содержит сертификата, выданного этому субъекту доверенным центром сертификации (или другим промежуточный СА).

Насколько я могу судить, вам не хватает хотя бы этого сертификата (как третьего звена в вашей цепочке): https://support.comodo.com/index.php?/Default/Knowledgebase/Article/View/966/108/intermediate-1-sha-2-comodo-rsa-certification-authority

Это серийный номер 27: 66: ee: 56: eb: 49: f3: 8e: ab: d7: 70: a2: fc: 84: de: 22 и Subject: C=GB, ST=Greater Manchester, L=Salford, O=COMODO CA Limited, CN=COMODO RSA Certification Authority

Ваша директива:

smtpd_tls_CAfile=/etc/ssl/certs/COMODORSADomainValidationSecureServerCA.crt

странно. Вероятно, вы вообще не захотите указывать это - это для CA, который выдает сертификаты клиента, если вы используете аутентификацию сертификата клиента. Это не для вашей сети.

Обычно достаточно поместить ваш сертификат, а затем каждый из его промежуточных сертификатов CA в формате PEM, соединенных вместе в smtpd_tls_cert_file. Корень указывать не обязательно. Еще раз проверьте, что вы используете там правильные сертификаты.

Ошибка, которую выдает ssl-tools.net, немного загадочна. Рассмотрите возможность использования openssl s_client для проверки наличия проблем.