Страница 1 из 1

не получается написать acl

Добавлено: 2007-12-19 15:35:08
dimts
только сейчас начал разбираться с exim, но чего-то туго идет :(
Задача стоит некоторым пользователя разрешить почту только в пределах локальной сети.
Написал:

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

...
domainlist local_domains = mydomen.com.ru : mydomen.com
...
acl_smtp_mail = acl_check_sender
...
acl_check_sender:
deny message = you don't send mail to internet
     hosts = +relay_from_hosts
     domains = !+local_domains
     senders = vasya@+local_domains
accept
Предполагал, что даный acl должен запретить прохождение почтовых сообщений с vasya@mydomen.com и vasya@mydomen.com.ru всем кроме local_domains.
Но этого не происходит, мало того не пропускает отправку со всех остальных локальных адресов (в том числе и на local_domains), хотя письма в спуле похоже висят, т.к. при отключении вышеприведенного художества, через какое-то время письма доставляются.
ЗЫ: Пользователи пока системные.

Re: не получается написать acl

Добавлено: 2007-12-19 15:40:26
dikens3
senders = vasya@+local_domains
Конструкция неправильная. Это же не русский язык. (могучий) :-)

Так нельзя писать. :-)
Так писать нельзя. :-)
Писать так нельзя. :-)
Нельзя так писать. :-)
Нельзя писать так. :-)
Писать нельзя так. :-)

Re: не получается написать acl

Добавлено: 2007-12-19 16:22:33
dimts

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

 ^vasya\@mydomen\.com 
так можно?

Re: не получается написать acl

Добавлено: 2007-12-20 11:39:16
dimts

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

    ...
    domainlist local_domains = mydomen.com.ru : mydomen.com
    ...
    acl_smtp_mail = acl_check_sender
    ...
    acl_check_sender:
    deny message = you don't send mail to internet
         hosts = +relay_from_hosts
         domains = !+local_domains
         senders = ^vasya\@mydomen\.com
    accept
Написал так ситуация не изменилась :cry:

Re: не получается написать acl

Добавлено: 2007-12-20 11:47:56
Alex Keda
домен = домен васи
локал_парт = вася

Re: не получается написать acl

Добавлено: 2007-12-20 12:16:11
dimts
lissyara писал(а):домен = домен васи
локал_парт = вася
Я так понимаю, что это вообще запретить васе отправлять почту, а надо чтобы в пределах "домен васи" почта ходила

Re: не получается написать acl

Добавлено: 2007-12-20 12:31:24
dimts
Я себе это примерно так представляю, может у меня мозги не в том направлении шевелится пытаются :|
Список локальных доменов:

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

domainlist local_domains = mydomen.com.ru : mydomen.com
создаю ACL для MAIL

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

acl_smtp_mail = acl_check_sender
Сам ACL

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

acl_check_sender:
    deny message = you don't send mail to internet
         hosts = +relay_from_hosts
         domains = !+local_domains
         senders = ^vasya\@mydomen\.com
    accept
Перевожу примерно так:

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

отказать 
     с локальной сети
     на нелокальные домены
     если адрес отправителя в поле MAIL является vasya@mydomen.com(любые символы)
если же поле MAIL содержит что угодно другое - акцепт.

Re: не получается написать acl

Добавлено: 2007-12-20 12:48:05
dikens3
Нормально всё ты думаешь:

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

acl_check_sender:
    deny message = you don't send mail to internet
         hosts = +relay_from_hosts
         domains = !+local_domains
         senders = vasya@*

    accept
Так пробуй.

Re: не получается написать acl

Добавлено: 2007-12-20 12:49:21
Alex Keda
не. ты непонял.
именно как написал так и делай

Re: не получается написать acl

Добавлено: 2007-12-20 13:04:42
dimts
lissyara писал(а):не. ты непонял.
именно как написал так и делай
всмысле
домен = домен васи
локал_парт = вася
???
ну сейчас попробую, но тогда я вообще нифига не понимаю :(

Re: не получается написать acl

Добавлено: 2007-12-20 13:15:37
dimts
в логах вот такая фигня всплывает во всех вариантах:

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

2007-12-20 13:09:49 H=mydomain.com.ru [ip.my.mail.serv] temporarily rejected MAIL <vasya@mydomain.com>: cannot test domains condition in MAIL ACL
Где-то, блин, накосячил :(

Re: не получается написать acl

Добавлено: 2007-12-20 14:01:11
Alex Keda
с отладкой запусти

Re: не получается написать acl

Добавлено: 2007-12-20 21:49:25
dikens3
dimts писал(а):в логах вот такая фигня всплывает во всех вариантах:

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

2007-12-20 13:09:49 H=mydomain.com.ru [ip.my.mail.serv] temporarily rejected MAIL <vasya@mydomain.com>: cannot test domains condition in MAIL ACL
Где-то, блин, накосячил :(
Типа нельзя использовать domains = !+local_domains в acl_smtp_mail. :-)

Re: не получается написать acl

Добавлено: 2007-12-21 10:27:22
dimts
Типа нельзя использовать domains = !+local_domains в acl_smtp_mail.
Да еще вчера сам допер :| . Чего меня климануло даже не представляю

так работает:

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

acl_smtp_rcpt = acl_chk_rcpt
....
acl_chk_rcpt:
deny message = relay not permitted
        hosts = +relay_from_hosts
        domains = !+local_domains
        condition = ${if match{$sender_address}{vasya@mydomain.com*}{yes}{no}}
...
Вот только, все потуги напрасны, если vasya@mydomain.com, который не имеет права посылать почту за пределы local_domains, пропишет у себя на клиенте $sender_address пользователя который имеет права посылать почту за пределы local_domains. :(

Re: не получается написать acl

Добавлено: 2007-12-21 11:11:15
dikens3
В прилепленной теме я привёл пример, как это можно запретить.

Re: не получается написать acl

Добавлено: 2007-12-21 15:14:25
dimts
dikens3 писал(а):В прилепленной теме я привёл пример, как это можно запретить.
Да спасибо, почитаю, если у самого не получится... Лучше сам снанала попробую, то что сам делаешь не забываешь по крайней мере

Re: не получается написать acl

Добавлено: 2007-12-21 15:23:04
BlackPhantom
тю, зачем городить огород? не выдавай пароли тем кто не должен во внешку слать и все :) авторизированные будут слать куда угодно, а те кого релеишь, только внутри домена ;)