Tweet
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
Home > > WiresharkでOpenIDのお勉強
Home > > WiresharkでOpenIDのお勉強
Home > OpenID > WiresharkでOpenIDのお勉強
Tweet
仕様のお勉強にはシーケンスを見るのが一番ということで。
まずは、Wiresharkをダウンロード。
インストールは全部Nextで。
次にOpenIDの環境を整える。
わかりやすいように、
localhost/openid/test/rp/
localhost/openid/test/op/
って構成で作ります。
(ディレクトリ階層を減らすとexamplesのコードを変えないといけないので若干冗長です)
■ RP/OP共通
○ OpenID EnabledからPHP OpenID Library Version 2.1.3をダウンロード&解凍。
○ openidにリネームしてドキュメントルートに配置。
○ openid/examplesをtestにリネーム。
○ Auth/OpenID/CryptUtil.phpの
「define('Auth_OpenID_RAND_SOURCE', '/dev/urandom');」を
「define('Auth_OpenID_RAND_SOURCE', NULL);」に。
■ RP
○ examples/consumerをrpにリネーム。
○ rp/common.phpの
「$store_path = "/tmp/_php_consumer_test";」を
「$store_path = "_php_consumer_test";」に。
○ _php_consumer_test内を書き込み可能に。(必要なら)
これでRPは完成。
localhost/openid/test/rp/でアクセスできる。
■ OP
○ examples/serverをopにリネーム。
○ op/config.phpを作成。(内容は以下)
<?php
/**
* The URL for the server.
*
* This is the location of server.php. For example:
*
* $server_url = 'http://example.com/~user/server.php';
*
* This must be a full URL.
*/
$server_url = "http://localhost/openid/test/op/server.php";
/**
* Initialize an OpenID store
*
* @return object $store an instance of OpenID store (see the
* documentation for how to create one)
*/
function getOpenIDStore()
{
require_once "Auth/OpenID/FileStore.php";
return new Auth_OpenID_FileStore("_php_server_test");
}
?>
○ php.iniのextension=php_curl.dllのコメントアウトを外す。
○ op/index.phpの
「header("Location: server.php");」を
「header("Location: http://localhost/openid/test/op/server.php");」に。
(http://localhost/openid/test/op/をOP Identifierとして使えるように。)
これでOPも完成。
アクセスはlocalhost/openid/test/op/で。
※ config.phpとindex.phpはURLが変わる度に修正する必要ありですね。
さて、いよいよキャプチャです。
って言っても超簡単ですが。
Wiresharkを起動し、Capture→Interfacesから、
キャプチャしたいインタフェースをStartすればOK。
RPにアクセス→OPで認証までやったら、Capture→InterfacesからStop。
これでデータ取得完了。
あとは、Filter: ip.addr==アクセス先のIP等でApply、
Protocol列クリックでソートすれば上からHTTPのデータを見れます。
localhostへのアクセスがキャプチャできず。
いろいろ試してみるも、結局断念。
PC3台を動員し、なんとかDirect Communicationのデータも取得できました。
需要あれば公開します。
(僕自身まだ全然中身見れてないけど^^)
※ localhostをキャプチャしようとNW設定いじってたらネットできなくなった
…なんてことになったら、route -f&再起動で直るかもしれません。
以上、長駄文続きですいません。