adron2 Posted December 5, 2012 (edited) Здравствуйте. Вопрос по postifix. Есть сервер который обслуживает некоторое количество виртуальных доменов. Домены описаны в базе mysql и добавлены в main.cf вот так virtual_mailbox_domains = mysql:/etc/postfix/mysql_relay_domains_maps.cf Клиенты этого сервера авторизируются через sasl или же описаны в mynetworks. Возникла необходимость добавить следующее ограничение: если адреса <MAIL FROM> И <RCPT TO> не являются адресами принадлежащими одному из виртуальных доменов то почту не отправлять. Другими словами: есть виртуальный домен abcd.ru Почта с admin@abcd.ru на a@mail.ru отправляется Почта с a@mail.ru на admin@abcd.ru принимается а вот почта с a@mail.ru на a@rambler.ru не отправляется даже если клиент прошел sasl аутентификацию. Подскажите пожалуйста как такое реализовать. Edited December 5, 2012 by adron2 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
vitalyb Posted December 5, 2012 А в чем смысл этого "И"? Принимать почту с левого домена от своего клиента на виртуальный домен, но блокировать в мир? Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
adron2 Posted December 5, 2012 (edited) А в чем смысл этого "И"? Принимать почту с левого домена от своего клиента на виртуальный домен, но блокировать в мир? Нет. И от клиента в мир и с мира на клиента почту разрешить. Запретить только изменение адреса клиента на домен отличный от обслуживаемых данным сервером. Edited December 5, 2012 by adron2 Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
KotikBSd Posted December 5, 2012 у одного клиента сделано так: smtpd_sender_restrictions = check_recipient_access mysql:/etc/postfix/sender.cf, check_sender_access mysql:/etc/postfix/sender.cf, reject user = post password = ????? dbname = mail table = postfix_access select_field = access where_field = source additional_conditions = and type = 'sender' hosts = 127.0.0.1 если в таблице адрес есть - разрешаем отправку, отдельная таблица делалась для того что бы туда можно было от балды адрес написать если очень нужно. А так при добавлении юзера адрес пишется в две таблички, обычную, и сюды... Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...
adron2 Posted December 5, 2012 у одного клиента сделано так: smtpd_sender_restrictions = check_recipient_access mysql:/etc/postfix/sender.cf, check_sender_access mysql:/etc/postfix/sender.cf, reject user = post password = ????? dbname = mail table = postfix_access select_field = access where_field = source additional_conditions = and type = 'sender' hosts = 127.0.0.1 если в таблице адрес есть - разрешаем отправку, отдельная таблица делалась для того что бы туда можно было от балды адрес написать если очень нужно. А так при добавлении юзера адрес пишется в две таблички, обычную, и сюды... То что нужно. Спасибо ! Вставить ник Quote Ответить с цитированием Share this post Link to post Share on other sites More sharing options...