Назад | Перейти на главную страницу

Postfix: разрешить входящую почту без аутентификации, но только аутентифицированную исходящую?

Я новичок в мире почтовых серверов и работаю над настройкой своего собственного через Postfix на Ubuntu 11.10. Пока у меня аутентификация SASL работает через TLS, так что это хорошо; Я сейчас беспокоюсь о безопасности.

Вкратце: я хочу, чтобы Postfix принимал всю входящую почту без аутентификации, но разрешал только аутентифицированную исходящую почту. Это также заставляет меня задаться вопросом, есть ли у меня поддержка STARTTLS и TLS на портах 465 и 587, мне все еще нужно прослушивать порт 25? Будут ли почтовые серверы пытаться доставлять почту на 587 порт, если 25 закрыт?

Но вернемся к разрешению неаутентифицированного входящего, но только аутентифицированного исходящего, я попытался добавить

-o smtpd_sasl_auth_enable=yes
-o smtpd_client_restrictions=permit_sasl_authenticated,reject

в строку smtp в моем master.cf файл, но затем это блокирует неаутентифицированную входящую почту. Есть ли способ разрешить только входящий порт 25 и оставить порты 465/587 только для исходящих?

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

Как вы поняли, чтобы применить параметры в master.cf переопределить параметры в main.cf на портовой основе.

Для достижения своей цели вы хотите разместить ограничение как smtpd_recipient_restrictions скорее, чем smtpd_client_restrictions. Ключ к reject_unauth_destination вместо просто reject:

mydestination = aardvark.com, acme.com 
smtpd_recipient_restrictions = permit_sasl_authenticated,reject_unauth_destination

Это предотвращает отправку неаутентифицированного клиента в любой домен, за который вы не несете ответственности. В этом контексте домены, за которые вы отвечаете, - это больше, чем просто mydestination. Видеть reject_unauth_destination в руководстве.

Я часами искал, чтобы решить эту проблему, и ваш ответ точен, Кулинг.

Для получения дополнительной информации это также работает при использовании Plesk / CentOS (моя ситуация). Особенно при использовании Plesk значение permit_mynetworks также добавлен в smtpd_recipient_restrictions переменная по умолчанию, позволяющая всем доменам Plesk отправлять почту SMTP без аутентификации.

Видеть: http://forum.parallels.com/showthread.php?296391-Plesk-domains-can-submit-emails-through-unauthenticated-SMTP

Также добавлен в main.cf по соображениям безопасности (для всех, кому интересно;

smtpd_client_connection_count_limit = 20
smtpd_sasl_authenticated_header = yes
maximal_queue_lifetime = 1d