Dovecotをアップグレードしたら受信できなくなった

0
366

Dovecot v2.2からv2.3にアップグレードしたらメーラーで受信エラーに。
エラーログ見るとimapのSSLのところでコケてる。。
ちなみにOSはCentOS7です

imap-login: Disconnected: TLS initialization failed. (no auth attempts in 0 secs): user=<>, rip=×××.×××.×××, lip=×××.×××.×××, session=
imap-login: Error: Failed to initialize SSL server context: Can't load DH parameters: error:1408518A:SSL routines:ssl3_ctx_ctrl:dh key too small: user=<>, rip=×××.×××.×××, lip=×××.×××.×××, session=<8/AjmPOuVvaW+c1i>

ネットでググると、どうもdovecot2.3から従来のssl-parameter.datファイルが廃止されて、ssl_dhの設定をする必要があるらしい。
参考サイト:https://wiki2.dovecot.org/Upgrading/2.3#dhparams

で、
/etc/dovecot/conf.d/10-ssl.confの以下をコメントアウト

ssl_dh = </etc/dovecot/dh.pem
ssl_min_protocol = TLSv1

コメントアウトしたので、/etc/dovecot/ 配下にDHパラメータ dh.pemを作成。
2048ビット以上のパラメーターを作成する必要があるようで、推奨が4096ビットらしいので、4096ビットで作成。
これがまだ作成するのにエライ時間がかかる。サーバーのスペックによると思うけど私が作成した時は1時間弱ぐらい掛かりました。。

openssl dhparam -out /etc/dovecot/dh.pem 4096

作成が終わったらDovecotを再起動します。

#systemctl restart dovecot

これで無事メーラからの受信ができるようになりました。
新しく構築中のサーバーだったから良かったものの、ホント怖い怖い(笑)

DovecotはデフォルトでSSLの設定が必須になっているので、使用しなくていいならSSLを必須でない設定する方法も。

/etc/dovecot/conf.d/10-ssl.confの以下の設定を変更してDovecotを再起動
ssl = required

ssl = yes