Попробовал решить проблемы с помошью c check_compat. Тестовый конфиг:
divert(-1)
include(`/usr/share/sendmail-cf/m4/cf.m4')
VERSIONID(`1001')
OSTYPE(linux)
DOMAIN(generic)
FEATURE(`nouucp',`reject')
FEATURE(`nocanonify')
FEATURE(`always_add_domain')
FEATURE(`allmasquerade')
FEATURE(access_db,`hash -o -T<TMPF> /etc/mail/access')
FEATURE(`compat_check')
MASQUERADE_AS(`domain.ru')
MASQUERADE_DOMAIN(`domain.ru')
FEATURE(`masquerade_envelope')
FEATURE(local_procmail,`',`procmail -t -Y -a $h -d $u')dnl
Dmdomain.ru
define('confDOMAIN_NAME', '$w.$m')dnl
#define(`SMART_HOST', `smtp:not.my.smtp.ru')dnl
define(`PROCMAIL_MAILER_PATH',`/usr/bin/procmail')dnl
define(`confTO_IDENT', `0')
define(`confBIND_OPTS', `WorkAroundBrokenAAAA')
define(`confMAX_MIME_HEADER_LENGTH', `256/128')
define(`confNO_RCPT_ACTION', `add-to-undisclosed')
define(`confPRIVACY_FLAGS', `needmailhelo,authwarnings,noexpn,novrfy,noverb')
MAILER(smtp)dnl
MAILER(procmail)dnl
LOCAL_RULESETS
F{allusers} /etc/mail/allusers
Scheck_compat
R$+ $| $+ $: $2 $| $>3 $1
R$+ $| $+ $: $2 $| $>3 $1
R$- $| $+ $@ok
R$+ $| $- $@ok
Radmin@$* $| R$={lgtallusers}@domain.ru $@ok
Radmin@$* $#error $@5.7.1 $: "550 admin - local only"
По идее пользователь admin должен посылать почту только в пределах domain.ru, однако на практике это не работает. Может кто-нить видит, в чем беда?