Linuxのinfoアカウント

概要

info@hogehoge.local というようなメールアドレスは、
よくサイトのお問い合わせ窓口などに使われていると思う。

そういう通例にのっとって、
新しいサイトでも info@hogehoge.local というアカウントを作ったのですが、
サイトのお問い合わせフォームに問い合わせが入ると、
info@hogehoge.local に内容を送信する、という良くあるやつ。

メールが届かない

この時、WEBサーバにインストールしたpostfixのホスト名を、
良かれと思い hogehoge.local としました。

そしてLinuxは標準の状態で infoアカウントはエイリアスに記載されており、
postmasterへ配送されるように設定されています。
さらに、postmasterはrootへエイリアスされています。

そうすると

WEBお問い合わせフォームから、問い合わせを送る
→info@hogehoge.localへメールを送る
→WEBサーバ自身のinfoアカウントへローカル配送される*1
→info アカウントからエイリアスエイリアスされて、rootアカウントへ配送される
→お問い合わせのメールが転送されてないじゃないか!と責められる

なので、こういった事態を避けるためには

  • WEBサーバのSMTPホスト名を別名にする

fuga.hogehoge.localに変更しました。

/etc/aliases を編集

これでローカル配送されずに、
外部のメールサーバへ配送されるようになりました。

*1:WEBサーバのpostfixは自分のホスト名が[hogehoge.local]だと設定されているから