Postfix MTAとして設定され、muninノードも実行するサーバーがあります。/etc/aliasesに追加しました:
root: [email protected]
postfixのmain.cfで構成されています:
mydomain = my.domain
myorigin = $mydomain
alias_database = hash:/etc/aliases
relay_domains = my.domain
append_at_myorigin = no
...
エイリアスまたはpostfix構成ファイルを変更するたびに、newaliases
またはpostmap <cfgfile>
を呼び出してpostfixを再起動しました。
Muninが(エラー)電子メールを送信するたびに、これをメールログファイルで受け取ります。
Dec 22 16:45:19 myserver postfix/pickup[21509]: 5CFBA2011E0: uid=995 rom=<munin>
Dec 22 16:45:19 myserver postfix/cleanup[22094]: 5CFBA2011E0:
message-id=<[email protected]>
Dec 22 16:45:19 myserver postfix/qmgr[21510]: 5CFBA2011E0: from=<munin>, size=999, nrcpt=1
(queue active)
Dec 22 16:45:20 myserver postfix/smtp[22099]: 5CFBA2011E0: to=<[email protected]>,
orig_to=<root>, relay=internal.my.domain[XXX.182.189.136]:25, delay=4.2,
delays=3/0.01/1.1/0.09, dsn=5.1.1, status=bounced (Host
internal.my.domain[XXX.182.189.136] said: 550 5.1.1 <[email protected]>: Recipient address
rejected: User unknown in virtual mailbox table (in reply to RCPT TO command))
Dec 22 16:45:20 myserver postfix/cleanup[22094]: A98B72012D2:
message-id=<[email protected]>
Dec 22 16:45:20 myserver postfix/bounce[22100]: 5CFBA2011E0: sender non-delivery
notification: A98B72012D2
"root"(orig_to)が "[email protected]"に置き換えられなかった理由がわからない(エイリアスファイルで指定されているように)。 postfixはmyorigin
値を "root"に追加しているようです。 append_at_myorigin = no
も指定しているため、理由はわかりません。
何が起きてる? 「ルート」アドレスを「[email protected]」に置き換えたいのですが。どうやってやるの?
「my.domain」が正確に何であるかはわかりませんが、 aliases はローカル配信にのみ使用されます。
代わりに、おそらく virtual maps を使用します。
Root(またはSudo)として
/ etc/postfix/virtual(またはvirtualがどこにあるか)
root [email protected]
Main.cf
virtual_maps = hash:/etc/postfix/virtual
または(Postfixの最新バージョン)
virtual_alias_maps = hash:/etc/postfix/virtual
仮想マップが変更された後
# postmap /etc/postfix/virtual
# postfix reload
「root」宛てのメールはすべて「[email protected]」にリダイレクトされることに注意してください。
私の場合、/ etc/aliasesを使用したいと思います(一部のパッケージで使用されているため、変更を確認して/ etc/postfix/virtualに複製する必要があります
それが機能しない理由は、myoriginにあります。 myoriginを設定した場合、rootに送信されたすべてのメール、誰も、その他のローカルは自動的にroot @ myoriginに変更されます
私の場合:/ etc/aliases:
nobody: root
root: [email protected]
/ etc/mailname:
myhost.example.com
/etc/postfix/main.cf:
myorigin = /etc/mailname
myhostname = othername.example.com
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = othername, localhost.localdomain, localhost
この場合、nobodyに送信されたすべてのメールは[email protected]に変更され(myoriginのため)、その後どこかに送信されます。
目的地を変更する必要があります:
mydestination = myhost.example.com, othername, localhost.localdomain, localhost
nobodyに送信されたメールはrootにリダイレクトされ、nobody @ myhost.example.comに変更されますが、mydestinationにあるため、エイリアスを調べて[email protected]に変更されますが、mydestinationにあるため、エイリアスを調べて、mydestinationにない[email protected]にリダイレクトされ、送信先に送信されます; D