web-dev-qa-db-ja.com

Postfix + procmail-「ユーザー出力ファイルを作成できない」ため配信が失敗する-CentOS6.2

Postfixのインストール/リレーのセットアップが機能することを確認しました。現在、procmailで問題が発生しています。次のコマンドを使用して、接尾辞に配線しました。

mailbox_command = /usr/bin/procmail -f -a "$USER"

Procmailの設定には何もありませんが、次のとおりです。

LOGFILE=/var/procmailrc/log

そして、以前に働いていた受信者に電子メールを送信します(procmailを添付する前)。今ではエラーで失敗します:

Apr  6 14:07:05 localhost postfix/qmgr[15194]: D0C3DFF6E1: from=<[email protected]>, size=938, nrcpt=1 (queue active)
Apr  6 14:07:05 localhost postfix/local[1953]: D0C3DFF6E1: to=<[email protected]>, orig_to=<postmaster>, relay=local, delay=0.05, delays=0.02/0.01/0/0.02, dsn=5.2.0, status=bounced (can't create user output file. Command output: procmail: Couldn't create "/var/spool/mail/nobody" procmail: Couldn't read "//root" )
Apr  6 14:07:05 localhost postfix/bounce[1955]: warning: D0C3DFF6E1: undeliverable postmaster notification discarded
Apr  6 14:07:05 localhost postfix/qmgr[15194]: D0C3DFF6E1: removed

何らかの権限の問題があるようですが、問題が何であるかわかりません。また、それをさらに診断する方法もわかりません。ちなみに、指定したログファイルは空です。

どうすればprocmail + postfixを機能させることができますか?

1

私はちょうど同じに入り、答えを見つけます

$ Sudo chmod g+s /usr/bin/procmail

答えは
http://www.irbs.net/internet/postfix/0202/1677.html

2

ユーザーが_/var/procmailrc_に書き込む権限を持っていない可能性があります。

すべての配信を中央でログに記録することを本当に主張する場合は、logger(8)またはローカルの同等の機能でProcmailを実行するための何らかの取り決めを行うことをお勧めします。

0
tripleee

Postfixが名前をprocmailに渡していないか、誰も送信していないようです(ただし、最初の方が可能性が高いと思います)。ユーザーが仮想の場合は、特定の方法でprocmailを設定する必要があります。ユーザーが実際のシステムユーザーの場合は、procmailを別の方法で構成する必要があります。

0
NickW