FreeBSDでPOP over SSLサーバー

| コメント(0) | トラックバック(0)

一般的に、メールで使われているPOPやSMTPは、平文がそのままネットワークに流れます。
ログイン時のIDやパスワードまで平文で流れるので、パケットモニタリングすると覗き見されてしまいます。

Web(HTTP)についてはSSLを使って暗号化通信を実現していますが、SSLはPOPやSMTPにも利用可能です。
このSSLを使ったメールの暗号化通信は、実はThunderbird等のメーラーでも対応しているため、サーバー側が対応すればすぐ利用可能、と言うことも多いと思います。

ここでは、POPをSSL越しに利用する「POP over SSL」をFreeBSDサーバーにセットアップする方法を解説します。

まず、FreeBSD標準のpopperではなく、qpopperを新たにインストールします。


# cd /usr/ports/mail/qpopper/
# make install

オプションは、基本的にデフォルト(SSLはenable)でインストールします。

次に、/etc/serviceの内容を確認します。もし下記のエントリーがなければ登録します。
最近のFreeBSDであればデフォルトで入っていると思うので大丈夫です。


pop3s  995/tcp  spop3  # pop3 protocol over TLS/SSL
pop3s  995/udp  spop3

このように、POP over SSLでは995番ポートを使用します。

そして、qpopperの設定を変更します。
portsによってインストールされた、/usr/local/etc/qpopper.config.sampleファイルをqpopper.configにコピーし、下記の部分を編集します。


set clear-text-password      = tls
set reverse-lookup           = false
set tls-support              = alternate-port
set tls-private-key-file     = /usr/local/etc/qpopper/ssl/server.key
set tls-server-cert-file     = /usr/local/etc/qpopper/ssl/server.crt
set log-facility             = mail

秘密鍵(set tls-private-key-file)と証明書(set tls-server-cert-file)の場所については、サーバーのポリシーに合わせて適宜変えてください。

FreeBSDではデフォルトでpopperが起動するようになっているので、/etc/inetd.confを編集して、qpopperが起動するようにします。
加えて、SSL越しでも利用できるように、下記の部分を修正もしくは追加します。


# pop3 stream tcp nowait root /usr/local/sbin/popper  popper
pop3    stream  tcp     nowait  root    /usr/local/libexec/qpopper      qpopper -s
pop3s   stream  tcp     nowait  root    /usr/local/libexec/qpopper      qpopper -s -f /usr/local/etc/qpopper.config

それから、ApacheのSSL鍵・証明書と同じように、鍵と証明書を作成し、qpopper.configで設定した場所に置きます。
公式のものでしたらVerisignなどから証明書を取得したほうがいいとは思いますが、個人利用程度であれば自作証明書で十分です(アラートは出ます)。
この簡単な作り方もおいおい公開しますね。

最後にinetdを再起動します。inetdへHUPシグナルを送って終了です。


# kill -HUP `cat /var/run/inetd.pid`

ThunderbirdなどのPOP over SSL対応メーラーで、実際にSSL接続できるか試してみてください。
Thunderbirdでは、「アカウント設定」の「サーバー設定」にある「セキュリティ設定」のところで「SSLを使用する」を選択するだけで大丈夫です。
Thunderbirdでの設定

ちなみに、自宅サーバーとかで設定したときは、外部からアクセスする前にルーター等の995番ポートを空けるのを忘れないようにしてください。
また、メールの受信には25番ポートが空いている必要があります。空いていないとメールが届かないのでご注意を。

SMTP over SSLについては、SMTP Authと組み合わせると効果的なので、また次回説明しますね。

トラックバック(0)

トラックバックURL: http://blog.harmonicom.jp/mt/mt-tb.cgi/80

コメントする

プロフィール

ヤマカズー(ヤマカズ)

Webコンサルティング会社に勤めるシステムコンサルタントのおっちゃんです。
趣味はコンピューター。まんまですね。
あと申し訳程度に空手とか。
子供が二人います。

kazooooo at gmail.com

mixiはこちら

HARMONICOM

twitter

スゲーなんだこれ!?w > スマホをPCのセカンドディスプレーにできるAndroidアプリがイカス! #asciiplus http://t.co/4hbbnZeb
2012-02-02 20:08:03
いやあぁぁぁぁ~~!! ん?「D」と「.」?……「し」「る」? RT @hizous : @yamakazoo サーバの後ろに悲しそうな顔をした日本髪の若い女性が見えます・・・何か心当たりはないですか・・・? ん?キーボードの「D」と「、」のところを指さしているようです・・・
2012-02-02 11:39:49
家のMacBookといい会社のサーバーといい、原因不明なところでCPUがフルパワーになったり、ディスクへのアクセスが異様に遅くなったりする……これってある意味、寿命ってことなのかな……
2012-02-02 11:16:13
おお! RT @YahooNewsJP : [社会]<雑記帳>劇団四季「キャッツ」出演者が電子確定申告 - 毎日新聞 http://t.co/5tDvGJI6
2012-02-01 22:50:43
うちの会社にも備蓄いっぱい!! 深夜メンテの時にこっそり食べ(ry RT @YahooNewsJP : [社会]「ビスコ」売り上げ過去最高に…備蓄用缶人気で - 読売新聞 http://t.co/ZKIpZ1RJ
2012-02-01 19:12:41
follow me on Twitter