Ключевые слова:mail, sendmail, (найти похожие документы)
Date: Wed, 22 Dec 2004 13:33:32 +0500
From: Slawa Olhovchenkov <Slawa_Olhovchenkov@f500.n5030.z2.fidonet.org.>
Newsgroups: ftn.ru.unix
Subject: Проверка локальных пользователей в sendmail
>> Это автор скорее всего недостаточно хорошо изучил матчасть или под
>> виртуальными доменами понимает нечто иное. Поскольку именно этот метод у
>> меня великолепно пашет с виртуальними доменами. Со всеми раскрытиями
>> алиасов.
NG> Уже интересно... А как при этом в sendmail идет отправка на домены?
NG> Через mailertable или через "доработанный" локальный мейлер?
Через mailertable. Да, локальный майэлер -- естественно дефолтно-шлимыльный,
файлово-mboxный. Все домены под раздачу заводятся через mailertable.
domain cyrusv2:domain.
Часть после cyrusv2: на данный момент значения не имеет.
Дабы ничего не порушилось installworld я все засунул в локальный конфиг, благо
там буквально несколько строчек:
# Cyrus smmapd(8)'s map for verifying mailboxes of local recipients
LOCAL_CONFIG
Kcyrus socket -a<OK> -T<TMPF> /usr/local/cyrus/socket/smmapd
Mcyrusv2, P=[IPC], F=lsDFMnqXzA@/:|m5,
S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP, E=\r\n,
T=DNS/RFC822/SMTP,
A=FILE /usr/local/cyrus/socket/lmtp
LOCAL_RULESETS
SLocal_localaddr
R$+ $: $> "ckuser_cyrus" $1
Sckuser_cyrus
#Query smmapd(8)
R$+ $: <!> $1 $| $(cyrus $1 $: $)
#Cyrus OK, skip
R<!> $* $| $* <OK> $@ $1
#Over quota or lookup failure
R<!> $* $| $* <TMPF> $# error $@ 4.3.0 $: "451 TEMPFAIL."
#Mailbox doesn't exist or its ACL forbids posting
R<!> $* $| $* $# error $@ 5.1.1 $: "550 Mailbox is not available."
Всякие алиасы прописываются в userdb. Со всеми домеенными частями
vasya@domain:maildrop petya@domain
vasya@domain:maildrop boba@domain
Если хочется весь домен сливать в один ящик, то это можно устроить следующим
способом (дальнейшее не тестировалось, переделка на ходу другого работающего
варианта, возможны глюки и просто неработоспособность):
в userdb пишем
@domain:maildrop alluser@domain
В мэйлере EnvToSMTP исправляем на VDom и добавляем
Kvluser btree -m -a<> /etc/mail/userdb
SVDom
R$+ $: $> "VLrelay" $1
R$+ $: $> "EnvToSMTP" $1
SVLrelay
R$* $: $(vluser $1:maildrop $)
R$* :maildrop<> $@ $1
R$+ @ $+ $: $1 $(vluser @$2 $)
R$+ @ $+ :maildrop<> $@ @$2
R$* :maildrop $: $1
Это единственное что действительно заработало. Все остальное, в т.ч. http://anfi.homeunix.net/sendmail/ где вродебы все круто описано заставить работать не удалось. Хотя поучиться кое-чему там можно.
Спасибо!