#Что произошло и как распознать неисправность
После изменения имени SMTP-сервера почтовая программа предупреждает, что имя сертификата не совпадает с адресом подключения, либо не может отправить сообщение. Например, клиент подключается к smtp.example.com, а сервер предъявляет сертификат только для другого имени. Отправка через порт 587 (STARTTLS) или 465 (TLS сразу) может быть затронута по-разному. Проверка TLS сравнивает именно имя, указанное клиентом, с удостоверенными именами сертификата (SAN). Прежний CN без соответствующего SAN в современных клиентах может быть недостаточен. Решение — согласовать имя подключения и действительный сертификат; игнорировать предупреждение небезопасно.
#Причины и отличительные признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| В сертификате нет имени подключенияПосле переименования узла сертификат не перевыпустили для нового DNS-имени. | OpenSSL показывает в SAN прежнее имя, а клиент подключается к новому. | Выпустить корректный сертификат на фактическое почтовое имя. |
| Клиент настроен на прежний или чужой серверПользователь вручную указал старый адрес сервера, который сейчас ведёт не туда. | Другой клиент с документированным именем работает; DNS отличается. | Исправить только сервер исходящей почты в настройках клиента. |
| SMTP выдаёт сертификат другого виртуального узлаНа сервере несколько TLS-контекстов/служб, сертификат для нужного SMTP-слушателя не выбран. | На 465 и 587 ответы разные, сертификат веб-сайта в порядке. | Настроить сертификат конкретно для SMTP-демона и порта. |
| Не проходит цепочка или срок действияБывает вместе с несовпадением имён, но требует отдельной проверки. | В протоколе дополнительно certificate expired или unable to verify. | Исправить актуальность и цепочку сертификата, не отключая проверку. |
#Пошаговая диагностика и исправление
- Запишите адрес и порт реального SMTP-подключенияВ почтовом клиенте откройте настройки учётной записи и раздел сервера исходящей почты (SMTP). Запишите полное имя узла, порт и тип шифрования. Для Thunderbird это «Настройки учётной записи» → «Сервер исходящей почты (SMTP)». В Outlook путь зависит от версии и типа учётной записи, ищите параметры сервера, а не только адрес email. Не вводите пароли в запрос поддержки.
- Проверьте разрешение имени в DNSВ терминале откройте
dig A smtp.example.com +shortиdig AAAA smtp.example.com +short, заменив адрес вашим почтовым именем. Адрес должен вести к фактическому SMTP-серверу или доверенному шлюзу. Если ответ устарел, сначала устраните DNS-проблему. Неправильный DNS может заставить клиента видеть сертификат постороннего узла. - Проверьте именно тот способ TLS, который использует клиентДля порта 587 с STARTTLS в терминале выполните
openssl s_client -starttls smtp -connect smtp.example.com:587 -servername smtp.example.com -verify_hostname smtp.example.com. Для 465 используйте отдельную команду без-starttls smtp. Замените хост на свой. Если подключение зависло, проверьте порт и межсетевую доступность без отключения TLS. - Прочитайте имена и срок сертификатаВ выводе OpenSSL найдите блок сведений о сертификате и итог
Verify return code; для просмотра SAN удобнее сохранить публичный сертификат либо воспользоваться штатной проверкой панели хостинга. Сопоставьте DNS-имя в настройках клиента с полем Subject Alternative Name. ЗначениеVerify return code: 0 (ok)само по себе может не подтвердить имя, если проверка выполнялась без-verify_hostname, поэтому соответствующий флаг важен. - Уточните, какая служба отдаёт сертификатВ панели управления сервером найдите настройки почты и TLS-сертификата почтовой службы. Если веб-сайт имеет правильный HTTPS-сертификат, это ещё не означает, что SMTP на 465/587 использует его. Сохраните текущий путь к сертификату и ключу, время действия, имя SMTP-узла и настройку конкретного слушателя перед правкой.
- Согласуйте имя клиента и сертификатПредпочтительно использовать документированное имя SMTP-сервера, для которого выпущен сертификат с соответствующим SAN. Если новое имя необходимо, выпустите сертификат через доверенный удостоверяющий центр и настройте именно SMTP-службу на его использование. Не копируйте закрытый ключ в общедоступную папку сайта и не устанавливайте небезопасные права на него.
- Примените изменение с проверкой конфигурацииЕсли сертификат обслуживается Exim/Postfix, перед его заменой создайте копию конфигурации и используйте штатную проверку синтаксиса MTA, затем разрешённую вашей панелью безопасную перезагрузку. Если сервер управляемый, используйте раздел управления сертификатами почты: ручная правка файлов может быть перезаписана панелью. После применения снова проверьте 587/465 именно тем способом, которым пользуется клиент.
- Проверьте отправку и возможность возвратаИз почтового клиента отправьте письмо на собственный адрес, убедитесь, что предупреждение об имени исчезло и пришло сообщение. Если вы получили новую ошибку доверия цепочке или авторизации, считайте это отдельной неисправностью и исправляйте по коду, не выбирая кнопку «Продолжить без проверки». Если настройки ухудшились, восстановите прежний сертификат/маршрут из копии и повторно проверьте соединение.
- Команды для отдельных ситуацийВыберите только подходящий вариант. Это не одна последовательность: часть команд диагностирует проблему, а часть меняет настройки или данные.
#Как проверить результат и что делать при неуспехе
Успех — оба настроенных пути SMTP, которыми действительно пользуются клиенты, предъявляют действительный сертификат с нужным SAN и проходят проверку доверия; клиент отправляет тестовое письмо без исключения TLS. Если ошибка только у одного пользователя, проверьте сохранённое старое имя в его настройках.