Здорово, аксакалы.
Я правильно понял, что в случае
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