Home > Tags > AtMail

AtMail

Ubuntu-server でSSLサーバ

AtMailとximapdとの話で、CRAM-MD5認証がダメならSSLでLOGINコマンドを許してもらえばいいのか
と思ったので、ぐぐっておく。

えせSEの1日1Hack : UbuntuでApacheのsslを有効にする方法
mod_ssl で HTTP 通信の暗号化 | 自宅サーバー Fedora
Ubuntu Sever Edition を使ったサーバ構築のメモ
Kung Noi:SSLおれおれ証明書とクライアント認証

Ubuntuって面倒なやつだったのか(^^;;

AtMail CRAM MD5認証 失敗

AtMailをximapdで使う件(消えてしまった記事をGoogleから復活)

AtMailのソースとにらめっこしたが、全体像がつかめない。でもソースをいじってみた。
AtMailのIMAPクライアントとのやりとりは、$AtMail/libs/IMAP_Clinet.phpに書いてあるようで、このファイルには
function authenicate(),authenticateCRAMMD5()という2つの関数が記述してあるが、AtMail配下のphpファイルのどこからも呼び出されていない(javascriptから呼んだりってのもあるのかな)し、authenticateCRAMMD5()はからっぽなので、ここに

function authenticateCRAMMD5($user,$pass)
        {
                $cid = $this->cid;
                $this->socket->writeLine("$cid AUTHENTICATE CRAM-MD5");

                $usern = explode("@",$user,2);

                $challenge = base64_decode( $this->socket->readLine() );
                $response = base64_encode( $usern[0] . ' ' . $this->hmac_md5($pass,$challenge) );

                $this->socket->writeLine("$response");
        }

こう書いて、IMAP_Client.php内のfunction login()から強制的に呼び出してみた。hmac_md5()は、roundcubeのソースから拝借。
実行すると、ximapdのログがこうなった

D, [2008-07-03T13:37:49 #5885] DEBUG -- : C: ATMAIL01 AUTHENTICATE CRAM-MD5
D, [2008-07-03T13:37:49 #5885] DEBUG -- : received ATMAIL01 AUTHENTICATE from 127.0.0.1
D, [2008-07-03T13:37:49 #5885] DEBUG -- : S: + PDU4ODUuMTIxNTA1OTg2OS42NzA5ODBAZm9yYmlkLmZvcmNvbS5qYT4=
D, [2008-07-03T13:37:49 #5885] DEBUG -- : C: amFyZXRoIGZlZTMzMWJkY2Q0M2I3YmFmNGY2M2FhZGU0YjNmMDkx
D, [2008-07-03T13:37:52 #5885] DEBUG -- : S: ATMAIL01 NO AUTHENTICATE failed

ちゃんとximapdにわたってるみたいだし、challengeコードもximapdから受け取ってるし、あとの計算もたぶん間違いないんだけど、NGなので、よくわかっていないAtMail内のwriteLine()、readLine();の使い方がまずいのだろうか。

Home > Tags > AtMail

meta
Recent Comments

Return to page top