[exim-conf] аналог reject_authenticated_sender_login_mismatch из postfix

Nikolai V. Ivanyushin nvi на sven.ru
Пт Дек 15 10:15:56 EET 2006


Здорово, аксакалы.
Я правильно понял, что в случае
define(`confSMTP_AUTH_RESTRICT', `LOGIN_MISMATCH')
иметь, что либо в файле senders-login-maps, да и вообще сам файл, 
необязательно?

Victor Ustugov пишет:
> забыл написать, что при использовании файла 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. в крайнем случае в следующей версии паровоза
>>
> 
> 


-- 
SY
Nikolai





Подробная информация о списке рассылки exim-conf