SSLによるメールサーバの通信の暗号化(「Postfix」+「Courier-IMAP」)

外部からのメールの通信を暗号化するためにSSLを利用します。
鍵・証明書はWEBサーバで作成したものを利用します。
WEBサーバへの鍵・証明書の導入方法はこちらを参照して下さい。
なお、「Courier-IMAP」では証明書と秘密鍵を別々に指定できませんので、2つを結合します。

鍵・証明書の結合

証明書と秘密鍵の結合

WEBサーバで作成した鍵・証明書を結合します。

Solaris# cat /etc/apache2/server.pem /etc/apache2/server.key > /etc/postfix/crimson-snow.net.pem

権限の変更

秘密鍵・証明書をrootのみ参照できるようにします。

Solaris# chmod 400 /etc/postfix/crimson-snow.net.pem
Portの設定

SMTPでのSSLでの通信では、TCPの465番ポートを利用しますので、/etc/servicesファイルに設定を記述します。

Solaris# vi /etc/services <= 設定ファイルの編集
smtps           465/tcp <= 追加
「Postfix」の設定

まず、「Postfix」の設定ファイルを編集します。

Solaris# vi /etc/postfix/main.cf <= 設定ファイルの編集
最終行に以下を追加
smtpd_tls_cert_file = /etc/postfix/crimson-snow.net.pem
smtpd_tls_key_file = $smtpd_tls_cert_file
smtpd_use_tls = yes

次にmasterの設定ファイルを編集します。

Solaris# vi /etc/postfix/master.cf <= 設定ファイルの編集
#smtps    inet  n       -       n       -       -       smtpd
#  -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes
↓
smtps    inet  n       -       n       -       -       smtpd <= コメント解除
  -o smtpd_tls_wrappermode=yes -o smtpd_sasl_auth_enable=yes <= コメント解除

tlsmgr    unix  -       -       n       1000?   1       tlsmgr <= 確認

「Postfix」の設定をリロードし、設定を反映させます。

Solaris# /usr/sbin/postfix reload

SMTPでSSLを利用する際、ポートの465番を利用しますので、ルータで開けます。

「Courier-IMAP」の設定

POP3用とIMAP用のファイルを設定します。

POP3の設定

Solaris# vi /usr/lib/courier-imap/etc/pop3d-ssl <= 設定ファイルの編集
POP3DSSLSTART=NO
↓
POP3DSSLSTART=YES <= 変更

TLS_CERTFILE=/usr/lib/courier-imap/share/pop3d.pem
↓
TLS_CERTFILE=/etc/postfix/crimson-snow.net.pem <= 変更(結合した証明書・秘密鍵の場所を指定)

IMAPの設定

Solaris# vi /usr/lib/courier-imap/etc/imapd-ssl <= 設定ファイルの編集
IMAPDSSLSTART=NO
↓
IMAPDSSLSTART=YES <= 変更

TLS_CERTFILE=/usr/lib/courier-imap/share/imapd.pem
↓
TLS_CERTFILE=/etc/postfix/crimson-snow.net.pem <= 変更(結合した証明書・秘密鍵の場所を指定)
「Courier-IMAP」の起動

「Courier-IMAP」をSSL対応で起動します。

Solaris# /usr/lib/courier-imap/libexec/pop3d-ssl.rc start <= POP3をSSL対応で起動
Solaris# /usr/lib/courier-imap/libexec/imapd-ssl.rc start <= IMAPをSSL対応で起動

ポート番号は
POPの場合、995番
IMAPの場合、993番
を利用しますので、ルータで開けます。

「Courier-IMAP」の自動起動

Solaris起動時に「Courier-IMAP」がSSL対応で自動的に起動するようにします。

Solaris# ln /usr/lib/courier-imap/libexec/pop3d-ssl.rc /etc/rc2.d/S89pop3d-ssl <= ランレベル2で起動
Solaris# ln /usr/lib/courier-imap/libexec/imapd-ssl.rc /etc/rc2.d/S89imapd-ssl <= ランレベル2で起動
Solaris# ln /usr/lib/courier-imap/libexec/pop3d-ssl.rc /etc/rc3.d/S89pop3d-ssl <= ランレベル3で起動
Solaris# ln /usr/lib/courier-imap/libexec/imapd-ssl.rc /etc/rc3.d/S89imapd-ssl <= ランレベル3で起動
Solaris# ln /usr/lib/courier-imap/libexec/pop3d-ssl.rc /etc/rc0.d/K35pop3d-ssl <= ランレベル0で停止
Solaris# ln /usr/lib/courier-imap/libexec/imapd-ssl.rc /etc/rc0.d/K35imapd-ssl <= ランレベル0で停止
▲ページのトップへ