[POP over SSL] Qpopper ID #1198 / 最終更新: 2010/08/13

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

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

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


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

POPサーバQpopper 4.0
スーパーサーバxinetd
SSLライブラリ(Openssl)/usr/share/ssl
コモンネームpop.globalsign.com
証明書・鍵の保存ディレクトリ/etc/mail/certs
qpopper設定用証明書ファイル名
(秘密鍵・証明書が統合されたファイル)
cert.pem
CSRファイル名req.pem
証明書ファイル名server.crt
中間証明書ファイル名cacert.crt



no01.gif お申し込みの準備
秘密鍵と、お申し込み画面に貼り付けるCSRを生成します。

1.Qpopper用の証明書を保存するディレクトリを作成します。

 mkdir -p -m 660 /etc/mail/certs

2.ディレクトリの権限を設定します。

 chown root:mail /etc/mail/certs

3.秘密鍵を作成します。

 openssl genrsa -out cert.pem 2048

4.CSRファイルを作成します。

 openssl req -new -key cert.pem -out req.pem

 ※ 半角英数文字 および半角スペース[ ]、ハイフン[-]、ドット[.]、アンダースコア[_]、カンマ[,]、プラス[+]、
   スラッシュ[/]、かっこ[(]、閉じかっこ[)]がご利用可能です。
 ※ ワイルドカードオプションをご利用の場合は、Common 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です。pop.globalsign.com
Email Addres入力不要です。-
A challenge password入力不要です。-
An optional company name入力不要です。-


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


5.秘密鍵のアクセス権の変更

 chmod 600 /etc/mail/certs/cert.pem





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

1.証明書をサーバに保存します。
 メール本文中の「◆証明書」、 [-----BEGIN CERTIFICATE-----] から [-----END CERTIFICATE-----]
 までをコピーしてください。

 /etc/mail/certs/server.crt


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

 /etc/mail/certs/cacert.crt


3.証明書ファイルを統合します。
 qpopperでは1つのファイルに秘密鍵、証明書をまとめて設定します。
 お客様の証明書(server.crt)と中間証明書(cacert.crt)を、秘密鍵ファイル(cert.pem)に
 追記して使用します。

 証明書の書き込み
 cat server.crt >> cert.pem

 中間証明書の書き込み
 cat cacert.crt >> cert.pem



Qpopperの設定
 POP orver SSLを使用する場合、QpopperがSSLに対応している必要があります。
 もしSSL対応のオプションをつけていない場合は、コンパイルしなおす必要があります。

 SSLのライブラリーにOpensslを使用する場合は、コンパイルオプションに
 --with-openssl=path をつけてqpopperをコンパイルします。

 ※お客様が独自にオプションを設定されている場合は、そのオプションも合わせてご指定ください。

例)
# ./configure --with-openssl=/usr/share/ssl
# make
# make install




Qpopper設定(qpopperr.config)ファイルの作成
設定ファイルにて、QpopperのSSLサーポートの有効化と、キーペアファイルを指定します。

 設定ファイル保存用のディレクトリを作成します。
 mkdir /etc/mail/pop

 viコマンドで、configファイルを作成します。内容は、以下背景色のついている2行です。
 vi /etc/mail/pop/qpopper.config

set tls-support = stls
set tls-server-cert-file = /etc/mail/certs/cert.pem





xinetdの設定
pop3sの定義を作成します。

 xinetdを設定するディレクトリに移動します。
 cd /etc/xinetd.d/

 viコマンドでpop3sファイルを作成します。内容は、以下背景色をつけている9行です。
 vi pop3s

Service pop3s
{
disable = no
socket_type =stream
wait = no
user = root
server = /usr/local/sbin/popper
server_args = popper -s -f /etc/mail/pop/qpopper.config -l 2
}


※ server_argsに作成した、設定ファイルの指定とTSL、SSLを有効にする ”-l 2” のオプションを
  指定してください。



servicesファイルの確認
serviceファイルにpop3s のサービスと使用ポートが記載されている必要があります。 記載がない
場合は、viなどのエディタで追記してください。

 servicesファイルの中身を確認します。
 cat /etc/services

pop3s 995/tcp # POP-3 over SSL
pop3s 995/udp # POP-3 over SSL


上記記載があれば問題ありません。#以下はコメントなので記載しなくても結構です。




no07.gif サービスの再起動
スーパーサーバプロセスxinetdの再起動を行います。

 /etc/init.d/xinetd restart




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

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

このエントリを評価してください

評価点数: 0 / 5 (0 個の投票 )

まったく役に立たない 1 2 3 4 5 とても役に立った
(C) 2007 - GlobalSign K.K. All rights reserved.