2010年 2月 16日 はてなブックマーク -
タグ: #Linux

POP3S、SMTPSのトンネリングソフトを入れる。[2006年07月29日(土)]

さて、目標の一つだった POP3 -> POP3S、SMTP -> SMTPS のトンネリングを行うようにしてみよう。
使うのは、メジャー(らしい)な stunnel というソフト。

「apt-chache search stunnel」 で検索すると、やっぱりあった。インストールする。
> apt-get install stunnel4

/etc/stunnel にインストールされた様子なのでその中にある設定ファイルを開く
> vi /etc/stunnel/stunnel.conf

このファイルに待ちうけポートと、転送先ポートを羅列して書くようだ。
要らない項目には ; を付けておけばコメント扱いで無視される。
> [pop_server]
> accept=110
> connect=pop.gmail.com:995
>
> [smtp_server]
> accept=25
> connect=smtp.gmail.com:465
これで、110ポートに来た通信を gmail の995ポートに、25ポートに来た通信を gmail の465ポートに転送する設定になった。

また、この設定ファイルの上の方に以下のように書いてあることを確認。もし行頭に ; が付いてコメントになっていたら外しておこう。
> client = yes

あと、さらに上にcertの記述があって、キーファイルを指定している。pop3 -> pop3sのようにセキュアなサーバへ接続しに行く場合は要らないので、コメントアウトしておく。
> ;cert = /stc…

保存したら stunnel4 を再起動する。
/etc/init.d/stunnel4 restart
で、完了のハズなんだけど、動かない…(泣

ログ(/var/log/stunnel4/stunnel.log)を見ても、何も出力されていないところを見るとどうやら、全く起動していないらしい。
vi で stunnel4 の内容を見ると、このスクリプトは stunnel4 デーモンに上記の設定ファイルを渡すだけの仕事をするようだ。

そこで、直に起動してみる。
> /usr/bin/stunnel4 /etc/stunnel/stunnel.cof

起動したかどうかは netstat コマンドで判る。
> netstat -a
これで、使用中のポート番号が一覧で表示される。その中にちゃんと居た。「pop」と「smtp」だ。接続待ちを示す「LISTEN」の状態になっている。

面倒なので、/usr/sbin/stunnel4 を直接呼ぶようにスクリプトを変えてしまおう。
スクリプトの内容はDDNSツールに使ったスクリプトと殆ど同じ内容だ。

書き換えたスクリプトを単体で実行してみる。
> ./stunnel4
さらにGLAN Tankを再起動して、stunnel4 が起動していることを確認する。

よし、完璧だ。同じLANの中にある他のパソコンから繋ぎに行ってみてもOKだ。

あとは、ルータの設定を修正して、110, 25 ポートに来た通信をGLAN Tankに送るようにしておけば良い。

これで、pop3s や smtps に対応していないメーラでも、GLAN Tankを経由してGMailが読めるようになった。

POP3S、SMTPSのトンネリングソフトを入れる。 - Qaplaの覚書・メモ・備忘録・独言

qmailが入っていないLinuxマシンにこれをいれて、入っているサーバで一括管理すると便利そうです。


2年前 | | 2010年 2月 16日 | このエントリーを含むはてなブックマーク