Как я могу настроить Postfix и Dovecot для привязки только к портам 587 и 143 для незашифрованной отправки и imap, соответственно, на локальном хосте, но привязаться к портам 465 и 993 для зашифрованных соединений на всех интерфейсах? Мне нужно сделать это, поскольку Thunderbird по умолчанию использует незашифрованные порты, когда видит, что они открыты.
В настоящее время это выглядит так:
localhost
- 25 (smtp)
- 143 (imap)
- 465 (smtps)
- 587 (unencrypted smtp/submission)
- 993 (imaps)
eth0
- 25 (smtp)
- 143 (imap)
- 465 (smtps)
- 587 (unencrypted smtp/submission)
- 993 (imaps)
Мне нужно, чтобы это выглядело так:
localhost
- 25 (smtp)
- 143 (imap)
- 465 (smtps)
- 587 (unencrypted smtp/submission)
- 993 (imaps)
eth0
- 25 (smtp)
- 465 (smtps)
- 993 (imaps)
Тот факт, что вы слушаете порты 143
и 587
не обязательно означает, что соединение не зашифровано. Обычно используют оппортунистический TLS, т.е. STARTTLS
с этими портами: соединение начинается как незашифрованное, но вскоре будет обновлено до зашифрованного. Единственная причина избегать STARTTLS
будет смягчать атаки типа "злоумышленник посередине" (RFC 3207; STARTTLS менее безопасен, чем TLS).
В этом случае целью было бы сделать это STARTTLS
обязательно, но возможно и отключение.
Постфикс подчинение 587
В postfix/master.cf
,
то подчинение услуга должна иметь (среди прочего):
submission inet n - - - - smtpd
-o smtpd_tls_security_level=encrypt
Чтобы отключить порт 587
полностью (отвечая на ваш вопрос), прокомментируйте submission
раздел.
Делать подчинение доступно только на localhost
(дословный ответ):
127.0.0.1:587 inet n - - - - smtpd
Dovecot IMAP 143
В dovecot/conf.d/10-auth.conf
у вас есть этот параметр с документацией в комментариях:
# Disable LOGIN command and all other plaintext authentications unless
# SSL/TLS is used (LOGINDISABLED capability). Note that if the remote IP
# matches the local IP (ie. you're connecting from the same computer), the
# connection is considered secure and plaintext authentication is allowed.
# See also ssl=required setting.
disable_plaintext_auth = yes
Чтобы отключить прослушиватель IMAP, измените его порт на 0
в dovecot/conf.d/10-master.conf:
service imap-login {
inet_listener imap {
port = 0
}
...
}
Чтобы настроить Dovecot на прослушивание IMAP 143
только на localhost
(дословный ответ):
service imap-login {
inet_listener imap {
address = 127.0.0.1
}
}