LINUX.ORG.RU
ФорумAdmin

Копирование почты с помощью sendmail


0

0

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

Возникли вопросы относительно прочитанной статьи "Копирование почты с
помощью sendmail" (http://404.salut.ru/docs/sendmail/).

Мне требуется копировать всю отправляемую пользователями через
корпоративный почтовый сервер почту на некий отведенный под это ящик
для последующего анализа и разбора в случае необходимости.

Из прочитанного понял, что нужно воспользоваться 4-м предлагаемым
вариантом copymail.m4 для возможности указания в /etc/mail/copy-users
с каких IP-адресов (почему-то не почтовых ящиков, к сожалению, т.к.
тогда будет копироваться как исходящая, так и входящая к юзеру
почта..?) производить копирование отправляемой почты в предполагаемый
"backup".

Имею FreeBSD 4.7-STABLE, штатный Sendmail 8.12.6

Вроде все сделал по написанному, создал:

/usr/share/sendmail/cf/mailer/copymail.m4 (Вариант 4)

Скопировал:

/usr/share/sendmail/cf/cf/generic-bsd4.4.mc
в
/usr/share/sendmail/cf/cf/sendmail.copy.mc

добавил туда:
define(`COPYMAIL_MAILBOX',`backup')
define(`NOCOPY_CONFIG',`/etc/mail/sendmail.cf')
MAILER(copymail)

получилась следующая последовательность:
divert(-1)
divert(0)dnl
VERSIONID(`$Id: generic-bsd4.4.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $')
OSTYPE(bsd4.4)dnl
DOMAIN(generic)dnl
define(`COPYMAIL_MAILBOX',`backup')dnl
define(`NOCOPY_CONFIG',`/etc/mail/sendmail.cf')dnl
MAILER(local)dnl
MAILER(smtp)dnl
MAILER(copymail)dnl

После делаю из sendmail.copy.mc sendmail.copy.cf:

make install-cf CF=sendmail.copy

корректно операция не проходит..

rm -f sendmail.copy.cf
m4 ../m4/cf.m4 sendmail.copy.mc > sendmail.copy.cf || ( rm -f sendmail.copy.cf && exit 1 )
chmod 444 sendmail.copy.cf
../../devtools/bin/install.sh -c -o root -g bin -m 0444 sendmail.copy.cf /etc/mail/sendmail.cf
../../devtools/bin/install.sh:No such file or directory
*** Error code 1

Stop in /usr/share/sendmail/cf/cf.

но sendmail.copy.cf создается, копирую его руками в
/etc/mail/sendmail.copy.cf

Запускаю Sendmail так:
/usr/sbin/sendmail -L sm-mta -bd -C /etc/mail/sendmail.copy.cf
/usr/sbin/sendmail -q30m -C /etc/mail/sendmail.cf


ЧТО ПРОИСХОДИТ:

Если в /etc/mail/copy-users указан IP машины или ящик, с которого
нужно (разрешено) производить копирование почты в backup во время
отправки пользователем, а отправить почту с незанесенного в copy-users
IP или адреса, то почта не доставляется вообще с такими сообщениями в
maillog:

Mar 2 23:23:56 alex sm-mta[399]: h22KNsmK000399: from=<admin@alex.mrrc.obninsk.ru>, size=494, class=0, nrcpts=1,
msgid=<13921753125.20030302232413@alex.mrrc.obninsk.ru>, proto=ESMTP, daemon=MTA, relay=server [10.0.0.1]
Mar 2 23:24:27 alex mail.local: lockmailbox /var/mail/user failed; error code 75
Mar 2 23:24:27 alex sm-mta[400]: h22KNsmK000399: to=<user@alex.mrrc.obninsk.ru>, ctladdr=<admin@alex.mrrc.obninsk.ru>
(1005/1005), delay=00:00:31, xdelay=00:00:30, mailer=local, pri=30746, dsn=4.0.0, stat=Deferred: local mailer
(/usr/libexec/mail.local) exited with EX_TEMPFAIL

Если указать почтовый ящик (кстати, что значит в виде
user@FQDN-domen?) или IP с которого после произвести отправку почты,
все происходит нормально, отправляемая почта копируется помимо
отправки и в ящик backup.

Мне знакома эта ошибка в maillog, что-то вспоминается про какой-то
ключ "-S", который где-то нужно указать при сборке .cf, но могу и
ошибаться.


Нет идей или путей иного решения дополнительного копирования отправляемой пользователями почты через сервер?

mrrc
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.