
Сценарий:
Сервер Postfix работает на VPS у хостинговой компании.
Внутри офиса работает IMAP-сервер Dovecot.
Мы хотим, чтобы Postfix отправлял почту, которую он получает, на сервер Dovecot IMAP, используя наименьшее количество промежуточного программного обеспечения. Эта передача происходит через открытый интернет.
Итак, я вижу, что Postfix может использовать LMTP для виртуального транспорта по TCP, а Dovecot может прослушивать LMTP по TCP.
Но что мешает мошенническому почтовому серверу обойти Postfix и просто вставить почту в Dovecot через открытый порт LMTP?
Можно ли защитить службу LMTP с помощью метода аутентификации, например, пароля через TLS (как минимум) или двусторонней проверки сертификата TLS, подписанного общим центром сертификации, чтобы два сервера могли быть уверены в подлинности друг друга (в идеале)?
решение1
LMTP (Local Mail Transfer Protocol) предназначен для локальной доставки сообщений электронной почты и по своей сути не поддерживает аутентификацию, как SMTP. Когда вы используете LMTP для передачи почты между Postfix и Dovecot, особенно через открытый Интернет, безопасность становится проблемой.
Для решения вашего конкретного сценария:
Шифрование TLS:И Postfix, и Dovecot поддерживают шифрование TLS для LMTP. Это гарантирует, что данные, передаваемые между двумя серверами, зашифрованы и не могут быть легко перехвачены.
Двусторонняя проверка сертификата TLS:Это также известно как взаимный TLS (mTLS). С mTLS и клиент (Postfix в данном случае), и сервер (Dovecot) представляют сертификаты, чтобы подтвердить свою идентичность друг другу. Это гарантирует, что обе стороны являются доверенными лицами. И Postfix, и Dovecot поддерживают mTLS.
Правила брандмауэра:Один из способов предотвращения несанкционированного доступа — ограничить IP-адреса, которые могут подключаться к порту Dovecot LMTP. Вы можете настроить правило брандмауэра, чтобы разрешить только подключения с IP-адреса сервера Postfix.
VPN или SSH-туннель:Другой подход — настроить VPN или SSH-туннель между сервером Postfix и сервером Dovecot. Таким образом, трафик LMTP отправляется по этому защищенному туннелю, добавляя еще один уровень безопасности.
Аутентификация:Хотя сам LMTP не поддерживает аутентификацию, вы можете использовать другие механизмы, такие как вышеупомянутые mTLS или VPN, для эффективной «аутентификации» соединения.
В итоге, хотя LMTP не поддерживает традиционную аутентификацию по имени пользователя/паролю, вы можете защитить соединение между Postfix и Dovecot, используя комбинацию TLS, mTLS, правил брандмауэра и, возможно, туннеля VPN или SSH. Подход mTLS, при котором оба сервера проверяют сертификаты друг друга, является надежным методом обеспечения идентичности обеих сторон.