Как стать автором
Обновить

Переворачиваем интернет на 1-е апреля

Время на прочтение2 мин
Количество просмотров3K
image

Для того чтобы устроить полный переворот интрернета нам понадобится

1) Сервер раздающий интернет для локальной сети
2) Прокси сервер
3) 15 минут времени

Схема очень проста. Прокси будет работать в прозрачном режиме и все ссылки на картинки передавать скрипту, который сможет эти картинки скачивать и изменять.



Настройка squid:

acl localnet src 192.168.0.0/24
http_access allow localnet
http_port 3128 transparent
url_rewrite_program /usr/local/bin/flip.pl 


Картики будут падать в /var/www/images
Необходимо правильно настроить права. Так как в ubuntu squid будет работать из-под пользователя proxy

Скрипт на конвертирование картинок. Сохраним как /usr/local/bin/flip.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://127.0.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://127.0.0.1/images/$pid-$count.gif\n";

        }
        elsif ($_ =~ /(.*\.png)/i) {
                $url = $1;
                system("/usr/bin/wget", "-q", "-O","/var/www/images/$pid-$count.png", "$url");
                system("/usr/bin/mogrify", "-flip","/var/www/images/$pid-$count.png");
                print "http://127.0.0.1/images/$pid-$count.png\n";

        }
        else {
                print "$_\n";;
        }
        $count++;
}


После этого включаем редирект на iptables:

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128
Теги:
Хабы:
Всего голосов 48: ↑35 и ↓13+22
Комментарии18

Публикации

Истории

Ближайшие события