先日IMAP4の通信経路をSSL化したが、SMTPの通信経路はSSL化していない。そこで、今回はSSL化を行うことにする。ただし、単にSSL化するだけでは安全ではないので、SMTPに認証をかける。
最近のpostfixは、dovecotが提供するSASLを用いてSMTP AUTHが実現できるため、その方針で行う。
/etc/dovecot/dovecot.conf に、以下の設定を追加する。
auth default { mechanisms = plain login socket listen { client { path = /var/spool/postfix/private/auth mode = 0660 user = postfix group = postfix } } }
この設定を追加し、
# /etc/init.d/dovecot restart
で設定を有効にする。
/etc/postfix/main.cf に、以下の設定を追加する。
smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth
古い Outlook Express で接続する必要がある場合は
broken_sasl_auth_clients = yes
も追加する。
この設定を追加し、
# /etc/init.d/postfix restart
で設定を有効にする。
以下の対応を行う。
SMTPSとsubmissionは、いずれか一方のみ行えばかまわない。
もちろん、上記設定後、
# /etc/init.d/postfix restart
で設定を有効にする。
/etc/postfix/main.cf に、以下の設定を追加する。
smtpd_tls_cert_file = /etc/ssl/certs/server.crt smtpd_tls_key_file = /etc/ssl/private/server.key smtpd_tls_CAfile = /etc/ssl/gouketsuCA/cacert.pem
先日作成したサーバ証明書と秘密鍵、CA証明書を設定。
/etc/postfix/master.cf の設定を書き換える。
smtps inet n - - - - smtpd -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
上記記述がデフォルトでコメントアウトされているので、行頭の"#"をはずす。
/etc/postfix/master.cf の設定を書き換える。
submission inet n - - - - smtpd -o smtpd_etrn_restrictions=reject -o smtpd_enforce_tls=yes -o smtpd_sasl_auth_enable=yes
SMTPS同様、上記記述がデフォルトでコメントアウトされているので、行頭の"#"をはずす。
MUAの設定を、IMAPとSMTPの接続にSSLもしくはSTARTTLSを使うよう変更するだけ。
主に、Postfixのぺーじで公開されている、以下に示すPostfixドキュメントの和訳を見ながら設定を行いました。作者および訳者、サイト運営各位に感謝致します。
*Messages* の更新情報取得には、antenna.lirs もしくは index.rdfをご利用ください。 豪傑アンテナ の LIRSからも取得可能です。