メール環境 over SSL (その 2: 古い Mew + stunnel)

前回のエントリでも書いたが [2006-04-06],POP over SSLSMTP over SSL を比較的古い Mew (Mew 1.94.2) で実現する必要が生じてきた.前回は fetchmail を使ってメールを受信する方法を書いたが,今回は stunnel を使って送受信を行う方法を紹介する.



一般に,SSL 対応のサーバから SSL 非対応のメールクライアントを使ってメールを送受信するには,SSL Proxy を使えばよいらしい.SSL Proxy には stunnel,stone,wstone などがあるらしい.ちなみに,SSL 対応をうたっている Mew 3 も,実は stunnel を使っていたりする.



最初,stone を入れようとしたが,うちの sys/socket.h が古すぎてコンパイルできなかった(激ぉ.なので stunnel を入れてみる.



さて,stunnel.conf の該当部分は以下のようにしておく.その他,システムに合わせて適当に設定する.

[POP]
accept = localhost:110
connect = pop.example.jp:995
 
[IMAP]
accept = localhost:143
connect = imap.example.jp:993
 
[SMTP]
accept = localhost:10025
connect = smtp.example.jp:465

そして stunnel.init start しておく.これで,例えば localhost のポート 10025 番に送信メールを投げると,SMTP サーバの 465 番に行くということになる.確認のため,stunnel を起動した状態で,例えば telnet localhost 110 などとしてみよう.リモートの POP サーバが応答するのが見えるはずだ.



Mew のほうは,./im/Config を以下のように設定する.Mew の再起動は特に必要ない.

Smtpservers=localhost/10025
Imget.Src=POP/pop:nao@example.jp@localhost

ちなみに前回も書いたようにアカウント名が nao@example.jp というアホなことになってて,アットマークの処理で Imget が混乱しないかと心配したが,動いているようだ.このあたりを確認したければ,例えば

imget --verbose=on --src=POP/pop:nao@example.jp@localhost

とすればコマンドラインで動作を確認できる.さらについでに,ポート番号の指定は,ローカルサーバの場合は localhost%10025 のようにすればよいんだが,今回はリモートサーバなので "%" でなくて "/" になるらしい.



この状態で,Mew から普通に送信,受信できる.うむ,まあまあ快適.





関連記事: