Postfix. Разрешить отправку во внешний мир не всем.

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Monstr
проходил мимо
Сообщения: 6
Зарегистрирован: 2015-04-06 8:54:48

Postfix. Разрешить отправку во внешний мир не всем.

Непрочитанное сообщение Monstr » 2015-04-07 14:01:37

Приветствую!

Необходимо разрешить отправку во внешний мир нескольким пользователям, оставшимся пользователям только локальная переписка.

Попробовал вот так:

файл main.cf

Код: Выделить всё

smtpd_recipient_restrictions = check_sender_access texthash:/etc/postfix/restricted_senders, ....
smtpd_restriction_classes = local_only
local_only = check_recipient_access texthash:/etc/postfix/local_domains, reject

файл /etc/postfix/restricted_senders

Код: Выделить всё

buh@mx.test.ru local_only
gnom@mx.test.ru local_only
pasta@mx.test.ru local_only

файл /etc/postfix/local_domains

Код: Выделить всё

mx.test.ru OK

В этом варианте получается разрешения пересылки почты во внешний мир действуют на всех пользователей, кроме тех, кто прописан в списке файла /etc/postfix/restricted_senders, т.е. те кто прописан в файле переписываются только локально.

А как сделать наоборот, чтобы указанные пользователи из списка могли отправлять почту во внешний мир, а все остальные только локально? Уже мозг сломал и перечитал мануалы.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35439
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Postfix. Разрешить отправку во внешний мир не всем.

Непрочитанное сообщение Alex Keda » 2015-04-08 8:20:34

EXIM может такое.
Он вообще всё может.
Убей их всех! Бог потом рассортирует...

Monstr
проходил мимо
Сообщения: 6
Зарегистрирован: 2015-04-06 8:54:48

Postfix. Разрешить отправку во внешний мир не всем.

Непрочитанное сообщение Monstr » 2015-04-08 8:38:29

Методом долбления мозга и тыка решение получилось такое.

файл /etc/postfix/restricted_senders изменяем на такой:

Код: Выделить всё

mx.test.ru local_only
vasya@mx.test.ru permit
gnom@mx.test.ru permit
pasta@mx.test.ru permit
т.е. сначала всем разрешено только в своем домене пересылать, а уже избранным наружу.

Если postfix скрещен с Win AD (как у меня), то в конфиге сделалано следующее:

файл /etc/postfix/restricted_senders принимает вид:

Код: Выделить всё

mx.test.ru local_only
а файл main.cf будет таким:

Код: Выделить всё

smtpd_recipient_restrictions = check_sender_access ldap:/etc/postfix/restricted_senders.cf, 
                               check_sender_access texthash:/etc/postfix/restricted_senders,
                               ...,
                               ...  
smtpd_restriction_classes = local_only
local_only = check_recipient_access texthash:/etc/postfix/local_domains, reject
файл /etc/postfix/restricted_senders.cf для выборки из Win AD:

Код: Выделить всё

server_host     = 192.168.111.2
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = user@test.ru
bind_pw         = 123qwe
search_base     = ou=Struktura,dc=developer,dc=com
scope           = sub
query_filter    = (&(mail=%s)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
result_attribute= postalCode
debuglevel      = 0
В Win AD у пользователя которому необходимо будет разрешить отправку почты наружу в поле "Почтовый индекс" прописываем параметр permit. У остальных пользователей у кого это поле будет пустым переписка только локальная.