забыл написать, что при использовании файла senders-login-maps правая
часть строки с логинами будет expand'иться, если в ней найдет хотя бы
один неэкранированный знак доллара
т. е. если для пользователей определенного домена нужно указать, что их
адреса должны полностью совпадать с SMTP логинами, то можно в
senders-login-maps не перечислять всех пользователей, а написать:
*@domain.tld : $sender_address
вторым случае использования в правой части переменной $sender_address
может быть необходимость указания некоторым пользователям нескольких
логинов, а остальные должны обеспечить точное соответствие логинов и
адресов:
addr1 на domain1.tld : login1 : login2
addr2 на domain1.tld : login3
addr1 на domain2.tld : login4
* : $sender_address
Victor Ustugov wrote:
> реализован аналог postfix'ового reject_authenticated_sender_login_mismatch
>> призван ограничить использование произвольных envelope from
> аутентифицированными отправителями
>> работает в двух вариантах:
>> 1. $sender_address должен совпадать с $authenticated_id
> 2. соответствие $sender_address и $authenticated_id описано в отдельном
> файле senders-login-maps
>> ограничения при использовании AMTP аутентификации
> NO - не использовать ограничения
> LOGIN_MISMATCH - адреса аутентифицированных отправителей должны
> совпадать с SMTP логинами
> LOGIN_MISMATCH_MAPS - адреса аутентифицированных отправителей должны
> соответствовать SMTP логинам
> соответствие указывается в файле
> CONFDIR/senders-login-maps
> define(`confSMTP_AUTH_RESTRICT', `NO')dnl
>>> первый пункт на самом деле расширен для случаев, когда $authenticated_id
> не имеет доменной части. в таком случае проводятся две дополнительные
> проверки. либо $sender_address должен совпадать с комбинацией
> $authenticated_id и $qualify_domain либо $authenticated_id должен
> совпадать с $sender_address_local_part, а $sender_address_domain должен
> входить в local_domains
>>> по второму пункту:
> в файле senders-login-maps соответствие envelope from и SMTP логинов
> указывается в виде
>> sender_address : login1 : login2 : loginN
>> sender_address может быть указан в виде полного адреса, wildcard или
> регуляного выражения. список логинов тоже на самом деле будет
> преобразован к регулярному выражению (буду отрезаны лидирующие и
> концевые пробелы, все двоеточия с прилегающими пробелами заменены на
> pipe'ы, вся конструкция взята в круглые скобки с добавлением в начале и
> конце маркеров начала и конца строки). потом $authenticated_id будет
> сравнено с полученным регулярным выражением. таким образом, можно в
> списке логинов использовать элементы для построения регуляных выражений
>>> проверка соответствия envelope from и smtp логинов проводится в самом
> начале acl_check_rcpt. исключений для abuse адресов не сделаны. нужно
> будет написать на локальных postmaster/abuse, пусть отправитель
> выключает аутентификацию и пишет. об этом в SMTP ответе ему все будет
> рассказано.
>> p. s. если некоторым товарищам интересна реализация, можно смотреть тут
> фгагмент, в котором упоминается confSMTP_AUTH_RESTRICT:
>http://mta.org.ua/exim-4.63-conf/features/auth.m4>> p. p. s. все, что касается confDISABLE_AUTH_WITHOUT_TLS и
> соответствующих исключений будет в недалеком будущем перенесено в
> confSMTP_AUTH_RESTRICT. в крайнем случае в следующей версии паровоза
>
--
Best wishes Victor Ustugov mailto:victor на corvax.kiev.ua
public GnuPG/PGP key: http://victor.corvax.kiev.ua/corvax.asc
ICQ: 77186900, 32418694 CRV2-RIPE, CRV-UANIC