随分昔にsmtp auth/TLSは設定していたけれど、saslのローカールデータベースで認証させてました。ただ、いちいちアカウント作るのが面倒。
今時はsaslauthd経由でPAMが使えるらしいので設定見直し。FreeBSD/sendmailの基本的な設定は下記参照。
https://www.freebsd.org/doc/handbook/SMTP-Auth.html
そしてちょっと弄った結果。
dnl PAM経由だと平文(PLAINとLOGIN)しか通らない TRUST_AUTH_MECH(`PLAIN LOGIN')dnl define(`confAUTH_MECHANISMS', `PLAIN LOGIN')dnl dnl A=認証をヘッダに記録, p=PLAIN/LOGIN認証にSSL/TLS必須, y=anonymnous login禁止 define(`confAUTH_OPTIONS', `A p y')dnl dnl TLS1.1以前は蹴る define(`confSERVER_SSL_OPTIONS',`+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3 +SSL_OP_NO_TLSv1 +SSL_OP_NO_TLSv1_1 +SSL_OP_CIPHER_SERVER_PREFERENCE')dnl define(`confCLIENT_SSL_OPTIONS',`+SSL_OP_NO_SSLv2 +SSL_OP_NO_SSLv3 +SSL_OP_NO_TLSv1 +SSL_OP_NO_TLSv1_1')dnl
TLSの設定については割愛。あんまり見つからなかった、TLS1.1以前を蹴る設定だけ載せときます。PAM連係は実質TLS必須ですね。平文垂れ流しとか怖すぎる…。
Submissionポートを使ったSTARTTLSとしています。常時TLSなsmtpsのほうが良いんじゃ無いの?と思った物の、smtps非推奨っぽい。
IANA的にsmtpsは一度廃止方向になりつつも、なんとなく復活。ただport 465の用途はsmtpsとssmとがブッキングしたままとか。
confAUTH_OPTIONSでTLS強制してるからまぁいいかってな感じ。
しかしsendmailの設定、m4マクロのキーワードで検索するとテンプレばかりで詳細情報ぜんぜん引っかかりませんね。
設定内容について詳細に理解しようとしたら、cf側のキーワードで検索かけないとあかんっぽいです。日本語の情報はほとんど無いけど。