Архив Апрель 2009

Как то на канале #linux проскочила идея "перевернуть интернет". Первоапрельская шутка, так сказать. В принципе получилось это сделать. Срабатывает. не везде, но срабатывает. В любом случае при небольшой доводке кода "перевертыша" получается неплохая резалка графики и флеша на сайтах.

Ну так вот: берем Squid настроенный в режиме transparent и добовляем в конфиг следующие строчки:

redirector_bypass on
redirect_program /etc/squid/redirect.cgi

Сохраняем. создаем этот файлик.

#!/usr/bin/perl
$|=1;
$count = 0;
$pid = $$;
umask 0022;
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/$pid-$count.jpg");
  	print "http://192.168.0.1/images/$pid-$count.jpg\n"
  } 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://192.168.0.1/images/$pid-$count.gif\n";
  } else {
  	print "$_\n";
  }
  $count++;
}

Соответственно папки по указанным путям в скрипте должны существовать и быть доступными по HTTP.
Так же должен быть установлен wget Apache/lighttpd и ImageMagick.
Cохраняем и просим Squid перечитать конфиг командой squid -k reconfigure.

Вот и все.

P.S. Если гдето накосячить то Squid съест всю оперативу, своп и отвалится.