スキップしてメイン コンテンツに移動

curl の基本的な使い方 -コマンド編- その2

前回、curlのごくごく基本的な使い方をまとめてみましたが、なかなかこの手の情報は少ないのか、調べてこのサイトに辿り着かれた方が多いようですね!
しばらくの間、私の把握している範囲で、curlの情報を備忘録的な意味も含めてまとめていこうと思います。




webサービスの生死を確認するのと、apacheの生死は違います。apacheの生死は、アクセスに対して適当なレスポンスを返していればOKですが、webサービスはHTML単品でできている訳ではないので、例えば会員領域にログインしてサービスが正常に動作しているかのチェックを行うのが一般的です。
それを人力でするのは、コストが掛かりますので、curlでやってしまおうという事です。
curl -d id=hoge -d pass=huga http:example.com/login.php
「-d」オプションは、POSTするデータを指定できます。こうすれば、ログインフォームも突破できますね。
でも、普通、ログインフォームはSSL通信だぜ?という場合は。
curl -d id=hoge -d pass=huga https:example.com/login.php
あ、まだSSLの証明書の設定はしてないんだよね。って場合は
curl -d id=hoge -d pass=huga -k https:example.com/login.php
「-k」オプションで、SSLエラーを無視します。JavaScriptを利用したログイン制御が行われている場合はお手上げなんですが、クッキーくらいならcurlにも扱えます。
curl -c cookie.txt -d name=hoge -d pass=huga http://example.com/login.php
上記の例は、サイトから送られてきたクッキーを受け入れてcookie.txtに書きこむようにします。書き込んだクッキーは、次のようにして送信します。
curl -b cookie.txt http://example.com/login.php
これで色んなサイトに潜り込めそうですね! ああ、忘れてた。curlは、basic認証も安々と突破します。
curl -u username:password http://example.com/login.php
curl http://username:password@example.com/login.php
「-u」オプションでユーザー名とパスワードを指定できます。通常basic認証では、ユーザー名とパスワードをBASE64形式に変換して送信しますが、その辺りはcurlでやってくれます。ちなみにbasic認証の突破の仕方は上下どちらでもOKです。
curlとサーバーのやり取りを細かく追っていきたい時は、「-v」オプションで詳細なやり取りを表示します。
curl -v http://example.com/login.php

今回は以上で終わります。今回のオプションはスイッチ的なオプションが多かったので、指定した場合の意味するところさえ分かれば使うのは簡単かなと。割とサンプルも少なめにしました。

ではまた次回に!

see also
wget vs curl - コマンドラインダウンロードツール頂上決戦
curl の基本的な使い方 -コマンド編-
curl の基本的な使い方 -設定編-


コメント

このブログの人気の投稿

[VB.NET]オレオレ証明書でSSL通信するための短絡的な解決法

VB.NETソフトウェアでサーバーと通信することはよくある事だと思いますが、最近はHTTPを使って明けっ広げに刺しに行くよりHTTPSを使って暗号化してこそこそやった方が時代の流れに即した感じですよね(違うか)。 いちいちテスト環境でSSL証明書を用意するのも面倒だということで、セキュリティ的には全くよろしくない方法で迂回できるので紹介します。

[JS]Canvasでよく使う描画テクまとめ

HTMLで画像をいじくりたい時は、canvasを利用して編集するのは一般的ですが、WindowsストアアプリではHTML+CSS+JSでのアプリ開発ができる事もあって、簡単な画像編集であれば、C#やVBを使うより分かりやすいし資料が多く、C++でDirectXをガリガリ書くよりお手軽。入出力もファイルピッカーを使えば簡単に実装できます。今回は、Windowsのコードではなく、Canvasを利用する時のJavaScriptを使いどきに合わせてまとめていきます。

curl の基本的な使い方 -設定編-

今回のcurl TIPSは、curlをより日常的に使っていくためのHow toです。curlには、数多くのオプションが用意されていて、それらを組み合わせる事で様々な事が楽になるでしょう。サービス監視の自動化などにはまさにcurlの得意分野です。 今回は、curlを更に自分のものにしていくために大事なカスタマイズの部分を解説します。