なんでもシステム管理者(IT大好き?)

なんでもシステム管理者(日本酒大好き)が実質的日本酒のブログになったのでIT関連を分離しました。

Postfixでエラー!! postconfで確認を

私が管理しているメールサーバ(MTA)にはPostfixを使用しています。

長らくCentOS上でPostrfixを使用してきたのですが、残念ながらCentOSが更新されないので、Ubuntuに移行することにしました。RedHat系からDebian系に変わるので、色々と違いがありました。10年以上前にはDebianも使用していたことがありますが、時の彼方のバージョンでの経験は役に立ちません(T_T)

 今回、user unknownのエラーで悩まされました。しっかりと!確かに!間違いなく!設定済みのアカウントでuser unknownのエラーが発生するのです。

こんな感じで!!

Recipient address rejected: User unknown in local recipient table

 

ところで、UbuntuでのPostfixのデフォルトのmain.cfはCentOSの物と比較すると非常にシンプルです。行数的にもかなり少ないんです。これに引っ掛かりました。

上記のエラーでググる

main.cfで『mydestination』と、『virtual_mailbox_domains』の両方にドメインを記述するとこのエラーが発生するとあります。でも、何度、main.cfを見直しても、その両方は書いていないんです!!

そこで、ふと思い浮かんだのがpostconfというコマンドです。Postfixを使用された方ならご存知かと思います。Postfixメーリングリストで質問する際にはpostconfの結果を書いておくと、望む回答がより早くもらえたりします。

で、postconfを実行すると・・・・main.cfに記述されるよりも遥かに多い行数が出力されました。その結果を確認すると、、、ありました。『mydestination』と、『virtual_mailbox_domains』の両方にドメインが記述されていたのです。

つまり、main.cfに記述されていない項目はデフォルト値で設定されていたのです。そのため記述した覚えのない、『mydestination』と、『virtual_mailbox_domains』にドメインが設定されていたのです。

早速、修正しPostfixを再起動すると

Recipient address rejected: User unknown in local recipient table

は、出なくなりました。

CentOSに比べて少なすぎる行数に、もっと早く着目すれば良かったです(^_^;

ちなみに下の画像はHyper-V上にインストールしたUbuntu上のPostfixのデフォルトmain.cfです。少ないでしょ!!