xserver
Home クッキー及びWeb ビーコンについて



Qpopper+APOPによるパスワード暗号化

メールサーバーの構築

 POPは、パスワードがネットワーク上を暗号化されずに平文で流れるため、パケットキャプチャソフトなどでスニッファリングを行えば、パスワードはいとも簡単に盗むことができてしまいます。そこで、パスワードを暗号化してくれるプロトコルとしてAPOPがあり、qpopperをAPOP対応にすることで、安全性が向上させることができます。




◎Ethereal でのパケットキャプチャ状況

Ethereal というネットワーク監視ソフトで、メールを受信した際のネットワーク上の流れをキャプチャリングしたものです。解析してみると、ユーザー名やパスワードは暗号化されずにそのまま平分で流れていることが確認できます。まさに、marumie です(笑)。





■qpopperのダウンロード

まず、qpopperをQUALCOMMのFTPサイトからダウンロードしてきてください。執筆時点での最新バージョンは、qpopper4.0.5です。ここでは、qpopper4.0.5.tar.gzをダウンロードしてインストールしていくことにします。APOP対応でインストールしていきます。

$ cd /usr/local/src
$ tar xzvf /usr/local/src/qpopper4.0.5.tar.gz
$ cd qpopper4.0.5
$ ./configure --enable-apop=/etc/pop.auth --with-popuid=pop
$ make

/qpopper4.0.5/popper下にバイナリファイルであるpopperが生成されるのでこれを、適当なディレクトリにコピーします。ここでは、/usr/local/sbinにコピーします。

$ cd poper
# cp popper popauth /usr/local/sbin/

APOPの管理者アカウント"pop"を作成します。

# useradd -g root pop

popauthのユーザとSUIDを変更します。

# cd /usr/local/sbin
# chown pop popauth
# chmod u+s popauth

/etc/pop.authを作成し、APOP データベースの初期化を行います。

# popauth -init

■スーパーサーバーとして起動させる

 qpopperは、デーモンとして常に動かしておくほどレスポンスを重視しないため、一般的にはinetd、もしくはxinetd経由で起動するように設定することで、接続要求がある度に対応するようにします。これによってたましか実行されないサービスによって無駄な資源を有効に確保することができます。RedHatLinuxでは、xinetdをデフォルトで採用しているので、xinetd経由でqpopperを起動させるようにします。まず、/etc/xinetd.d 以下にpopperというファイルを作成し、編集を行っていきます。

# touch /etc/xinetd.d/popper
# vi /etc/xinetd.d/popper

/etc/xinetd.d/popperを以下のように編集します。赤字で記した箇所のみ、各自、制限を許可するネットワークを記述してください。-R はDNSの逆引きを行わないオプションです。-s は詳細なログを記録します。

service pop3
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/local/sbin/popper
server_args = -s -R
only_from = 172.16.50.0/27 172.16.51.0/28 127.0.0.1
}

■popauthコマンド

 それでは、実際にpopauth コマンドを使ってユーザーの作成、削除、パスワードの変更などの設定を行っていきます。以下のコマンドを実行し、存在するユーザー名とAPOP用のパスワードを入力します。

# popauth -user kororo
Adding only APOP password for kororo.
New password:
Retype new password:

kororoでログインし直して、popauth -list でAPOPユーザーであるかどうかを確認します。

$ /usr/local/sbin/popauth -list
kororo : APOP


◎popauthコマンド
popauth -user <user> ユーザーを作成します。
popauth -delete <user> ユーザーを削除します。
popauth 単にパスワードを変更します。各ユーザーでログインした後、popauthコマンドを実行し、パスワードを変更できます。
popauth -list 自分がAPOP認証ユーザーであるかどうかを確認できます。
popauth -init APOPのデータベースを初期化します。このコマンドを実行すると、APOPユーザーは全て削除されます。

最後に、xinetd を再起動し、設定変更を有効にします。

# /etc/init.d/xinetd restart
xinetdを停止中: [ OK ]
xinetdを起動中: [ OK ]


■メールの受信確認

締めくくりとして、メールの受信確認を行います。ここでは、Windowsクライアントで受信することを前提としますが、残念ながら、Microsoft Outlook 及び Outlook ExpressはAPOPに対応していません。なので、APOPに対応したメールクライアントソフトを使用する必要があります。現段階でAPOPに対応しているもので有名なメーラーとしては、AL-Mail32、Becky! Internet Mail Ver1、Becky! Internet Mail Ver2、Eudra、Shuriken Pro3、PostPet 2001、nPOP、電信八号などです。ここでは、Becky!2の試用版をインストールして実際に確認を行ってみました。設定は以下図のようにAPOPのラジオボタンにチェックをいれるだけです。設定を終えたらメールを受信してみてください。なお、どうしてもOutlookじゃなきゃ嫌だ!という方は、Outlook ExpressでAPOPを使いたい(ZDnet)というのもあるので試してみてかいかがでしょうか。

◎Becky!2のメールボックス設定



■パスワードが暗号化されているか確認する

さて、ここまでやった以上、実際にパスワードが暗号化されたのか興味がありますよね。先ほど使用したツールと同様にEthereal を使用して、パケットキャプチャリングを行ってみます。結果は以下図のようにきちんとパスワードが暗号化されていればOKです。どうですか?きちんと暗号化されていましたか?

◎暗号化されたパスワードの例









TOPに戻る

Sponcerd Link


Search
 
Web サイト内
Rental Server

【レンタルサーバのXbit】 低価格・高品質のビジネスクオリティー。300メガ1,050円~30分で サービススタート可能!


容量300MB、月額125円、高性能なサーバが日本最大級のバックボーンに直結。
さくらのレンタルサーバ



当サイトはLinux自宅サーバーの構築を目的としたサイトです。
当サイトに関するご意見、ご要望等は、こちらのメールアドレスよりお願いします。
Beginning | Introduction | Installation | Server |
Security | Tips | Related-Sites
Copyright©2003-2006 KORO All Rights Reserved.
総計:
今日:
昨日: