Безопасность соединения на почтовом сервере hMailServer

Существуют различные типы защиты соединений, которые могут быть включены, и использовать, от требований и функциональности, доступной на серверах hMailServer.

2023.08.22          


Когда hMailServer взаимодействует с другими клиентами и серверами (называемыми одноранговыми узлами), можно включить шифрование TCP/IP-соединения. В hMailServer это называется безопасностью соединения.

Существуют различные типы защиты соединений, которые могут быть включены, и то, что использовать, зависит от требований и функциональности, доступной на серверах hMailServer.

Connection security types (Типы защиты соединений)

None (Никто)

Этот параметр означает, что безопасность соединения отсутствует. Если вы выберете этот параметр, сообщение не будет зашифровано.

SSL/TLS

Если эта опция включена, сообщение будет зашифровано с использованием либо SSLv3, либо TLS. Непосредственно после того, как hMailServer установит соединение с удаленным одноранговым узлом, он выполнит подтверждение SSL/TLS. Если рукопожатие завершится неудачей, соединение будет прервано.

STARTTLS (необязательно)

Если эта опция включена, hMailServer попытается использовать STARTTLS с SSL/TLS. Если удаленный одноранговый узел не поддерживает STARTTLS или если одноранговые узлы не могут договориться о криптографическом протоколе и шифровании, hMailServer переключится на соединение без защиты. Если одноранговые узлы согласуют криптографический протокол и шифр, но проверка сертификата завершится неудачей, соединение будет использоваться, несмотря на неудачную проверку сертификата. В этом случае сообщение будет занесено в журнал отладки.

STARTTLS (обязательно)

Если эта опция включена, hMailServer попытается использовать STARTTLS с SSL/TLS. Если удаленный одноранговый узел не поддерживает STARTTLS или при сбое подтверждения SSL/TLS соединение будет прервано. Резервный вариант подключения без защиты не выполняется.

SSLv3 or TLS (SSLv3 или TLS)

Во время рукопожатия SSL/TLS одноранговые узлы договариваются о том, какой криптографический протокол и шифр использовать. Это основано на реализованной поддержке в двух одноранговых узлах и конфигурации. Например, если клиент, который поддерживает только SSLv3, подключается к серверу, который поддерживает как SSLv3, так и TLS1.1, то будет использоваться SSLv3. Если нет общей поддержки протокола, то рукопожатие завершится неудачей.

В hMailServer можно переопределить список шифров SSL/TLS по умолчанию. Чтобы сделать это, откройте hMailServer Administrator и перейдите в Настройки -> Дополнительно -> Безопасность (Settings -> Advanced -> Security). В текстовом поле Шифры SSL/TLS вы можете ввести список шифров OpenSSL.

Certificate verification (Проверка сертификата)

Как часть подтверждения SSL/TLS, hMailServer проверит, что сервер, к которому он подключается, имеет правильный сертификат. Это включает в себя несколько вещей, например:

  1. Удаленный одноранговый узел имеет сертификат.
  2. Сертификат действителен в настоящее время.
  3. Сертификат является доверенным, согласно хранилищу сертификатов Windows.
  4. Сертификат выдается на имя хоста, которое соответствует имени хоста, к которому подключен почтовый сервер.
  5. Сертификат не был отозван.

Если один из этих шагов не выполняется, проверка сертификата завершается неудачей.

Обратите внимание, что hMailServer не проверяет сертификаты удаленных клиентов - он проверяет только сертификаты серверов, к которым он подключается. Если конечный пользователь подключается к hMailServer, используя, например, Thunderbird или Outlook, ему не нужно предоставлять сертификат. Удаленный сервер, который доставляет почту на hMailServer, также не обязан предоставлять сертификат. В этих сценариях, когда клиент подключается к hMailServer, hMailServer предоставит сертификат, который будет использоваться для шифрования сеанса.

Disabling verification (Отключение проверки)

Во время тестирования вы можете захотеть полностью отключить проверку сертификата. Для этого вам нужно либо использовать API, либо напрямую получить доступ к базе данных hMailServer. Используя API, вы можете установить Verify Remote Ssl Certificate = False в объекте настроек. Если вы хотите обновить базу данных вручную, выполните следующую команду, а затем перезапустите службу hMailServer.


ОБНОВИТЬ hm_settings SETsetting integer = 0, ГДЕ settingname = 'Проверка удаленного SSL-сертификата'


Настоятельно рекомендуется включить проверку сертификата в процессе производства.

Certificate trust (Доверие к сертификату)

hMailServer использует функциональность Windows для проверки одноранговых сертификатов и, следовательно, будет доверять сертификатам, которым Windows настроена доверять.

MX-resolved deliveries (Поставки с разрешением MX)

Когда выполняется доставка с разрешением aMX, hMailServer будет использовать STARTTLS для обеспечения безопасности соединения (необязательно). Это означает, что hMailServer попытается настроить зашифрованный канал связи, но если это не удастся, он вернется к подключению без защиты.