newbieman Опубликовано 24 октября, 2009 · Жалоба Чего делать? :(удалить libecap и попробовать поставить по новой squid.посмотреть config.log Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 26 октября, 2009 (изменено) · Жалоба Смотреть в config.log насчет подробностей :)В сущности, вот последние строки в сообщении они и есть :) удалить libecap и попробовать поставить по новой squid.А squid-то тут при чём? Он с ecap нормально собирается, осталось собрать только сам модифицирующий adapter к ecap.Удалил libecap и squid, нифига, естественно, не помогло. :( Может, кто-то через ICAP делал? Update: config.log Изменено 27 октября, 2009 пользователем Dyr Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Yokodzun Опубликовано 26 октября, 2009 · Жалоба Вы бы на внешний хостинг конфиг клалли, а то как-то не аккуратненько. Вот сюда, хотя бы - http://pastie.org/ Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
lexius Опубликовано 27 октября, 2009 (изменено) · Жалоба У меня с eCap проблема была с путями - он при сборке ищет либы в /usr/lib, а они лежат в /usr/local/lib, тоже и с include. Решил тупо созданием симлинков. Но есть и другая проблема - Squid 3.1.0.13 (версия из портов) при загрузке вываливается, что называется "в корку" при подключенном ecap. Но вроде как нормально заводится на 3.1.0.7, но там другие проблемы - он тоже падает, только не сразу. Вот и хотелось бы узнать, у кого на каких версиях работает, если работает ;) Изменено 27 октября, 2009 пользователем lexius Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 27 октября, 2009 · Жалоба Вот сюда, хотя бы - http://pastie.org/ Ого, спасибо, отличный сервис. Поправил исходное сообщение. lexius, а можете прислать ваш собранный ecap? Под 7.2 делали? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
lexius Опубликовано 28 октября, 2009 (изменено) · Жалоба При запуске squid 3.1.0.13 с включённым debug такая вот проблема: 2009/10/28 14:35:21| loading Squid module from '/usr/local/lib/ecap_adapter_modifying.so' 2009/10/28 14:35:21| Squid modules loaded: 1 2009/10/28 14:35:21| Adaptation support is on Assertion failed: (false), function start, file adapter.cc, line 17. Изменено 28 октября, 2009 пользователем lexius Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
lexius Опубликовано 29 октября, 2009 · Жалоба А вот и описание проблемы https://bugs.launchpad.net/ecap/+bug/408091 и возможные пути решения. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
corwin_amb Опубликовано 7 ноября, 2009 · Жалоба могу добавить к ним любого провайдера, пишите в этом топике свой адрес анонса и диапазоны внешних ip адресов Если предложение еще актуально, буду крайне признателен. 77.247.112.0/20 http://retrecker.amberium.net/announce.php Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 16 ноября, 2009 (изменено) · Жалоба В общем, поделюсь своим опытом. Двухнедельное усиленное google'ние привело нас к следующим результатом: 1. Что icap, что ecap, жутко сырые и глючные протоколы. 2.1 Подменять пользователям файлы на лету с помощью прокси нужно в режиме full-transparent. Существует путаница в понятиях, из-за того что под transparent proxy ранее понимали прозрачное для пользователя проксирование, когда за счёт принудительного заворачивания http-трафика на прокси-сервер пользователь мог не вводить у себя никаких настроек. На самом деле это intercept proxy (собственно, в Squid 3.1 соответствующая опция также поменяла название), а вот (full) transparent proxy это когда прокси идёт в интернет не от своего ip, а от spoofed ip пользователя, оставляя тем самым полностью прозрачным соединение для конечных серверов. 2.2 В настоящий момент поддержка такого проксирования реализована только для squid с патчем TPROXY под Linux. 2.3 Под FreeBSD аналогичное поведение реализовано только в бете форка Squid - Cacheboy. Но у него отсутствуют возможности выполнять произвольные операции с файлами, поскольку ecap/icap в нём отсутствует и добавлен не будет. Таким образом, я для себя решил вопрос просто - пока нет желания сделать на squid'е, делаю через обычный прокси с фильтрацией. В качестве такового выступает Middleman, взятый за небольшой размер, возможность отдачи контента на внешний скрипт и удобный интерфейс управления. Предварительно накидал perl-скрипт, который через pcap слушает 80 порт и собирает информацию о запросах с Content-Type: application/x-bittorrent, на выходе скрипта дата и ip-адреса. Затем путём нехитрых манипуляций эти ip-адреса заносятся в таблицу ipfw, через которую определяется форвард на прокси (ipfw add fwd 127.0.0.1,3128 tcp from 10.54.0.0/16 to table(15) dst-port 80 in via vlan3050). В конфиге mman.xml отключены все фильтры, кроме external и caching, в external: <external> <enabled>true</enabled> <item> <enabled>true</enabled> <comment>torrent</comment> <mime>application\/x-bittorrent</mime> <exec>/home/torrents/mypatcher.pl</exec> <type>file</type> </item> </external> Скрипту /home/torrents/mypatcher.pl тем самым передаются файлы с mime-типом "application/x-bittorrent", он добавляет в него запись локального трекера http://retracker.smart (убирая при этом retracker.local, если он там есть. Ибо нефиг) и передаёт содержимое обратно прокси, сохраняя ещё и в файл с созданием директории под именем исходного сервера, то есть примерно вот так: ls -lh /home/torrents/patched/ total 152 drwxr-xr-x 2 root wheel 13K 16 ноя 12:35 dl.torrents.ru drwxr-xr-x 2 root wheel 512B 15 ноя 21:27 down.puretna.com drwxr-xr-x 2 root wheel 2,0K 15 ноя 23:59 fast-torrent.ru drwxr-xr-x 2 root wheel 1,0K 14 ноя 01:31 free-torrents.org drwxr-xr-x 2 root wheel 4,5K 16 ноя 00:50 kinozal.tv drwxr-xr-x 2 root wheel 512B 15 ноя 21:06 lostfilm.tv drwxr-xr-x 2 root wheel 512B 16 ноя 09:26 megashara.com drwxr-xr-x 2 root wheel 512B 14 ноя 23:49 nnm-club.ru drwxr-xr-x 2 root wheel 512B 13 ноя 19:58 opensharing.org drwxr-xr-x 2 root wheel 5,0K 15 ноя 22:56 pornolab.net drwxr-xr-x 2 root wheel 1,0K 15 ноя 14:57 pornoshara.com drwxr-xr-x 2 root wheel 512B 15 ноя 23:36 rutor.org drwxr-xr-x 2 root wheel 512B 13 ноя 22:18 tapochek.net drwxr-xr-x 2 root wheel 1,5K 16 ноя 12:30 tfile.ru drwxr-xr-x 2 root wheel 2,5K 16 ноя 11:00 torrents.thepiratebay.org drwxr-xr-x 2 root wheel 3,0K 16 ноя 02:30 www.fast-torrent.ru drwxr-xr-x 2 root wheel 512B 15 ноя 21:39 www.kinokopilka.ru drwxr-xr-x 2 root wheel 512B 15 ноя 19:37 www.lostfilm.tv drwxr-xr-x 2 root wheel 512B 15 ноя 22:31 www.mininova.org drwxr-xr-x 2 root wheel 512B 13 ноя 18:20 www.nnm-club.ru drwxr-xr-x 2 root wheel 1,5K 15 ноя 19:44 www.tfile.ru drwxr-xr-x 2 root wheel 512B 15 ноя 19:17 www.torrent-polska.info drwxr-xr-x 2 root wheel 512B 13 ноя 20:28 www.torrentino.ru drwxr-xr-x 2 root wheel 512B 16 ноя 00:14 x-torrents.ru Естественно, что дорабатывать все компоненты можно и нужно (хотя бы передавать данные с middeman не через файл, а через пайп), но пока работает и так. Народ доволен, мы тоже. За четыре дня скачивание торрентов зарегистрировали со следующих ip: 2 188.40.68.102 2 188.40.92.78 2 194.71.11.73 2 212.85.147.122 2 67.15.228.30 2 78.107.232.56 2 78.140.146.75 2 89.108.104.34 2 90.156.212.56 2 94.246.126.252 4 173.45.88.50 4 188.40.45.82 4 193.93.161.34 4 95.211.6.16 6 194.54.81.126 6 83.222.96.82 6 92.61.248.110 6 94.103.92.62 8 85.17.92.39 8 93.158.65.201 9 87.233.147.140 12 77.120.117.204 12 97.74.144.172 14 82.80.248.58 14 85.159.232.5 14 95.168.186.70 14 95.169.190.128 34 80.93.53.99 40 83.143.134.33 44 91.213.117.65 44 95.211.1.9 46 88.80.28.218 82 91.189.80.95 86 81.29.134.150 124 89.108.82.15 144 91.189.80.96 192 95.211.81.80 193 194.71.107.19 202 94.198.53.151 286 89.188.109.206 290 195.82.147.147 852 195.82.146.115 А жадинам, которые ничего не рассказывают про то, как и откуда они переписывают торренты, наше дружное бее! ;) Изменено 16 ноября, 2009 пользователем Dyr Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
karpa13a Опубликовано 16 ноября, 2009 · Жалоба тянет как минимум на статью, что на наг ... Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 16 ноября, 2009 · Жалоба Обновил скрипт mypatcher.pl: добавлено ещё одно условие для извлечения имени файла, пофиксена ошибка при пустом списке трекеров в announce_list. Ещё из важного - модуль Net::Bittorrent::File был мною подкорректирован с целью работы с отсутствовавшим в нём announce_list несложным патчем. Вообще говоря, mypatcher.pl можно (и даже, пожалуй, нужно) модифицировать так, чтобы он работал с данными через pipe напрямую и без Net::Bittorrent::File...но мне лень %) И последнее - поскольку прокси работает от своего ip, а не от клиентского, возможны проблемы с частными трекерами, которые авторизуют по ip. Авторизующие по cookies должны работать нормально, если только домен, с которого они получены, входят в список кешируемых этим proxy. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 17 ноября, 2009 · Жалоба Вот именно что "этим говном" и живём, все каналы в нём :) А на гиков с Kad и Tor внимания не обращаем, живите безмятежно :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
lexius Опубликовано 17 ноября, 2009 · Жалоба Спасибо за развёрнутое описание... но получается, что Middleman работает в таком же режиме, как и squid? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 17 ноября, 2009 · Жалоба lexius, смотря что называть "в таком же режиме" :-) Squid, сцуко, большой, режимов имеет много. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
lexius Опубликовано 18 ноября, 2009 · Жалоба имею в виду тот режим, что включается опцией transparent, т.е без подмены ip пользователя. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 18 ноября, 2009 · Жалоба Нет, увы, в обычном intercept режиме :( Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 24 ноября, 2009 (изменено) · Жалоба Обновил патчер. Изменения: - Добавлено принудительное завершение скрипта по таймауту (пару раз патчер останавливался на битых торрентах, подвешивая тем самым прокси) - Добавлен вывод в syslog сообщений об ошибках/предупреждениях (по умолчанию в LOG_EMERG, чтобы видеть ошибки на консоли). Продолжить выкладывать изменения и описание процесса, или оно так, никому не интересно?.. Изменено 24 ноября, 2009 пользователем Dyr Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
SmokerMan Опубликовано 24 ноября, 2009 · Жалоба Продолжить, интересно Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 24 ноября, 2009 · Жалоба Тогда продолжаем клепать баги версии ;-) Версия 1.3. Изменения: - Добавлен код для корректной регистрации анонса в трекере от re-tracker.ru (в статистике появляются размер, комментарии и имя файла). Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 24 ноября, 2009 · Жалоба Список dst адресов, при обращении на которые запросы форвардятся на прокси (было зарегистрировано более 4 скачиваний торрент-файлов): 67.15.228.30/32 0 77.120.117.204/32 0 78.107.232.56/32 0 80.93.53.99/32 0 81.29.134.150/32 0 82.80.248.58/32 0 83.143.134.33/32 0 83.222.96.82/32 0 85.17.92.39/32 0 85.159.232.5/32 0 87.118.119.60/32 0 87.233.147.140/32 0 88.80.28.218/32 0 88.212.202.8/32 0 89.108.74.190/32 0 89.108.82.15/32 0 89.108.104.34/32 0 89.188.109.206/32 0 90.156.212.56/32 0 91.189.80.95/32 0 91.189.80.96/32 0 91.213.117.65/32 0 92.61.248.110/32 0 93.158.65.201/32 0 94.103.92.62/32 0 94.198.53.151/32 0 94.246.126.252/32 0 95.168.186.70/32 0 95.169.187.34/32 0 95.169.190.128/32 0 95.211.1.9/32 0 95.211.81.80/32 0 97.74.144.172/32 0 173.45.88.50/32 0 188.40.45.82/32 0 188.40.68.102/32 0 188.40.92.78/32 0 194.54.81.126/32 0 194.71.11.73/32 0 194.71.107.19/32 0 195.82.146.115/32 0 195.82.147.147/32 0 212.85.147.122/32 0 213.248.47.9/32 0 Кусок конфига monit, следящего за доступностью прокси-сервера (по хорошему, нуждается в доработке условий и action'a): check process middleman with pidfile /var/run/mman.pid start program = "/usr/local/etc/rc.d/mman.sh start" stop program = "/usr/local/etc/rc.d/mman.sh stop" if cpu > 60% for 2 cycles then alert if totalmem > 200.0 MB for 5 cycles then alert if loadavg(5min) greater than 3 for 8 cycles then alert if failed host 10.78.77.35 port 3128 with timeout 5 seconds then restart if 3 restarts within 5 cycles then timeout Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vladd Опубликовано 25 ноября, 2009 · Жалоба - Добавлен код для корректной регистрации анонса в трекере от re-tracker.ru (в статистике появляются размер, комментарии и имя файла). Можешь пояснить, как работает этот ретрекер? Поставил его вместо xbtt, а он бестолковый какой-то, список локальных пиров не ведет, зачем-то в своей базе держит кучу инетовских пиров, а также вытягивает список ретрекеров из инета, хотя сам по идее должен являться ретрекером. Перерыл их форум, но не нашел конкретную технологию его работы. В результате получить список местных сидов с этого ретрекера так и не удалось, хотя они есть в его статистике. Бред какой-то. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 25 ноября, 2009 · Жалоба Пояснить не смогу, поскольку сам ретрекер прикручивали ребята из другого отдела. Но могу спросить у них. P.S. Кто-нибудь ещё рискнул запустить в продакшн мой вариант у себя? :) Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
vladd Опубликовано 30 ноября, 2009 · Жалоба Dyr, рискнули, запустили, все работает! Спасибо за отличное решение! Гораздо лучше падучего сквида. А можно у тебя периодически по http или как-нибудь еще забирать список dst-адресов? А то у нас скрипт для их выдирания жрет 50-60% cpu. Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
karpa13a Опубликовано 1 декабря, 2009 · Жалоба http://l7-filter.sourceforge.net/protocols говорят торренты и скайп ловят, ктонить пробовал в продакшине? Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...
Dyr Опубликовано 1 декабря, 2009 · Жалоба vladd, на здоровье. :) Список настраивать на отдачу просто лень, честно говоря... Сейчас список состоит из следующих ip: 67.15.228.30/32 0 77.120.117.204/32 0 78.107.232.56/32 0 80.93.53.99/32 0 81.29.134.150/32 0 82.80.248.58/32 0 83.143.134.33/32 0 83.222.96.82/32 0 85.17.92.39/32 0 85.159.232.5/32 0 87.118.119.60/32 0 87.233.147.140/32 0 88.80.28.218/32 0 88.212.202.8/32 0 89.108.74.190/32 0 89.108.82.15/32 0 89.108.104.34/32 0 89.188.109.206/32 0 90.156.212.56/32 0 91.189.80.95/32 0 91.189.80.96/32 0 91.213.117.65/32 0 92.61.248.110/32 0 93.158.65.201/32 0 94.103.92.62/32 0 94.198.53.151/32 0 94.246.126.252/32 0 95.168.186.70/32 0 95.169.187.34/32 0 95.169.190.128/32 0 95.211.1.9/32 0 95.211.81.80/32 0 97.74.144.172/32 0 173.45.88.50/32 0 188.40.45.82/32 0 188.40.68.102/32 0 188.40.92.78/32 0 194.54.81.126/32 0 194.71.11.73/32 0 194.71.107.19/32 0 195.82.146.115/32 0 195.82.147.147/32 0 212.85.147.122/32 0 213.248.47.9/32 0 Вставить ник Цитата Ответить с цитированием Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах More sharing options...