読者です 読者をやめる 読者になる 読者になる

ミッションたぶんPossible

どこにでもいるシステムエンジニアのなんでもない日記です。たぶん。

postfixでメール受信時実行プログラムのデフォルト実行ユーザーを変更

 ちょっと詰まったので忘れないようにメモメモ。


 掲題の通りなんですが、postfixでメールを受信した際にコマンドやプログラムを実行したい、なんて場合があると思います。この時、デフォルト設定だと「nobody」ってユーザーで実行されちゃうんですね。実行するユーザーを指定できないと都合が悪い!という場合には「/etc/postfix/main.cf」に「default_privs」の指定を追加してみて下さい。
 初期状態のmain.cfでは「default_privs」の指定はコメントアウト(≒nobody)になっています。


 以下、サンプル。(デフォルト実行ユーザーを「nobody」→「root」に変更)

変更前

main.cf

#default_privs = nobody

→変更後

main.cf

#default_privs = nobody
default_privs = root


 main.cfを書き変えた後は、postfixの再起動を忘れないように。

$ /etc/init.d/postfix restart


 あと、変更を加える前にmain.cfはバックアップを作っておくことをお勧めします。記述間違えてpostfix動かなくなった!なんてことにならないようにしましょう。