SSL для почтового сервера: порты, сертификат и настройка, термины и чек-лист

Подробности, цифры, термины и чек-лист по теме «SSL для почтового сервера: порты, сертификат и настройка». Страница справочника целиком: SSL для почтового сервера.

Коротко о теме

SSL для почтового сервера: сертификат на имя mail.домен, бесплатного Let's Encrypt хватает. Postfix, Dovecot, STARTTLS и проверка openssl.

Подробности по разделам

Какие порты и режимы SSL используют SMTP, IMAP и POP3

SSL/TLS включает защиту сразу при подключении, STARTTLS начинает как обычное соединение и переключается на шифрованное командой. Порт 25 служит для передачи почты между серверами: шифрование там включается по возможности, сертификат обычно не проверяют. RFC 8314 рекомендует клиентам режим с шифрованием с первого байта, то есть 465, 993 и 995.

На какое имя выпускать сертификат для почтового сервера

Отдельный сертификат для почты нужен не всегда. Имя почтового сервера можно добавить в сертификат сайта: -d example.com -d www.example.com -d mail.example.com. Либо взять Wildcard, он закрывает mail, smtp и imap, но не сам домен без поддомена.

Как подключить сертификат к Postfix и Dovecot

Ключевые файлы Let's Encrypt устроены так: fullchain.pem содержит сертификат и цепочку, privkey.pem закрытый ключ ( закрытый ключ ). Цепочка нужна полностью, иначе часть программ покажет ошибку: цепочка сертификатов.

Как проверить SSL на почтовом сервере командой openssl

Исправляется заменой адреса сервера в настройках: имя не совпадает. Остальные способы: команды OpenSSL.

Ключевые цифры

Термины на странице

IMAP
IMAP хранит письма на сервере и синхронизирует их между устройствами.
Самоподписанный сертификат
Самоподписанный сертификат выпускает сам владелец. Браузеры ему не доверяют, он годится для тестов.
SMTP
SMTP это протокол отправки писем.
Wildcard
Wildcard-сертификат действует на все поддомены одного уровня, например *.example.ru.
Цепочка сертификатов
Цепочка сертификатов связывает сертификат сайта с корневым через промежуточные. Без промежуточного часть браузеров покажет ошибку.
PEM
PEM это текстовый формат файлов сертификатов и ключей, файлы .crt и .key часто в нём же.
Certbot
Certbot это программа, которая получает и продлевает сертификаты Let's Encrypt на сервере.
TLS
TLS это протокол шифрования, на котором работает HTTPS. Название SSL осталось по привычке.

Что проверить

  1. Выпустите сертификат после того, как домен указывает на сервер.
  2. Проверьте, что установлена вся цепочка сертификатов.
  3. Включите перенаправление с HTTP на HTTPS.
  4. Добавьте SPF, DKIM и DMARC для домена.
  5. Проверьте MX-записи после настройки.
  6. Отправьте тестовое письмо на внешний ящик и посмотрите, не ушло ли оно в спам.

Связанные страницы