telnetでブラウズできますよね。HTTPサイトもtelnet でブラウズしましょう
おさらい。telnetでページ取得
telnet でHTTPをしゃべってみる
telnet www.yahoo.co.jp 80
telnetを起動してサーバーに接続する
takuya@debian00:~$ telnet www.yahoo.co.jp 80 Trying 124.83.235.204... Connected to www.g.yahoo.co.jp. Escape character is '^]'.
トップページを取得する
GET / HTTP/1.0
エンターを2回押す
サーバーから結果が帰ってくる
HTTP/1.1 200 OK Date: Fri, 17 Aug 2012 08:57:53 GMT P3P: policyref="http://privacy.yahoo.co.jp/w3c/p3p.xml", CP="CAO DSP COR CUR ADM DEV TAI PSA PSD IVAi IVDi CONi TELo OTPi OUR DELi SAMi OTRi UNRi PUBi IND PHY ONL UNI PUR FIN COM NAV INT DEM CNT STA POL HEA PRE GOV" Expires: -1 Pragma: no-cache Cache-Control: private, no-cache, no-store, must-revalidate X-XRDS-Location: http://open.login.yahoo.co.jp/openid20/www.yahoo.co.jp/xrds Vary: Accept-Encoding Connection: close Content-Type: text/html; charset=utf-8 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <meta http-equiv="content-style-type" content="text/css"> <meta http-equiv="content-script-type" content="text/javascript"> <meta name="description" content="日本最大級のポータルサイト。検索、オークション、ニュース、メール、コミュニティ、ショッピング、など80以上のサービスを展開。あなたの生活をより豊かにする「ライフ・エンジン」を目指していきます。"> <title>Yahoo! JAPAN</title>
接続開始
openssl s_client -connect mixi.jp:443
するとsslについて出てくる。
cC5jcmwwDQYJKoZIhvcNAQEFBQADgYEAOYXRrYYA7JHhtUpshFWSLUB9aL53IvQx 9C6gvmrCuyXfTPSon3skitTo5xnJiWjsgYVnpdoTObJoV3X6SbU92AbcvudCpryt U8tlYutSOWZwTaGiSwdZtasD3dFN6golEq94+h40a64KkULMnRNn6q0SYVSU70BG v1XSzP9vtVQ= -----END CERTIFICATE----- subject=/C=JP/ST=Tokyo/L=Shibuya-ku/O=mixi,Inc./OU=develop01/CN=mixi.jp issuer=/C=JP/O=Cybertrust Japan Co., Ltd./CN=Cybertrust Japan Public CA G1 --- No client certificate CA names sent --- SSL handshake has read 2042 bytes and written 520 bytes --- New, TLSv1/SSLv3, Cipher is AES256-SHA Server public key is 1024 bit Secure Renegotiation IS NOT supported Compression: zlib compression Expansion: zlib compression SSL-Session: Protocol : TLSv1 Cipher : AES256-SHA Session-ID: 0056C2DBEB93BC4FBC632C5B61552D5E1FCDD74DEEF930AE4EB6E94F9943C394 Session-ID-ctx: Master-Key: CA4CDD797C14A79977CD3DA0A4A3737B32EDA504C2152414F1A9A40A8F8C553EA380A44A0C01BB4D5AFE6FEC62F2EDD6 Key-Arg : None PSK identity: None PSK identity hint: None SRP username: None Compression: 1 (zlib compression) Start Time: 1345194274 Timeout : 300 (sec) Verify return code: 20 (unable to get local issuer certificate) --- ■#⇐入力待ち
次のHTTP語を入力してリクエストを送る
GET / HTTP/1.1 Host: mixi.jp Connection: keep-alive Cache-Control: max-age=0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_0) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/21.0.1180.79 Safari/537.1 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Encoding: gzip,deflate,sdch Accept-Language: en-US,en;q=0.8,ja;q=0.6 Accept-Charset: UTF-8,*;q=0.5
レスポンス出てくる
HTTP/1.1 200 OK Date: Fri, 17 Aug 2012 09:07:33 GMT Server: Apache X-Dealer: 182061 Cache-Control: no-cache Pragma: no-cache Expires: Sat, 26 Jul 1997 05:00:00 GMT X-XRDS-Location: https://mixi.jp/xrds.pl X-UA-Compatible: IE=EmulateIE7 Content-Type: text/html; charset=EUC-JP Set-Cookie: _lcp=c4a2f2265be9439c78865c7e55836991; domain=.mixi.jp; path=/; expires=Fri, 17-Aug-2012 09:17:33 GMT X-Content-Type-Options: nosniff Connection: close Transfer-Encoding: chunked 9a0 <html class="osMacOSX browserChrome browserChrome21 serviceLogoutQuirks pageHomeJpMixi domainJpMixi"> <head>
このようにopensslでSSL通信をターミナルでも出来る
openssl s_client -connect サーバーアドレス:443
これで出来る。便利ですね。
これさえあれば、POPS(APOP?port995)とかSMTP over SSL(port 465)などのSSL通信も可能になります。