LINUX.ORG.RU
ФорумAdmin

postfix


0

0

Задача:

Ограничить отправку почты только теми письмами, у которых в поле from стоит xxx@domail1.ru, xxx@domail2.ru.

В конфиге:

smtpd_sender_restrictions =
check_sender_access regexp:/etc/postfix/sender_access,
permit

В файле sender_access:

/.*@domain1\.ru/i OK
/.*@domain2\.ru/i OK
/.*@*/i REJECT

Похоже при этом получается, что при получении почты с внешнего адреса - письмо так-же, режется (отправитель не относится к данным доменам).

Возможно-ли разделить правило и применять его только к исходящей?

★★★★★

Исходящей почты от сервера или от локальной сети? Если от локальной сети, то, ИМХО, лучше всего запустить два postfix'а с разными конфигурациями, слушающими на разных портах и DNAT'ить всю почту от компьютеров локалки на второй postfix. Если вам интересен такой вариант, могу написать подробнее. Или все таки речь идет о писмах, возникающих на самом сервере (от crond, postmaster и т.д.)?

mky ★★★★★
()
Ответ на: комментарий от mky

Хотя с двумя postfix в этой ситуации я погорячился.
Проще в master.cf добавить строку

127.0.0.2:2500 inet n - n - 20 smtpd -o check_sender_access regexp:/etc/postfix/sender_access,permit

И DNAT правило

iptables -t nat -I PREROUTING -s 192.168.0.0/24 -j DNAT --to-destination 127.0.0.2:2500

mky ★★★★★
()
Ответ на: комментарий от mky

Почта от подсети. То есть postfix релеит почту от двух доменов. От одного происходят выбросы спама.

Если возможно, что-бы он принимал для отправки только письма с отправителем из шаблона то в принципе данная задача решена, письма от отправителя типа ranodmstring1@randomstring2.abcde будут отброшены. Но когда я пробую применить фильтр check_sender_access, то входящие письма тоже проходят этот фильтр (с соответственным результатом).

Собственно вопрос, в основном, так и должно быть? С учетом того, что письма от проблемного домена идут не от почтовых клиентов а от другого почтового сервера, по идее выходит что они ничем не отличаются от внешних (входящих).

sin_a ★★★★★
() автор топика

Два интерфейса. Повесить на каждый из них по два разных smtp процесса с разными настройками. Это не единственный вариант, но наиболее простой. Или настраивать классы:

http://www.postfix.org/RESTRICTION_CLASS_README.html

Valmont ★★★
()
Ответ на: комментарий от sdio

Локалка понятие широкое, для ethernet провайдера все его абоненты это локалка... А зачем написан rfc-2476 для меня остается загадкой, насколько я знаю, почтовые клиенты (которые MUA) по умолчанию лезут на 25 порт, почтовые сервера по умолчанию принимают почту только на 25 порту... Зачем нужен ещё один порт...

mky ★★★★★
()
Ответ на: комментарий от sin_a

>то входящие письма тоже проходят этот фильтр

>по идее выходит что они ничем не отличаются от внешних (входящих).

Если письма не чем не отличаются от внешних, то как вы их различаете?

Может нужно написать фильтр, который будет смотреть заголовки письма и сопоставлять по "Received: from" определять что это другой почтовый сервер получил письмо от локальной сети и проверять адрес...

Или может нужно настроить тот сервер, от которого принимает письма ваш сервер...

mky ★★★★★
()
Ответ на: комментарий от mky

по 25 порту почтовые сервера обмениваются почта, а доверенные клиенты с почтовиком -- по 587.

Файерволом запрещаем локальным юзерам доступ на 25 порт, а внешним серверам на 587.

Ну и политика разная для подключившихся к 25 порту или 587.

sdio ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.