Upside-Down-Ternet
2009年9月 9日(水) 21:37 JST
閲覧数 4,295
串で遊んでみる。
無線LANをただのりする人をこらしめる「Upside-Down-Ternet」です。
SquidとhttpdとImageMagickとiptableで、httpのパケットをすべてリダイレクトさせて気がつかないうちに、画像を上下反転させたりしてみます。
画像をグレースケールにしてみたり、イロイロ愉しめます。
設定詳細は本家ページで見て頂くとして。
まずは、squidの設定は基本的な設定をした後、以下でスクリプトを経由する様に設定追加。
※httpdとsquidの実行ユーザは同じにするか、グループを同じにしてください。(画像が読み込めません。。。)
あと、画像が溜まって行くので、定期的に削除する様にcronにでも登録してください。
無線LANをただのりする人をこらしめる「Upside-Down-Ternet」です。
SquidとhttpdとImageMagickとiptableで、httpのパケットをすべてリダイレクトさせて気がつかないうちに、画像を上下反転させたりしてみます。
画像をグレースケールにしてみたり、イロイロ愉しめます。
設定詳細は本家ページで見て頂くとして。
まずは、squidの設定は基本的な設定をした後、以下でスクリプトを経由する様に設定追加。
redirect_program /usr/lib/squid/redirect.plスクリプト内容はこんな感じ。
#!/usr/bin/perl $|=1; $count = 0; $pid = $$; while (<>) { chomp $_; if ($_ =~ /(.*.jpg)/i) { $url = $1; system("/usr/bin/wget", "-q", "-O","/var/www/images/$pid-$count.jpg", "$url"); system("/usr/bin/mogrify", "-flip","/var/www/images/$pid-$count.jpg"); print "http://<串のIP>/images/$pid-$count.jpgn"; } elsif ($_ =~ /(.*.gif)/i) { $url = $1; system("/usr/bin/wget", "-q", "-O","/var/www/images/$pid-$count.gif", "$url"); system("/usr/bin/mogrify", "-flip","/var/www/images/$pid-$count.gif"); print "http://<串のIP>/images/$pid-$count.gifn"; } else { print "$_n";; } $count++; }変換したimagesをhttpdで公開する様にして、その画像をクライアントに返します。
※httpdとsquidの実行ユーザは同じにするか、グループを同じにしてください。(画像が読み込めません。。。)
あと、画像が溜まって行くので、定期的に削除する様にcronにでも登録してください。