Разрешить указание From: только своему логину или алиасу, Тракторист, 26-Мрт-22, 15:40 [смотреть все]Товарищи, здравствуйте!Подскажите пожалуйста, как в связке postfix + mysql virtual users указать ограничение при отсылке писем авторизованным пользователем (user@my.domain), чтобы в поле FROM у него могли быть указаны адреса только или его алиасов (типа SELECT 1 FROM alias WHERE address=%FROM% AND goto=%AUTH_LOGIN% для стандартной таблицы postfixadmin'а.) Чтобы если есть алиас ivan.ivanov@my.domain указывающий на учётку dir@my.domain, то с этой учётки (dir@my.domain) могла рассылатося почта только если в поле FROM стоит или dir@my.domain или ivan.ivanov@my.domain А то правила в client_restrictions permit_sasl_authenticated - автоматически даёт позможность авторизованному пользователю вообще произвольный адрес в зоне my.domain указывать в поле FROM.
|
- Разрешить указание From: только своему логину или алиасу, Тракторист, 15:55 , 26-Мрт-22 (1)
Сразу, чтобы помидорами не закидывали: Не client_restrictions, а sender_restrictions :)
- Разрешить указание From: только своему логину или алиасу, Тракторист, 16:45 , 26-Мрт-22 (2)
> Сразу, чтобы помидорами не закидывали: Не client_restrictions, а sender_restrictions > :) В общем я так понял в процессе изучения вопроса - это делать надо с помощью smtpd_policy. Например на базе видимо perl'а можно это набросать. Осталось только это сделать, или в современном postfix'е есть позможность указания mysql проверки по двум аргументам сразу? Т.е. чтобы указать ему проверку при помощи запроса в который подставятся $from и $login?
- Разрешить указание From: только своему логину или алиасу, Тракторист, 17:54 , 26-Мрт-22 (3)
Короче решил: main.cf
smtpd_sender_login_maps = mysql:$base_directory/mysql/sender_logins.cf mysql/sender_logins.cf
hosts = unix:/var/mysql/mysql.sock user = postuser password= postpass dbname = postdbnamequery = SELECT aa.goto FROM alias aa JOIN domain bb ON bb.domain=aa.domain WHERE aa.address='%s' AND aa.active=1
|