URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 70051
[ Назад ]

Исходное сообщение
"Помогите донастроить sendmail"

Отправлено kamserg , 06-Ноя-06 11:03 
Уважаемые форумчане!

1. Как указать сендмейлу принимать почту для доставки лишь в том случае, если клиент подписывается (mail from) одним из заданных доменов.
Сейчас часть клиентов проходят аутентификацию через SASL, для другой части разрешено отправлять через настройки access по ip-адресу. Хотелось бы, чтобы пользователи не могли отправить почту наружу подписавшись другим доменом.

2. Как реализовать в сенмейле маршрутизацию от источника?
Есть необходимость отправлять почту для заданной группы через другой relay.


Содержание

Сообщения в этом обсуждении
"Помогите донастроить sendmail"
Отправлено Medlar , 07-Ноя-06 15:47 
>Уважаемые форумчане!
>
>1. Как указать сендмейлу принимать почту для доставки лишь в том случае,
>если клиент подписывается (mail from) одним из заданных доменов.
>Сейчас часть клиентов проходят аутентификацию через SASL, для другой части разрешено отправлять
>через настройки access по ip-адресу. Хотелось бы, чтобы пользователи не могли
>отправить почту наружу подписавшись другим доменом.
Возможно, это решается с/п маскарадинга, к-й принудительно будет переписывать адрес отправителя. Просто не доводилось им пользоваться.
А если непременно нужно именно блокировать почту, подписанную чужим доменом, то можно попробовать так (не проверялось):

SLocal_check_mail
R$+                    $:$1 $| <$&{auth_authen}>
#еСЛИ ЮЗЕР ПРОШЕЛ SMTP-АВТОРИЗАЦИЮ, проверяем его e-mail
R$+ $| <$+>                    $: $>Check_email $1

#Если юзер из локальной сети (определяется по наличию сетки в файле /etc/mail/relay-domains (для access это будет длиннее)), проверяем его e-mail
R$+                    $:$1 $| <$&{client_addr}>
R$+ $| < $=R $* >                    $: $>Check_email $1

#Все остальное - пропускаем
R$*                    $@ OK

SCheck_email
#Канонизируем адрес отправителя
R$+                $: $>Parse0 $>3 $1
#Если домен наш - пропускаем
R$+<@$=w.>         $@ OK
#Нет - блокируем.
R$*                $#error: $: 553 Sorry, invalid sender domain. Please, contact to postmaster.
  

>2. Как реализовать в сенмейле маршрутизацию от источника?
>Есть необходимость отправлять почту для заданной группы через другой relay.
Почту для заданной группы получателей или от заданной группы отправителей?