04/15 MTAの認証に悩む

元々SMTPには認証はない。のでメールを配信(リレー)したい場合は何等かの認可が必要になる。基本的には社内メールのリレーであれば接続元(IP)の認証で済むのだが(smtpd_recipient_restrictions=permit_mynetworks)、今の環境はRootlessで動かしたいので、MTAのListenポートを1025にしている。

ここで問題になるのがコンテナ内へのポート転送はマスカレードされるということ、コンテナプロセスへの接続元(IP)はすべて10.0.2.100になってしまう。
かといってrootで動かしたくないし、network=host もやりたくない、そうなるとSMTPに認証をつける必要がでてくる。

そしてSASL(Simple Authentication and Security Laye)による認証が必要になる。

saslpasswd2 を試してみると、htpasswdみたにファイルとしてDBをつくってくれるものと思っていたら、SASL用のフォルダを掘って、あたらしい設定ファイルを加えたり、Postfix側の権限を調整したりと以外と面倒。。


この際、IMAPも検討してみることにした。がやはり実装が重そう。
「Dovecot」 Postfixとの相性がいい、柔軟性がある、いまのデファクトスタンダードらしい、GPTが一番推してくる。「CyrusIMAP.」は設定がかなり複雑「CourrierIMAP wiki」は確か以前はこれ使ってたよな。。と思いつつみてみると更新が停滞気味。


✔ 比較まとめ(実務目線)

構成難易度柔軟性おすすめ度
Dovecot★★★★★★★★★★★★
Cyrus IMAP★★★★★★★★★★★★
Courier★★★★★★★★
Cyrus SASLのみ★★★★★★★

Dovecot検証環境を作っていた疲れたので本日はこれまで、あとWikiの記事を追加