2015年6月19日金曜日

FreeBSD 9.3 の p17 (Sendmail) アップデート

FreeBSD 9.3 へ p17 アップデート(1個)が到着しました。Sendmail のアップデートです。私個人としては、Sendmail を長年使っておきながら、とても苦手なソフトウェアなので、ちょっと躊躇しています。
FreeBSD-EN-15:08.sendmail
https://www.freebsd.org/security/advisories/FreeBSD-EN-15:08.sendmail.asc

内容としては STARTTLS の暗号化(OpenSSL など)で使用する DH パラメータのうち、512 ビットのものを廃止して、 1024 ビットを標準とする内容だそうです。単純に Sendmail の再ビルドだけでなく、Sendmail の設定ファイルの修正も必要です。


/usr/src/UPDATING の内容

20150618: p17 FreeBSD-EN-15:08.sendmail
Improvements to sendmail TLS/DH interoperability. [EN-15:08]

ソースツリーの更新

subversion でソースツリーを更新しました。
# svn update /usr/src
Updating '/usr/src':
U    /usr/src/contrib/sendmail/src/tls.c
G    /usr/src/UPDATING
U    /usr/src/sys/conf/newvers.sh
Updated to revision 284565.

ユーザランドの再ビルド

今回のアップデートでは、ユーザランドの再ビルド(再構築)が必要です。
# cd /usr/src
# make buildworld

ユーザランドのインストール

# make installworld

マシンの再起動

# reboot

Sendmail の設定ファイルの修正

/etc/mail のディレクトリ内にある設定ファイルのうち、マシンのホスト名のついた .mc と .submit.mc ファイルの修正が必要です。以下は公式サイト上の案内の原文です。
1. Edit /etc/mail/`hostname`.mc
2. If a setting for confDH_PARAMETERS does not exist or
   exists and is set to a string beginning with '5',
   replace it with '1' for 1024-bit or '2' for 2048-bit.
3. If a setting for confDH_PARAMETERS exists and is set to
   a file path, create a new file with:
   openssl dhparam -out /path/to/file 2048
   for 2048-bit or:
   openssl dhparam -out /path/to/file 1024
   for 1024-bit.
4. If you have modified your MSP submission configuration
   file to enable STARTTLS (not enabled by default), repeat
   the above steps for /etc/mail/`hostname`.submit.mc.
5. Rebuild the .cf file(s):
   cd /etc/mail/; make; make install
6. Restart sendmail:
   cd /etc/mail/; make restart

我が家での場合(備忘録)

1. /etc/mail/ホスト名.mc を編集
# cd /etc/mail
# ee /etc/mail/ホスト名.mc

2. STARTTLS の設定部分が以下のように設定していました。"confDH_PARAMETERS" の設定がありません。そこで "confDH_PARAMETERS" の設定項目を追加しました。DH パラメータのファイル名は dh1024.pem としています。
dnl STARTTLS Settings
define(`confCACERT_PATH', `MAIL_SETTINGS_DIR`'certs/')
define(`confCACERT', `confCACERT_PATH`'cert.pem')
define(`confSERVER_CERT', `confCACERT_PATH`'cert.pem')
define(`confSERVER_KEY', `confCACERT_PATH`'privkey.pem')
define(`confDH_PARAMETERS', `confCACERT_PATH`'dh1024.pem')

3. DH パラメータファイルを作ります。我が家では暗号化のファイルは /etc/mail/certs のディレクトリへ保存しています。DH パラメータのファイル名は、上記で設定した dh1024.pem です。
# cd /etc/mail/certs
# openssl dhparam -out dh1024.pem 1024

4. cf ファイルのビルドとインストール
# cd /etc/mail
# make
# make install

5. Sendmail の再起動
# make restart

6. メールの送信テスト
メールソフトの受信と送信の設定で、接続の保護に「STARTTLS」を使用します。そして認証方式には「通常のパスワード認証」を指定します。これでメールの送受信を行なって異常がなければ、インストール成功です。

0 件のコメント:

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。