curlをつかってHTTPヘッダーを変えてアクセスしてみる

サーバーへのあやしいアクセス対策後、テストするため
curlをつかって特定のHTTPヘッダーをはじくか確認してみました
※アクセス先はダミーです

特定のUser-agentを防ぐ場合

まずは正常なもの

$ curl --user-agent 'OK-agent' --head http://sample.com
HTTP/1.1 200 OK
Date: Fri, 26 Jun 2015 12:27:20 GMT
Server: Apache
Last-Modified: Wed, 21 Jan 2015 16:10:10 GMT
ETag: "413ee-2fd-50d2bca2d5ba6"
Accept-Ranges: bytes
Content-Length: 765
Connection: close
Content-Type: text/html; charset=UTF-8

200で正常です

次にGoogle App Engineからのアクセスを弾く想定(プロキシとか)

$ curl --user-agent 'AppEngine-Google' --head http://sample.com                                                                                                                     
HTTP/1.1 403 Forbidden
Date: Fri, 26 Jun 2015 12:27:45 GMT
Server: Apache
Accept-Ranges: bytes
Content-Length: 4954
Connection: close
Content-Type: text/html; charset=UTF-8

403で弾かれてます
できてそうです

GithubとかFacebookがレインボーに

GithubとかFacebookの写真がレインボーになってたりしてびっくり

github-rainbowicon

なにかと思ったらアメリカで同性婚が合法化したからのお祝いみたいです
Facebookが、米国同性婚合法化を祝してレインボープロフィール画像機能をリリース : ギズモード・ジャパン

bitbucketにgit pushしたときが一番びっくりしました

git-rainbow

日本であんまり話題になってないんですかね

bashのヒアドキュメントでコマンドを実行する

bashのヒアドキュメントでコマンドを実行させるのに手間取ったのでメモ

‘EOT’のようにシングルクオート(やダブルクオート)をつけると変数が展開されません

/home/user/shell
で実行しました

こう書けばできました

#!/bin/bash

x=`pwd`

cat <<EOT
${x}
$(dirname $x)
EOT
# /home/user/shell
# /home/user/

cat <<'EOT'
${x}
$(dirname $x)
EOT
# ${x}
# $(dirname $x)

cat <<"EOT"
${x}
$(dirname $x)
EOT
# ${x}
# $(dirname $x)

コマンドの下にコメントアウトで結果を表示してます

サンプルで表示できるIPアドレス

ブログとか資料とかでサンプルで表示できるIPアドレスをメモ

プライベートIPアドレスには
192.0.2.0/24

ドキュメントやコードには
198.51.100.0/24
203.0.113.0/24

のようです
24はサブネットマスクなので
192.0.2.0/255.255.255.0
つまり
192.0.2.1 – 192.0.2.255
まで使えるってことです

詳しくは
RFC 5735 – Special Use IPv4 Addresses
を参照