The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"check_compat в sendmail"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"check_compat в sendmail"  
Сообщение от DJ_Kill email(ok) on 01-Ноя-06, 17:29 
Version 8.13.6

Нужно чтобы определённый пользователь мог отсылать почту только внутри локального домена.

Попробовал через FEATURE(`compat_check')
Но с ней можно указать только что нельзя слать на определённый ящик, а запретить слать на всё, кроме трёх доменов (локальных) не проходит.
Compat:test@domain1.ru<@>*@* DISCARD
и прочие комбинации в access результата не дают.

Потом попробовал через m4 (тут я пока плохо разбираюсь):

LOCAL_CONFIG
KSender regex -a@LIST restricted_user

LOCAL_RULESETS
R$* $| $*             $: $2 $| $>Parse0 $>3 $1
R$* $| $*             $: $2 $| $>Parse0 $>3 $1
CheckLocalMail.
R$+<@$=w.> $| $+             $: $(Sender $1 $:$1 $) $| $3
R@LIST $| $+             $: $>CheckLocalMail $1
R$* $| $*              $@ OK

SCheckLocalMail
R$+<@$=w.>              $@ OK
R$*              $#error $: 553 Sorry, you cannot send a mail to non-local address. Please, contact to postmaster

Говорит что бесконечный цикл в первом правиле compat_check и почта пользователя ходит свободно.

Ткните носом где я накосорезил.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени, UBB]


1. "check_compat в sendmail"  
Сообщение от DJ_Kill email(ok) on 01-Ноя-06, 18:01 
Сам нашёл и косяк и другое решение. :))))

Косяк в том, что у меня локальных доменов несколько. Решение:

LOCAL_CONFIG
F{Internal}/etc/mail/intern.only
F{Domains}/etc/mail/relay-domains

LOCAL_RULESETS
SLocal_check_rcpt
R$*                $: $1 $| $>3 $&f
R$* $| <>            $@ OK
R$* $| $={Internal} <@$=w.>    $: $1
R$* $| $={Internal} <@$={Domains}>    $: $1
R$* $| $={Internal}        $: $1
R$* $| $*            $@ OK
R$*                $: $>3 $1
R$+<@$=w.>            $@ OK
R$+<@$+>            $#error $@ 5.1.8 $: "553 Sorry, you cannot send a mail to non-local address. Please, contact to postmaster."

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру