[POP over SSL] Dovecot

最終更新:2024年11月29日

メールサーバや、FTPサーバ、Webサーバが同一ドメインの場合、ワイルドカードオプションをご利用いただくことで、1枚の証明書で運用することが可能です。詳しくはこちらをご覧ください。

マニュアルの手順にて動作検証をおこなっておりますが、メールサーバの動作を保証するものではございません。また、証明書の設定部分のみの解説となっておりますので、サーバ構築方法やアプリケーションの詳細については付属のドキュメントや関連書籍等でご確認ください。

Dovecotはオープンソースのアプリケーションです。脆弱性などの問題がないか、随時情報を確認いただき、万一問題が発見された場合は、該当サービスの停止や、対応パッチがリリースされている場合は速やかに適用するなど、運用には十分ご注意ください。

本例では以下環境を前提としています。
各ファイル名は、お客様の環境に合わせて任意に読み替えてご覧ください。

POPサーバ Dovecot 0.99
コモンネーム mail.globalsign.com
証明書保存ディレクトリ /usr/share/ssl/certs/
秘密鍵保存ディレクトリ /usr/share/ssl/private/
秘密鍵ファイル名 mail.globalsign.com.key
CSRファイル名 mail.globalsign.com.csr
証明書ファイル名 mail.globalsign.com.cert
中間証明書ファイル名 cacert.crt
  1. お申し込みの準備
    秘密鍵と、お申し込み画面に貼り付けるCSRを生成します。

    1.秘密鍵の生成

    作業ディレクトリに移動します。

    cd /usr/share/ssl/private/

    秘密鍵を生成します。

    openssl genrsa -out mail.globalsign.com.key 2048

    2.CSRの作成

    openssl req -new -key mail.globalsign.com.key -out mail.globalsign.com.csr

    ※Common Nameは、半角英数文字 および ハイフン[-]、ドット[.]が利用可能です。
    ※Common Name、Country Name以外は、半角英数文字と半角スペース、および 半角記号 !#%&'()*+,-./:;=?@[]^_`{|}~がご利用可能です。
    ※ワイルドカードオプションをご利用の場合は、アスタリスク[*]を含めてください。例: *.globalsign.com

    フィールド 説明
    Country Name 国を示す2文字のISO略語です。 JP
    State or Province Name 組織が置かれている都道府県です。 Tokyo
    Locality Name 組織が置かれている市区町村です。 Shibuya-ku
    Organization Name 組織の名称です。 GlobalSign
    Organization Unit Name 組織での部署名です。
    ※指定がない場合は - (ハイフン)を入力してください。
    Sales
    Common Name メールサーバのFQDNです。 mail.globalsign.com
    Email Addres 入力不要です。 -
    A challenge password 入力不要です。 -
    An optional company name 入力不要です。 -

    生成されたCSR(mail.globalsign.com.csr)を、お申し込みの際にフォームに貼り付けてください。

  2. 証明書のインストール
    証明書が発行されますと、サーバ証明書が契約者宛てにメールで届きます。

    1.証明書の保存
    「◆証明書」の部分 [-----BEGIN CERTIFICATE-----] から[-----END CERTIFICATE-----] までをコピーし、サーバに保存します。

    /usr/share/ssl/certs/mail.globalsign.cert

    2.中間証明書の保存
    メール中の「◆中間証明書」をコピーしてサーバに保存します。

    /usr/share/ssl/certs/cacert.crt

    3.証明書ファイルの結合
    お客様の証明書(mail.globalsign.com.cert)と、中間証明書(cacert.crt)を、1つのファイルに結合します。

    cat cacert.crt >> mail.globalsign.com.cert
  3. 設定ファイルの編集

    設定ファイル: /etc/dovecot.conf

    1.利用プロトコルの設定
    DovecotはPOP3/POP3SとIMAP/IMAPSをサポートしています。 利用するプロトコルをスペースで区切って設定します。

    # Protocols we want to be serving:
    # imap imaps pop3 pop3s
    #protocols = imap imaps
    protocols = imaps pop3s

    2.秘密鍵と証明書の設定

    #ssl_cert_file = /etc/ssl/certs/dovecot.pem
    #ssl_key_file = /etc/ssl/private/dovecot.pem

    ↓追加

    #ssl_cert_file = /usr/share/ssl/certs/dovecot.pem
    #ssl_key_file = /usr/share/ssl/private/dovecot.pem
    ssl_cert_file = /usr/share/ssl/certs/mail.globalsign.com.cert
    ssl_key_file = /usr/share/ssl/private/mail.globalsign.com.key

    3.メールファイルの指定
    以下はPostfix等で使われるMaildirの場合の例です。

    #default_mail_env =

    ↓変更

    default_mail_env = maildir:~/Maildir
  4. サービスの起動
    起動コマンドを実行します。

    # /etc/init.d/dovecot start
    Dovecot Imap を起動中:[ OK ]

    起動したかどうか確認します。
    # netstat -an --tcp
    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address Foreign Address State
     tcp 0 0 0.0.0.0:993 0.0.0.0:* LISTEN
     tcp 0 0 0.0.0.0:995 0.0.0.0:* LISTEN

    IMAPS、POP3Sのデフォルトポートである993と995がLISTENとなっていることが確認できます。

補足

OpenSSLのs_clientオプションを利用することにより、SSL通信途中の証明書のやり取りを確認することが可能です。

サーバに設定されている証明書をopensslコマンドで確認したい