SSL-сертификаты для почты
В ispmanager настройка почты для работы по защищенному соединению SSL происходит на двух уровнях:
- настройка сертификата верхнего уровня для всего почтового сервера Exim;
- настройка сертификатов для каждого из почтовых доменов.
Для чего почтовому серверу нужен сертификат
Сертификат верхнего уровня или основной сертификат почтового сервера, используется при установлении защищенного SMTP-соединения. При получении письма принимающий сервер использует сертификат сервера, с которого было отправлено письмо, и генерирует сеансовый ключ. Ключ используется для шифрования передаваемых данных между серверами, расшифровать которые смогут только участники соединения.
Технически, почта будет работать с любым сертификатом верхнего уровня, однако соответствие почтового домена и IP-адреса необходимо для того, чтобы письма не блокировались антиспам политиками других принимающих почтовых серверов.
Сертификат для почтового сервера по умолчанию
В ispmanager сертификат для почтового сервера настраивается во время установки панели. По умолчанию генерируется самоподписанный SSL-сертификат, где в качестве домена (Common Name) используется имя сервера hostname.
Сертификат по умолчанию обеспечивает возможность установления зашифрованного соединения без дополнительной настройки, однако с таким сертификатом не удастся пройти проверку подлинности на других серверах, так как на принимающем сервере проверяется соответствие домена, с которым установлено соединение, с доменом в сертификате. Поэтому письма от сервера с таким сертификатом, вероятнее всего будут заблокированы антиспам-фильтрами на принимающей стороне.
Чтобы этого избежать, необходимо заменить самоподписанный сертификат валидным сертификатом. В большинстве случаев для этой цели подойдёт бесплатный сертификат от Let’s Encrypt, который может выпустить и в дальнейшем продлевать панель ispmanager. При необходимости можно установить уже имеющийся платный сертификат, выпущенный другим удостоверяющим центром.
Предварительная настройка
Перед установкой SSL-сертификата для почтового сервера убедитесь, что соблюдены следующие условия:
- почтовый сервер установлен;
- почтовый домен должен быть зарегистрирован и доступен из сети;
- А-запись почтового домена должна вести на IP-адрес сервера с ispmanager;
- hostname сервера с ispmanager должно соответствовать почтовому домену;
- PTR-записи публичных IP-адресов на сервере с ispmanager должны указывать на hostname.
Установка Let’s Encrypt для почтового сервера
1. Получите бесплатный сертификат Let'Encrypt. Для этого:
- в основном меню ispmanager перейдите в раздел SSL-сертификаты;
- на панели инструментов нажмите кнопку Добавить сертификат → Let's Encrypt:
- заполните информацию и выпустите сертификат на доменное имя почтового сервера. Информация о выпуске Let's Encrypt доступна в документации.
2. После успешного выпуска, скопируйте нужный сертификат. Для этого:
- в основном меню ispmanager перейдите в раздел SSL-сертификаты;
- выделите нужный сертификат и нажмите Информация о SSL-сертификате на панели инструментов или в раскрывающемся меню выберите Данные сертификата;
- скопируйте данные или оставьте эту вкладку в панели открытой для дальнейшего копирования:
3. Перенесите данные. Для этого:
- в основном меню ispmanager перейдите в раздел Почта;
- на панели инструментов нажмите Почтовые домены:
- на панели инструментов нажмите SSL-сертификат:
- В появившейся форме будет отображен текущий сертификат, его ключ и цепочка. Замените эти поля значениями нового SSL-сертификата, которые были скопированы на шаге 2.
Установка существующего сертификата для почтового сервера
Для установки существующего сертификата выполните пункт 3 из инструкции установки Let’s Encrypt для почтового сервера (абзац выше).
Сертификаты для почтовых доменов
В ispmanager для каждого почтового домена есть возможность подключить отдельный SSL-сертификат. Это необходимо для прохождения проверки на соответствие почтового домена и имени в сертификате.
Чтобы существующий SSL-сертификат был доступен для почтового домена, его сначала нужно добавить в панель.
1. В основном меню ispmanager перейдите в раздел SSL-сертификаты;
2. На панели инструментов нажмите Добавить сертификат и выберите подходящий вариант:
3. Заполните данные и нажмите Создать.
После добавления сертификата подключите его в свойствах почтового домена. Для этого:
4. В основном меню ispmanager перейдите в раздел Почта;
5. На панели инструментов нажмите Почтовые домены:
6. Выделите нужный почтовый домен и нажмите Изменить параметры почтового домена на панели инструментов или в раскрывающемся меню выберите Изменить;
7. Поставьте галочку Защищенное соединение (SSL) и в поле SSL-сертификат выберите только что добавленный сертификат:
8. Сохраните изменения.
Расположение файлов cертификатов
SSL-сертификат верхнего уровня
Для ОС МСВСфера, Rocky Linux, AlmaLinux
/etc/exim/ssl/exim.crt
и /etc/exim/ssl/exim.key
(сертификат и ключ соответственно)
Для ОС Debian, Ubuntu
/etc/exim4/ssl/exim.crt
и /etc/exim4/ssl/exim.key
(сертификат и ключ соответственно)
SSL-сертификаты для доменов
По умолчанию все создаваемые для пользователя SSL-сертификаты помещаются в директорию /var/www/httpd-cert/имя_пользователя
.
После редактирования или создания домена, сертификаты подключаются следующим образом:
Для Exim
Создаются копии сертификата и ключа в директории /путь_к_exim/ssl
с именами «доменное_имя.crt» и «доменное_имя.key». Первый файл — это открытый ключ (или сам сертификат), а второй — закрытый ключ (или ключ сертификата).
Для Dovecot
В директории /etc/email/certs
создаются символьные ссылки на сертификат и ключ с именами «доменное_имя.crt» и «доменное_имя.key» соответственно. А в директории /etc/dovecot/certs
генерируются файлы конфигурации «доменное_имя.conf», содержащие запись вида:
local_name доменое_имя {
ssl_cert = </etc/email/certs/доменное_имя.crt
ssl_key = </etc/email/certs/доменное_имя.key
}