Postfix SSLの設定

DovecotでSSLの設定はできたので、今度はPostfixでの設定をしてみる。
以前の記事: Dovecot v2.x SSLの設定

証明書関連のファイルの名前は次の通りとする。

  • 証明書: example.com.crt
  • 認証鍵: example.com.key
  • 中間証明書: example.com.ca-bundle


main.cfにSSL(TLS)関連の設定を追加しておく。

/etc/postfix/main.cf

smtpd_tls_security_level = may
smtpd_tls_cert_file = /etc/pki/tls/certs/example.com.crt
smtpd_tls_key_file = /etc/pki/tls/certs/example.com.key
smtpd_tls_CAfile = /etc/pki/tls/certs/example.com.ca-bundle
smtpd_tls_session_cache_database = btree:/var/lib/postfix/smtpd_scache

smtps(465番)ポートでの認証を受けるためにmaster.cfを編集する。すでにsmtpsの記述はされているのでコメントをはずすだけで良い。milterは使ってないので最後の行はコメントアウトのままにしておいた。

/etc/postfix/master.cf

smtps     inet  n       -       n       -       -       smtpd
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#  -o milter_macro_daemon_name=ORIGINATING

あとはPostfixをリロードして設定を反映する。

/etc/init.d/postfix reload

smtpd_use_tls = yesでSSLを有効にしている記事を良くみかけたけど、マニュアルの翻訳サイトによるとPostfix 2.3移行はsmtpd_tls_security_levelが新しい設定なのでこちらを採用した。

デフォルトではPostfix SMTPサーバのTLSは無効になっており、見た目にはそのままの Postfixと違いはありません。明示的に “smtpd_tls_security_level = may” (Postfix 2.3以降) or “smtpd_use_tls = yes” (古いですがまだサポートされています) を使って有効にしてください。

原文でも確認したところ、すでにsmtpd_use_tlsの記述はなくなっていた。

Postfix TLSサポート: Postfix 2.3 ドキュメント

Thunderbird+ワイルドカードSSL証明書の組み合わせで試したが、STARTSSLでも465番ポートでのメール送信でも特に問題はなかった。

参考記事: メールサーバー間通信内容暗号化(OpenSSL+Postfix+Dovecot) – CentOSで自宅サーバー構築

関連記事

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です