URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 89700
[ Назад ]

Исходное сообщение
"POSTFIX: не работает procmail "

Отправлено tyomikh , 29-Авг-10 01:30 
Всем добрый день/вечер/ночь!

помогите плз разобраться в проблеме с postfix(2.3.3-2.1.el5_2) на RHEL 5.3:
был sendmail(8.13.8-8.el5) с работающим procmail(3.22-17.1) фильтром, я захотел прикрутить посылку писем на определенные домены через другой SMTP сервер в компании. решил перейти заодно на postfix.

в итоге если отключить mailbox_command = /usr/bin/procmail, то почта нормально раскидывается по /var/mail/<user>. Включаю procmail - все валится в /var/mail/nobody

пробовал разные опции:
mailbox_command = /usr/bin/procmail
mailbox_command = /usr/bin/procmail -a "$EXTENSION"
mailbox_command = /usr/bin/procmail -Y -a "$USER"
mailbox_command = /usr/bin/procmail -f- -a "$USER"
ни одна не работает, в лог просто сыпется:
Aug 29 01:23:06 ep-linux postfix/smtpd[337]: connect from exch.company.net[1.1.1.1]
Aug 29 01:23:07 ep-linux postfix/smtpd[337]: 2EEC4382CCD: client=exch.company.net[1.1.1.1]
Aug 29 01:23:07 ep-linux postfix/cleanup[340]: 2EEC4382CCD: message-id=<CCA29C220F733D4E89CC9563898CB78769AF190FC0@exch.company.net>
Aug 29 01:23:07 ep-linux postfix/qmgr[31600]: 2EEC4382CCD: from=<user@company.com>, size=5192, nrcpt=1 (queue active)
Aug 29 01:23:07 ep-linux postfix/local[341]: 2EEC4382CCD: to=<root@ep-linux.company.com>, relay=local, delay=0.44, delays=0.4/0.01/0/0.03, dsn=2.0.0, status=sent (delivered to command: /usr/bin/procmail -a "$EXTENSION")
Aug 29 01:23:07 ep-linux postfix/qmgr[31600]: 2EEC4382CCD: removed
Aug 29 01:23:07 ep-linux postfix/smtpd[337]: disconnect from exch.company.net[1.1.1.1]
а в логе procmail для пользователя root тишина(при sendmail туда все нормально логировалось) ~/.procmailrc не менялся

если попробовать написать mailbox_command = /tmp/custom.script.sh
и в /tmp/custom.script.sh
echo `date` >> /tmp/custom.log.file
то все работает

пробовал прописывать procmail в /etc/postfix/master.cf, но ничего путного из этого не вышло

alias_database = /etc/aliases
alias_maps = hash:/etc/aliases
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = all
mail_owner = postfix
mailbox_command = /usr/bin/procmail -a "$EXTENSION"
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = $myhostname, localhost.$mydomain, localhost
mydomain = ep-linux.company.com
myhostname = ep-linux.company.com
mynetworks = 10.0.0.0/8
myorigin = ep-linux.company.com
newaliases_path = /usr/bin/newaliases.postfix
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES
relay_domains = ep-linux.company.com
sample_directory = /usr/share/doc/postfix-2.3.3/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
transport_maps = hash:/etc/postfix/transport
unknown_local_recipient_reject_code = 550

отключение transport_maps ни на что не влияет
cat /etc/postfix/transport
gmail.com smtp:smtp2.company.com

буду благодарен совету, как разобраться. пока откатился на sendmail


ДОПОЛНЕНИЕ: опции procmail в sendmail

[root@ep-linux qv6]# grep procmail /etc/mail/*
/etc/mail/sendmail.cf:#####  $Id: local_procmail.m4,v 8.22 2002/11/17 04:24:19 ca Exp $  #####
/etc/mail/sendmail.cf:#####  $Id: local_procmail.m4,v 8.22 2002/11/17 04:24:19 ca Exp $  #####
/etc/mail/sendmail.cf:#####  $Id: procmail.m4,v 8.22 2001/11/12 23:11:34 ca Exp $  #####
/etc/mail/sendmail.cf:Mprocmail,        P=/usr/bin/procmail, F=DFMSPhnu9, S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP/HdrFromSMTP,
/etc/mail/sendmail.cf:          A=procmail -Y -m $h $f $u
/etc/mail/sendmail.cf:Mlocal,           P=/usr/bin/procmail, F=lsDFMAw5:/|@qSPfhn9, S=EnvFromL/HdrFromL, R=EnvToL/HdrToL,
/etc/mail/sendmail.cf:          A=procmail -t -Y -a $h -d $u
/etc/mail/sendmail.cf.rpmnew:#####  $Id: local_procmail.m4,v 8.22 2002/11/17 04:24:19 ca Exp $  #####
/etc/mail/sendmail.cf.rpmnew:#####  $Id: local_procmail.m4,v 8.22 2002/11/17 04:24:19 ca Exp $  #####
/etc/mail/sendmail.cf.rpmnew:#####  $Id: procmail.m4,v 8.22 2001/11/12 23:11:34 ca Exp $  #####
/etc/mail/sendmail.cf.rpmnew:Mprocmail, P=/usr/bin/procmail, F=DFMSPhnu9, S=EnvFromSMTP/HdrFromSMTP, R=EnvToSMTP/HdrFromSMTP,
/etc/mail/sendmail.cf.rpmnew:           A=procmail -Y -m $h $f $u
/etc/mail/sendmail.cf.rpmnew:Mlocal,            P=/usr/bin/procmail, F=lsDFMAw5:/|@qSPfhn9, S=EnvFromL/HdrFromL, R=EnvToL/HdrToL,
/etc/mail/sendmail.cf.rpmnew:           A=procmail -t -Y -a $h -d $u
/etc/mail/sendmail.mc:define(`PROCMAIL_MAILER_PATH', `/usr/bin/procmail')dnl
/etc/mail/sendmail.mc:FEATURE(local_procmail, `', `procmail -t -Y -a $h -d $u')dnl
/etc/mail/sendmail.mc:MAILER(procmail)dnl
/etc/mail/sendmail.mc.rpmnew:define(`PROCMAIL_MAILER_PATH', `/usr/bin/procmail')dnl
/etc/mail/sendmail.mc.rpmnew:FEATURE(local_procmail, `', `procmail -t -Y -a $h -d $u')dnl
/etc/mail/sendmail.mc.rpmnew:MAILER(procmail)dnl

эта не заработала:
mailbox_command = /usr/bin/procmail -t -Y
а эта выдала ошибку о недостаточных правах:
mailbox_command = /usr/bin/procmail -t -Y -a "$DOMAIN" -d "$USER"
...status=bounced (permission denied. Command output: procmail: Insufficient privileges )


Содержание

Сообщения в этом обсуждении
"POSTFIX: не работает procmail "
Отправлено pruss , 29-Авг-10 05:54 
Tochno ne pomnju, po-moemu versija 2.3 imeet problemi s procmailom postav' ne ran'she v.2.5.

Dlja postfix-2.5.2:

zakomentirui: mailbox_command , a master.cf postav':

myprocmail  unix  -       n       n       -       -       pipe
   flags=DRhu user=vmail argv=/usr/bin/procmail -t -m USER=${user} DOMAIN=${domain} /etc/procmailrc.

v main ne zabud' postavit': myprocmail_destination_recipient_limit = 1, a to grupovie rassilki ne budut rabotat', a tol'ko na odin address.

I procmail config v /etc:
/etc/procmailrc

INCLUDERC=/mypostfix/maildirs/$DOMAIN/$USER/.procmailrc


"POSTFIX: не работает procmail "
Отправлено tyomikh , 29-Авг-10 12:00 
Кроме обновления других вариантов нет? я точно попал на known bug?
просто в этом rhel 5.2(и в поздних, похоже, тоже) апдейтов для Postfix 2.3 нет
из поверхностного гуглинга понял, что с установкой из исходников тоже не все так просто...

"POSTFIX: не работает procmail "
Отправлено tyomikh , 29-Авг-10 12:42 
поставил 2.5.1 с помощью http://ftp.wl0.org/official/2.5/RPMS-rhel5-i386/
приведенные выше настройки в master.cf не помогли :(
домен у меня не виртуальный, а обычный
со старой директивой "mailbox_command = /usr/bin/procmail" в main.cf тоже не работает,
по прежнему все сыпется в /var/mail/nobody

может быть, проблема с правами на /usr/bin/procmail или /var/mail/* ?
я их на первых этапах этого изнурительного траблшутинга менял:
chown root:postfix /var/mail*
chown -R root:postfix /var/mail/*
chmod 1777 /var/mail

[root@ep-linux qv6]# ll /var/mail
lrwxrwxrwx 1 root postfix 10 Авг 29  2008 /var/mail -> spool/mail
[root@ep-linux qv6]# ll /var/mail/*
-rw-rw---- 1 root   postfix      0 Июн 24  2008 /var/mail/babo
-rw-rw---- 1 root   postfix      0 Июн 18  2008 /var/mail/emulator
-rw-rw---- 1 root   postfix      0 Июн 11  2008 /var/mail/eugene
-rw------- 1 nobody nobody  134432 Авг 29 12:38 /var/mail/nobody
-rw-rw---- 1 root   postfix      0 Апр 20  2009 /var/mail/past
-rw------- 1 root   root      2950 Авг 29 12:33 /var/mail/root
-rw-rw---- 1 root   postfix      0 Июн 10  2008 /var/mail/rpc
-rw-rw---- 1 root   postfix      0 Июл  1  2009 /var/mail/tyomikh
[root@ep-linux qv6]# ll /usr/bin/procmail
-rwxr-xr-x 1 root mail 92452 Июл 13  2006 /usr/bin/procmail


"POSTFIX: не работает procmail "
Отправлено tyomikh , 29-Авг-10 13:24 
таки победил, наверное не хватало RTFM. поиск на howto странице postfix.org по procmail? ссылка на http://www.freesoftwaremagazine.com/articles/focus_spam_dspam

что сделал в итоге(м.б. кому-то пригодится):
chmod ug+s /usr/bin/procmail
vi main.cf
mailbox_command = /usr/bin/procmail -d "$USER"

был еще попутный глюк с нормальным приходом почты и не уходом ее наружу, но все решилось выставлением правильного MTA с помощью
alternatives --config mta
т.к. у меня используемым по умолчанию стоял выключенный sendmail, при этом:
[root@ep-linux qv6]# ll /usr/lib/sendmail
lrwxrwxrwx 1 root root 30 Июн 10  2008 /usr/lib/sendmail -> /etc/alternatives/mta-sendmail
[root@ep-linux qv6]# ll /usr/sbin/sendmail
lrwxrwxrwx 1 root root 21 Июн 10  2008 /usr/sbin/sendmail -> /etc/alternatives/mta

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

можно считать closed, но не откажусь и от комментариев.


"POSTFIX: не работает procmail "
Отправлено tux2002 , 30-Авг-10 11:33 
>можно считать closed, но не откажусь и от комментариев.

Комментарий :) : зайдите например под пользователем babo и сделайте cat /var/mail/babo. Пользователь не имеет доступа к своему почтовому ящику :(.
PS Как я понимаю, mbox ом обычно владеет сам пользователь.