POP/SSLの導入(Qpopper編)
SMTPサーバ(Postfix)で、SMTP AUTHに対応し外部から利用できるようになったため、POPサーバもセキュリティ強化を図り、外部から利用できるようにしました。
おやじ宅で使用しているメールクライアントはOutlook Expressのため、選択肢が限られます。クライアントソフトを変更すれば、いろいろな方法が考えられますが、変更は家族の抵抗(操作が変わる)があるため取り敢えず、Outlook
Expressをターゲットにしました。調べてみると、今使用しているqpopperでSSLが使用できるようなので、これでいくことにしました。
本稿は、RedHat 7.2ベースでの導入記です。他のディストリビューションでどうなるかはわかりません。パス等が変わってくると思いますが?
■Qpopperの再コンパイルとインストール
Qpopper (qpopper4.0.4.tar.gz) は、APOPにも対応しているので、取り敢えずAPOPにも対応できるよう(設定はしていません)再コンパイルし、インストールしました。なお、あらかじめpopユーザを作成しておかないとインストールではじかれます。
RedHat9の場合、opensslがKerberosサポートの状態でコンパイルされていて、また、kerberosのヘッダが何故か/usr/kerberos/includeにあるため
make でエラーが発生します。下記の赤字のように、明示してあげて下さい。
$ cd /usr/local/src
$ tar zxfv qpopper4.0.4.tar.gz
$ cd qpopper4.0.4
$ export CFLAGS=-I/usr/kerberos/include
$ ./configure --enable-apop=/etc/pop.auth \
--enable-popuid=pop \
--with-openssl=/usr/share/ssl \
--enable-log-login \
--enable-specialauth
$ make clean
$ make
$ su
# useradd -g root pop
# make install
|
■Qpopperの設定ファイル作成
Qpopperのための設定ファイルを以下の内容で作成します。おやじは、/etc/mail/qpopper.confとしました。
SSL証明書がApacheとメールでバラバラになっていて管理しにくいので、
こちらのように統一しました。
(2003.04.14)
set clear-text-password = ssl
set tls-support = alternate-port
set tls-version = default
set tls-server-cert-file = /usr/local/certs/mail.pem |
■Qpopperの起動
RedHatでは, スーパーサーバープログラムとして xinetd を使用しているので、/etc/xinetd.d
の下にspopper という名前のファイル(内容は下記参照)を作成します。
service pop3s
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/local/sbin/popper
server_args = -s -R -f /etc/mail/qpopper.conf
}
|
作成できたら、 xinetd を下記により再起動すればOK。これで、メールが受信できるはずです。
# /etc/init.d/xinetd restart
■クライアントの設定
まず、上記で作成したサーバ証明書(cert.der)をクライアントにインストールします。インストール方法は、簡単です。
- サーバ機でフロッピーにコピーし、クライアント機にセットする。
- マイコンピュータでフロッピーを開き、cert.derファイル上で、右クリックし、証明書のインストールするを選択。
- 以後、指示に従いインストールする。
次に、Outlook Expressの設定を変更します。
- メイン画面から、使用するアカウントのプロパティを開き、詳細設定を開く。
- サーバのポート番号の中の受信メール(POP3)で、「このサーバはセキュリティで保護された接続(SSL)が必要」にチェックマークを入れる。
チェックマークを入れるとポート番号が995になる。
POP3のポート番号が変更になったので、ルータの設定も変更する必要があります。変更内容は、
こちらを参照願います。