2005年03月13日
[Linux] courier-imapのSSL対応
インストール済みのcourier-imapを、防諜対策としてSSL化した。 参考にしたのは、POP3/IMAPサーバ over SSL(Courier-IMAP)の構築。
0. 方針
- 外部からの接続は、SSLを必須とする。
- localhostのみSSL化されていない通常のimapでの接続を許可する(SquirrelMail用)。
- 外部から接続するクライアントは、Sylpheed(Linux)、Outlook(Windows)、QMail3(PocketPC)とする。
- 外部のクライアントからの認証は、SSL化されていて安全なので、Outlookの標準であるLOGIN認証を利用する。
1. courier-imap用の鍵の作成
courier-imapをSSL化する鍵は、公開鍵と秘密鍵を繋げたものになる。SSL証明書を$29で購入してあるので、この証明書を利用して鍵を作成した。
# cat www.kkoba.com.crt www.kkoba.com.key > mail.pem
注意点として、mail.pemは、以下のようになっている必要がある。
-----BEGIN CERTIFICATE----- 公開鍵の内容 -----END CERTIFICATE----- -----BEGIN RSA PRIVATE KEY----- 秘密鍵の内容 -----END RSA PRIVATE KEY-----
購入した公開鍵は、「-----BEGIN CERTIFICATE-----」「-----END CERTIFICATE-----」が無かったので、自分で追加した。これが不足していると、以下のようなエラーがでる。
imapd-ssl: couriertls: /usr/local/certs/mail.pem: error:0906D06C:PEM routines:PEM_read_bio:no start line
2. courier-imapの設定変更
LOGIN認証だけを利用するので、以前にCRAM-MD5認証に使ってたパスワードファイルを削除する。
# rm /etc/userdb*
/usr/lib/courier-imap/etc/imapdを、SquirrelMail用として、LOGIN認証とlocalhostからの接続に対応させる。
IMAPDSTART=YES ADDRESS=127.0.0.1 IMAP_CAPABILITY="IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE"
/usr/lib/courier-imap/etc/imapd-sslを設定し、外部からはSSL接続のみを許可する。
IMAPDSSLSTART=YES IMAP_TLS_REQUIRED=1 TLS_CERTFILE=/usr/local/certs/mail.pem
/usr/lib/courier-imap/etc/authdaemonrcを、LOGIN認証のみに設定する。
authmodulelist="authpam"
3. SquirrelMailの設定変更
CRAM-MD5認証を利用していたSquirrelMailを、LOGIN認証に変更するために、SquirrelMailインストール先/config/config.phpを編集する。
$imap_auth_mech = 'login';
4. iptablesの設定変更
自作ルータの設定を変更し、外部からアクセス可能なポートをimap(143)からimap-ssl(993)に変更する。
iptables -t nat -A PREROUTING -i ppp0 -p tcp --dport 993 -j DNAT --to $MAIL_SERVER iptables -A FORWARD -i ppp0 -d $MAIL_SERVER -p tcp --dport 993 -m state --state NEW -j ACCEPT
5. Sylpheed(Linux)の設定
以下の2つの設定が必要となる。
- 「設定 - 現在のアカウントの設定 - SSL」で、「IMAP4の接続にSSLを使用」にチェックする。
- 「設定 - 現在のアカウントの設定 - 高度な設定」で、「IMAP4ポートを指定」をチェックし、「993」を入力する。
6. Outlook(Windows)の設定
アカウントの詳細設定で、「このサーバはセキュリティで保護された接続(SSL)が必要」にチェックを入れる。ポート番号が自動的に「993」になる。
7. QMail3(PocketPC)の設定
「Account - Property - Detail」で、「SSL」を選択する。ポートが自動的に「993」になる。
Qmail3は、FrontPage - Q3から入手できる。
投稿者 かつ : 2005年03月13日 23:15
この記事のトラックバックURL
トラックバック一覧 (1件)
-
imapd-ssl from uep on hayate
apt-get install courier-ssl cd /etc/cour...
トラックバック時刻 : 2005年07月22日 11:55
コメント一覧 (0件)
新規にコメントする
| 年間カレンダー | |||||||||||||
| 2007 年 |
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006 年 |
|
||||||||||||
| 2005 年 |
|
||||||||||||
| 2004 年 |
|
||||||||||||
| 2003 年 |
|
||||||||||||
| 2002 年 |
|
||||||||||||
| 2001 年 |
|
||||||||||||
| 2005年03月 | ||||||
| 日 | 月 | 火 | 水 | 木 | 金 | 土 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | 31 | ||