PDA

Bekijk de volledige versie : squid для WL-500gP



Baginda
01-10-2007, 18:50
Вот еще встретил проблемму -
читал тут - http://www.bog.pp.ru/work/squid.html#delaypool
Прижать любителей MP3:
acl multimedia urlpath_regex -i \.mp3$ \.mpeg$ \.avi$ \.mov$
delay_pools 1
delay_class 1 1
delay_access 1 allow multimedia
delay_access 1 deny all
delay_parameters 1 16000/64000

и не работает, пишет что ошибка в строках, начиная с delay....
итого выдает при запуске сквида 5 строк с ошибками.
Я так полагаю, что наш сквид собран без поддержки резания канала?
что делать?

Устанавливал из репозитария Олега.

Если он действительно не поддерживает урезание скорости, то может, кто-нить соберет в новый репозитарий версию с этой резалкой?

Oleg
08-10-2007, 10:33
Репозиторий не мой. :) Просто его так назвали. Я так думаю, ответа Вы не получите, ибо squid тут наверное вообще никто не использует.

Резюме - смотрите как собирается пакет и читайте его исходники.

Reyter
08-10-2007, 19:05
К oleo нужно обращаться. чтобы скомпилировал с поддержкой delay_pools. "Просто" squid ведь как-то компилирует.
Я попробовал в лоб нативно - не получилось. А времени разбираться нет.

Сhemist
19-02-2008, 13:19
Долго шарил по форуму и обнаружил, что все ссылки по squid, что мне попадались, содержат два утверждения:
1. "нафига здесь такая штука, это же не сервак"
2. "ну ты поищи ... (подставить ссылку по вкусу), там точно все есть"

Я ярый фанат squid. Я не использую его, как кэширующий прокси (для этого у меня стоит BFilter), а чаще всего я использую его для получения дополнительного IP для скачивания пор..., нужных статей :)
Имея большой опыт подъема свида под FreeBSD я решил забацать его и тут, благо в списке пакетов он есть.

Итак, первое:

ipkg install squid
ставим сам squid

Далее, заходим в /opt/etc/squid
и находим там squid.conf

Привожу здесь минимально необходимый рабочий конфиг


auth_param basic program /opt/libexec/ncsa_auth /opt/share/passwords/users
auth_param basic children 1
auth_param basic realm Authorized users only. Squid PROXY
auth_param basic credentialsttl 2 hours

acl MY proxy_auth REQUIRED
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

http_access allow MY
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

http_port 3128

hierarchy_stoplist cgi-bin ?

cache_dir ufs /opt/var/squid/cache 20 16 256

cache_swap_low 97
cache_swap_high 100

access_log /opt/var/squid/logs/access.log squid
pid_filename /opt/var/squid/logs/squid.pid

acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320

acl apache rep_header Server ^Apache
broken_vary_encoding allow apache

header_access From deny all
header_access Referer deny all
header_access User-Agent deny all
header_access Cache-Control deny all
header_access Via deny all
header_access X-Forwarded-For deny all

cache_effective_user nobody
cache_effective_group nobody

visible_hostname home.elist.ws

icon_directory /opt/share/squid/icons
error_directory /opt/share/squid/errors/Russian-1251

cachemgr_passwd 456789 all

coredump_dir /opt/var/squid/cache

и к нему небольшие коментарии:

auth_param basic program /opt/libexec/ncsa_auth /opt/share/passwords/users - как Вы понимаете, второй путь может быть любым, но там должен лежать файлик (users) с паролями в формате htaccess. Права на него нужно ставить так, чтобы непревелигированный пользователь (nobody) смог его прочитать.

auth_param basic realm Authorized users only. Squid PROXY - текст, который выводится в шапке запрос пароля. Может быть любым на Ваше усмотрение.

cache_dir ufs /opt/var/squid/cache 20 16 256 - очень важная строка, разберем поподробнее:
/opt/var/squid/cache - путь к кэшу. Может вести куда угодно, НО не на fat или ntfs партиции.
20 - размер кэша в Мб. Выбирается на Ваш вкус и возможности.

access_log /opt/var/squid/logs/access.log squid - место, куда пишется лог-файл доступа к ресурсам. Собственно его можно анализировать - кто и куда лазил за пор... статьями. ВНИМАНИЕ! Не забывайте его ротировать, дабы размер его не принял катастрофические величины.

visible_hostname home.elist.ws - поменяйте на свой хост или IP.

cachemgr_passwd 123 all - пароль на доступ кэшменеджера к управлению кэшем и свидом. Поствьте свой, но я вообще не рекомендую пользоваться кэшменеджером - глючный и небезопасный.

Первый запуск производить squid -z для формирования дерева директорий в кэше.
Для автоматического запуска squid при старте не забудте добавить в post-mount строчку

/opt/etc/init.d/S80squid start
а для того, чтобы squid принимал запросы извне не забудьте добавить в post-firewall строчки

iptables -A INPUT -p 'tcp' --dport 3128 -j ACCEPT
iptables -t nat -A PREROUTING -i vlan1 -p 'tcp' --dport 3128 -j DNAT --to-destination $4:3128

В итоге все сводится к классическому Linuxовому правилу "Конфиг всему голова" :)

З.Ы. Для настройки squid в качестве кэширующего прокси для локальной сети следует разобраться в комбинации

acl home src 192.168.0.0/255.255.0.0
http_access allow home

192.168.0.0/255.255.0.0 - диапазон Вашей "внутренней" сети.

Т.е. первое правило определяет сеть для безаппеляционного доступа, а второе этот доступ разрешает. Таким образом пользователям "внутренней" сети не придется вводить пароль для доступа к кэшу/

Не оъясняю маленькую засаду с порядком правил - хочу посмотеть, воспользовался ли кто моей инструкцией :)

angel_il
19-02-2008, 21:59
о тогда вопрос к ярому сквидоводу, давно завязал со сквидом поэтому не могу вспомнить чего не хватает, у меня над сквидом еще пара проксей но CONNECT для HTTPS не запрещен, а засада вот такая если svn ломится через моего сквидато получает облом (код ошибки напишу позже, лог на работе) если говорю svn-у использовать вышестоящую проксю то все ок. Т.е., что то накосячил с HTTPS, HTTP работает без проблем.
Ну и естественнно без опции never_direct оно вообще не работает ибо сверху прокси.

Вопрос: чего еще поковырять? чтобы https заработал нормально?
точно помну в прошлый раз я это дело победил, но тогда было шибко нужно, а сейчас вроде как не очень, но заранее благодарен за совет.

Сhemist
20-02-2008, 05:46
Возможно вся проблема в том, что по умолчанию в конфиге squid стоят такие строчки

acl SSL_ports port 443

acl Safe_ports port 443 # https

http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
Т.е. коннект по этому порту закрыт дважды (!). Я не проверял это, но как вариант - попробуй.

les
14-03-2008, 03:11
Спасибо автору! Сделал как написано, всё вроде работает. В "засаду" пока не попал или может не понял что попал :)

Кстати, а что это за кэшманагер? Для чего он нужен и как его вырубить, раз уж он глючный?

Reyter
14-03-2008, 06:52
Сhemist, хорошая статья, побольше бы таких. :)
Если бы еще к ней добавить примеры вариантов ограничения доступа к прокси, авторизации и шейпинга - было бы вообще замечательно. ;)

Сhemist
18-03-2008, 05:51
Кстати, а что это за кэшманагер? Для чего он нужен и как его вырубить, раз уж он глючный?

Его включать не нужно :) Это cgi-скрипт, открывающий доступ к кэшу и статистике обращений и т.д.

Сhemist
18-03-2008, 05:55
вариантов ограничения доступа к прокси, авторизации

В данном случае описан вариант ограничения доступа и авторизации (согласитесь, в данном случае это одно и тоже) для "домашнего" использования. Зачем забивать головы настройкой автоматической авторизации пользователей из корпоративной сети по записям в локальном домене, если для этого существуют другие сайты и другие статьи. Поиск по слову squid рулит!

vaspupkin
19-03-2008, 07:34
но там должен лежать файлик (users) с паролями в формате htaccess. Права на него нужно ставить так, чтобы непревелигированный пользователь (nobody) смог его прочитать
Можно тут поподробней?
Что должен содержать файл и какие права ему дать?

Сhemist
19-03-2008, 07:53
vaspupkin, извини конечно, но я не могу ответить на твой вопрос :) А послать почитать ФАК по Unix-системам как-то рука не поднимается.

vaspupkin
19-03-2008, 08:12
vaspupkin, извини конечно, но я не могу ответить на твой вопрос :) А послать почитать ФАК по Unix-системам как-то рука не поднимается.

А что так, религия не позволяет дать ближнему чуть больше? Я и ФАК не отказывался почитать, знать бы о чем читать. Ну не было у меня нужды изучить подробно UNIX.

Сhemist
19-03-2008, 08:21
Как раз религия говорит - помоги ближнему своему, направь его к свету, но дай пару раз стукнуться лбом, чтобы знал элементарные вещи и учился пользоваться поиском.
Читать тут (http://www.opennet.ru/). Ключевые слова: htaccess и установка прав доступа.

vaspupkin
19-03-2008, 09:20
Сдаюсь...
А всего-то хотел перенаправить лог на USB HDD в /tmp/harddisk/squid/logs

Файл /opt/share/passwords/user

nobody:x:99:99:nobody:/:/tmp/harddisk/var/squid/nologin

Права на файл

[admin@WL500GP root]$ ls -la /opt/share/passwords/users
-rw-r--r-- 1 admin root 56 Mar 19 11:58 /opt/share/passwords/users

Настройка /opt/etc/squid/squid.conf

auth_param basic program /opt/libexec/ncsa_auth /opt/share/passwords/users

Права на /tmp/harddisk/var/squid

[admin@WL500GP root]$ ls -la /tmp/harddisk/var/squid
drwxr-xr-x 4 admin root 4096 Mar 19 10:11 .
drwxr-xr-x 3 admin root 4096 Mar 19 09:36 ..
drwxr-xr-x 2 admin root 4096 Mar 19 10:11 cache
drwxr-xr-x 2 admin root 4096 Mar 19 09:36 logs

Сквид сбрасывается после старта. Лог пишется не на диск, а в /opt/var/squid/logs с ошибкой

FATAL: Cannot open '/tmp/harddisk/var/squid/logs/access.log' for writing.
The parent directory must be writeable by the
user 'nobody', which is the cache_effective_user
set in squid.conf.

Что не так делаю?

al37919
19-03-2008, 09:30
ну что тут скажешь. Если совсем конкретно, то прочитать для чего нужна комманда chmod

Сhemist
19-03-2008, 09:54
Гуру прав.... У тебя права на запись в эту директорию и в этот файл стоят от админа, а должны стоять от nobody

Изыскания

Файл /opt/share/passwords/user

nobody:x:99:99:nobody:/:/tmp/harddisk/var/squid/nologin в корне не верны.

vaspupkin
19-03-2008, 09:58
Гуру прав.... У тебя права на запись в эту директорию и в этот файл стоят от админа, а должны стоять от nobody

Изыскания

Файл /opt/share/passwords/user

nobody:x:99:99:nobody:/:/tmp/harddisk/var/squid/nologin в корне не верны.

Спасибо, с правами от nobody разобрался.

Kot
19-03-2008, 11:13
а возможно ли прикрутить к сквиду анализатор логов аля sarg? если да, то как? :)

Сhemist
19-03-2008, 11:25
Да, можно. Лог access.log имеет стандартный формат, поэтому достаточно натравить на него анализатор.

Kot
19-03-2008, 11:29
просто при использовании sarg на шлюзе с процессором на 2ггц и памятью на 512м при анализе логов сжирается вся память и идет 5ти минутный ступор.. навереное роутер такое не осилит

Сhemist
19-03-2008, 11:38
У меня на роутере стоит Awstats. Прекрасно переваривается машинкой.

vaspupkin
21-03-2008, 20:17
Ничего, если тему подниму? :rolleyes: Не силен я в юниксе, а настроить хочется.
Сквид поднял, все заработало. В эксплорере установил подключаться через прокси с портом 3128.
Теперь хотелось бы узнать, как сделать пару настроек:

1. Как сделать прозрачным вход для юзера, т.е. что бы он не вводил пароль при каждом открытии эксплорера? Галка "сохранить пароль" не работает при переоткрытии эксплорера.
2. Как запретить пользователю подключаться в обход прокси, т.е. если отключить проки сервер, то подключение к инету тоже возможно?

bash
21-03-2008, 20:29
а чаще всего я использую его для получения дополнительного IP для скачивания пор..., нужных статей

Я так и не понял, зачем нужен кольмар? Можно с примерами?

Сhemist
22-03-2008, 11:26
1. Как сделать прозрачным вход для юзера, т.е. что бы он не вводил пароль при каждом открытии эксплорера? Галка "сохранить пароль" не работает при переоткрытии эксплорера.
2. Как запретить пользователю подключаться в обход прокси, т.е. если отключить проки сервер, то подключение к инету тоже возможно?

Все в этой фразе: Для настройки squid в качестве кэширующего прокси для локальной сети следует разобраться в комбинации

acl home src 192.168.0.0/255.255.0.0
http_access allow home

А второй вопрос - только с помощью файервола. Закрыть в нем 80 порт и никто не сможет пройти, только через прокси. Или завернуть 80 порт на порт прокси - так правильнее. Как это сделать - поиск. На форуме все обсуждалось.

les
25-03-2008, 11:48
Chemist, подскажи как вырубить кэширование полностью и есть ли в этом смысл?

Я так понимаю, что отключив кэширование squid будет меньше тратить рессурсов коробочки т.к. не нужно будет писать файлы на диск/флэш, но с другой стороны упадёт скорость открытия страниц т.к. кажды раз ему нужно будет качать всё содержимое запрашиваемого сайта.
Или я ошибаюсь?

Спасибо!

Сhemist
25-03-2008, 12:01
Chemist, подскажи как вырубить кэширование полностью и есть ли в этом смысл?

Выключаете использование squidа и все. Все запросы идут напрямую.

А нужен Вам squid или нет, тут уж решать самому. У меня на компе стоит прокся, которая режет что нужно. А squid я чаще использую снаружи.

les
25-03-2008, 12:07
Выключаете использование squidа и все. Все запросы идут напрямую.
.

Дело в том, что сквид я использую не для выхода из локалки, а для обхода прокси моего работодателя через нестандартный порт. Эх, каждый пролазит наружу как может :D

Поэтому отказаться от сквида я не могу, но кэширование мне, в принципе, не нужно. Вот и хотел его попробывать вырубить. Возможно ли это?

Сhemist
25-03-2008, 12:28
Ну и я примерно так же его использую. При этом никогда не задумывался как там выключать кэширование и делать это или не делать. Мне мощи коробки вполне хватает, т.к. в этом деле не мощь главное, а толщина канала. Туда-сюда все гонять, тут скорость будет узким местом.
Почитай сторонние маны, может кто такую задачу решал.
И попробуй вот это (http://wl500g.info/showthread.php?t=13373), может поможет. От нее нагрузки на роутер совсем мало.

al37919
25-03-2008, 12:45
а не проще ли использовать стандартный ssh сервер с организацией туннеля для той же цели?

Сhemist
25-03-2008, 13:00
Это к les вопрос. Для моих разовых вылазок такой комбинации достаточно. У меня с доступом полегче :)

al37919
25-03-2008, 13:29
ну, насколько я понял, вы с les делаете одно и то же:
подняв сквид на роутере стоящем в месте А, прописав его в месте Б в виде прокси, ходим в инет, находясь в Б через А.

Тот же результат достижим так:
1) dropbear надеюсь уже стоит и в wan смотрит
2) создаем динамический туннель в putty и открываем соединение
3) прописываем А в виде socks5 прокси и ходим в инет из Б через А

Подробно я этот вопрос разбирал здесь: http://wl500g.info/showthread.php?t=12833

Просто сквид в отличие от дропбира штука уж больно тяжеловесная... imho, конечно.

Сhemist
25-03-2008, 13:35
Ты все верно понял, но я повторюсь - мне это удовольствие нужно раз в сто лет. Поэтому дернуть галку через F12 в Opera мне быстрее для получение нужного результата.
А твою ссылку видел уже и взял на заметку. Как только - так сразу!

les
26-03-2008, 15:03
al37919, спасибо за инфу. Идея с ssh-тонелем мне понравилось, однако полностью реализовать не удалось. Детали напишу в топике про ssh-тонели, т.к. к squid это отношения не имеет.

Добавлено: В конце-концов разобрался! Спасибо.

Выводы:
Если нужен доступ в инет через коробочку на нестандартном порту (например, обход файрвола сети из котороый вы выходите) то ssh-tunnel удобнее если выход нужен только одному или нескольким людям, но тем кому можно доверить логин на рутер. В любом другом случае лучше использовать squid, так как он позволяет создать отдельный файл с логинами пользователей и не требует никаких дополнительных действий для выхода в инет.

monarchp
14-06-2008, 14:54
1. как дать доступ к проксе всей своей локальной подсетке (192.168.*) и конкретным ip'шникам из вне...?
2. регулярно вылетает.. - Jun 14 20:14:00 kernel: Out of Memory: Killed process 429 (squid). - как решается...?
3. хотел прикрутить статистику к сквиду... нашол Sarg - Squid Analysis Report Generator , но толком не компилится... может кто собирал уже бинарник и поделится..?


gcc -c -I. -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_ICONV=1 -DICONV_CONST= -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_TIME_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DIRENT_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_NETDB_H=1 -DHAVE_ARPA_INET_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_NETINET_IN_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_CTYPE_H=1 -DHAVE_GD_H=1 -DHAVE_GDFONTL_H=1 -DHAVE_GDFONTT_H=1 -DHAVE_GDFONTS_H=1 -DHAVE_GDFONTMB_H=1 -DHAVE_GDFONTG_H=1 -DHAVE_ICONV_H=1 -DHAVE_ERRNO_H=1 -DHAVE_SYS_RESOURCE_H=1 -DSIZEOF_OFF_T=4 -DOFFSET_STRING=\"%d\" -DHAVE_FOPEN64=1 -g -O2 -w -DBINDIR=\"/opt/bin\" -DSYSCONFDIR=\"/opt/etc/sarg\" -DHTMLDIR=\"/opt/share/www/sarg\" topuser.c
gcc: Internal error: Terminated (program cc1)
Please submit a full bug report.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
make: *** [topuser.o] Error 1

monarchp
17-06-2008, 01:21
никто не вкурсе ..? ))

vectorm
17-06-2008, 08:39
никто не вкурсе ..? ))
Подскажу только по 2 вопросу:
юзать своп файл или перепаивать до 128 метров память.

Novik
17-06-2008, 09:02
3. хотел прикрутить статистику к сквиду... нашол Sarg - Squid Analysis Report Generator , но толком не компилится...
Убрать ключ -O2. Или собирать кросс-компилятором на большой машине.

greenfox
20-06-2008, 16:06
При запуске гоорит:

Starting proxy server: 2008/06/20 18:59:10| squid.conf line 40: acl QUERY urlpath_regex cgi-bin ?
2008/06/20 18:59:10| aclParseRegexList: Invalid regular expression '?': Invalid preceding regular expression


Строка 40:

hierarchy_stoplist cgi-bin ?


cache.log :

2008/06/20 18:59:29| WARNING: basicauthenticator #1 (FD 7) exited
2008/06/20 18:59:29| Too few basicauthenticator processes are running
FATAL: The basicauthenticator helpers are crashing too rapidly, need help!



Что ему, блин надо???
Помогите, плиз

Alexey
05-08-2008, 13:01
Может и мне кто поможет, хочу прикрутить к squid'у веб морду. например lightsquid. научите как настроить веб сервер, чтобы показывалась статистика. или если это будет непосильная нагрузка на коробочку, то может кто знает бесплатный анализатор squid логов под windows.

Nebulosa
07-08-2008, 11:18
А есть SquadGuard в репазиториях? Как это пожно посмотреть?
Или кто ставил, поделитесь соображениями, как работает, хватает ли мощности роутера.
Правил немного, около сотни доменов и различных путей, регулярок штук 15... Если есть более легковесные аналоги, тоже посоветуйте ссылкой.

Есть сквид+сквид гуард настроенный, хочу вот на роутер перетащить.

p.s. знаю что можно все рализовать в конфигах самого сквида, но вот только один ньюанс при ошибке 403 - сквид отдает html-страничку, а мне нужно чтобы он отдавал пустой gif-файл - смотрится это куда лучше.

Nebulosa
12-08-2008, 12:21
Поковырялся, размышляю вслух... :)

Установил сквид, никаких проблем, настроил, прокси работает. Начал заново осмысливать проблему вырезания рекламы, уточнил кое-какие моменты (сразу замечу что мне сквид нужен только для вырезки баннеров, все логи я отключил, статистика и даже кеш мне тоже не нужны):

- в сквиде, сборки для OpenWRT, кеш не отключается (предполагаю отсутсвует опция при компиляции) поэтому выставил кеш в 1KB.

- Если реализовывать блокирование баннеров средствами самого сквида, то получаем два неприятных момента - все списки блокировок будут грузиться в оперативную память, коей очень и очень мало, и второй момент - возможно выдача только html-странички, а не прозрачного gif-файла, вместо баннеров, который я хотел получить.

- Squidguardа нет в репазиториях, нужно самостоятельно его откомпилировать и установить, кроме самого squidguard также нужно откомпилировать BerkerlyDB. Я пока не смог разобраться, как это дело компилировать в OpenWRT SDK

Поскипев мозгами, решил особо не заморачиваться с компиляцией, и сделать альтернативный вариант - установить скрипт фильтрафии на Perl (хотя процессор perl кушает, мама не горюй!). Монструозный adzapper я сразу отверг, потому как даже на моем компе он вешал процессор, превращая браузинг в пытку :) Попробовал поискать альтернативы попроще, нашел BannerFilter (http://phroggy.com/bannerfilter/) - скрипт для perl в 7 кб без особых наворотов. Поставил Perl (размером 9,7МБ OMG!), потому как microperlа для скрипта было маловато.
Подключил в конфиге редиректор, указал количество потоков редиректа - 2, свалил в одну кучу правила фильтрации (кстати хочу отметить в плюс упрощенную систему правил, регулярные выражения особо не нужны), запустил - работает!

"Подытожим" (c) : все работает, особых тормозов не наблюдаю, однако есть моменты, которые тоже хотелось бы улучшить - а именно - уменьшить размер занимаемой оперативной памяти. Сам squid очень прожорлив - по показниям htop - 12% ~ 3,5 Мб серфинге может вырасти до 14-15% ~ 4-4,5Мб + 2 потока занимают по 7,5% каждый а это по 2 мб на поток + еще один процесс squid c указанием конфигурации - 2,8% - 810КВ. Тоесть идея с вырезанием рекламы обошлась мне в ~8Мб минимум оперативной памяти, что я считаю многовато...

Думаю, что можно попробовать еще два варианта - скомпилировать и установить squidguard либо попробовать поковыряться в mod_redirect для lighttp, вроде он такое позволяет. Посмотрим плюсы-минусы, если что вернусь к текущему варианту.

DafT
12-08-2008, 21:06
1. как дать доступ к проксе всей своей локальной подсетке (192.168.*) и конкретным ip'шникам из вне...?
2. регулярно вылетает.. - Jun 14 20:14:00 kernel: Out of Memory: Killed process 429 (squid). - как решается...?
3. хотел прикрутить статистику к сквиду... нашол Sarg - Squid Analysis Report Generator , но толком не компилится... может кто собирал уже бинарник и поделится..?


gcc -c -I. -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DHAVE_DIRENT_H=1 -DSTDC_HEADERS=1 -DHAVE_ICONV=1 -DICONV_CONST= -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_TIME_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DIRENT_H=1 -DHAVE_SYS_SOCKET_H=1 -DHAVE_NETDB_H=1 -DHAVE_ARPA_INET_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_NETINET_IN_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_CTYPE_H=1 -DHAVE_GD_H=1 -DHAVE_GDFONTL_H=1 -DHAVE_GDFONTT_H=1 -DHAVE_GDFONTS_H=1 -DHAVE_GDFONTMB_H=1 -DHAVE_GDFONTG_H=1 -DHAVE_ICONV_H=1 -DHAVE_ERRNO_H=1 -DHAVE_SYS_RESOURCE_H=1 -DSIZEOF_OFF_T=4 -DOFFSET_STRING=\"%d\" -DHAVE_FOPEN64=1 -g -O2 -w -DBINDIR=\"/opt/bin\" -DSYSCONFDIR=\"/opt/etc/sarg\" -DHTMLDIR=\"/opt/share/www/sarg\" topuser.c
gcc: Internal error: Terminated (program cc1)
Please submit a full bug report.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
make: *** [topuser.o] Error 1


первое разрули через iptables например
iptables -i vlan1 -s ххх.ххх.ххх.ххх -I INPUT -p tcp --dport 3128 -j ACCEPT разрешаешь внешнему ip вход
iptables -i vlan1 -s 192.168.0.0/16 -I INPUT -p tcp --dport 3128 -j ACCEPT
разрешаешь вход на подсеть ( если подсеть 192,168,1,ххх то маска будет не 16 а 24)
ну а дальше всех остальных с порта скидываешь iptables -i vlan1 -s 0.0.0.0/0 -I INPUT -p tcp --dport 3128 -j DROP

рад если помог :)

opyzhov
09-09-2008, 10:51
в сети 4 компа.. подключены к роутеру Asus, один из подключенных компов Linux Server (ubuntu)
На Asus стоит Squid все ходят в инет через него, поднят SNMP протокол и настроена маршрутизация.. больше на роутере никакие проги не стоят..(чтобы не грузить)
linux server занимается закачками, и сбором статистики по SNMP от роутера Asus. (MRTG)

Возможно ли запустить анализ статистики по сквиду на Linux Server..

Nebulosa
19-09-2008, 11:14
И опять к теме redirector'a. :)

Остановился вообщем на варианте Bash скрипта:
+ не нужно устанавливать Perl (+ экономия места например на флешке)
+ очень быстрая работа работа скрипта, браузер (firefox) не подвисает при открытии многих страниц, время отклика уменьшилось, видно невооруженным глазом.
+ расход оперативной памяти меньше - 5 процессов (минимум необходимый для работы браузера, меньше - прокси отказывает в соединении) занимает меньше памяти чем один процесс perl.
+ при изменении/добавлении списка баннеров не нужно перегружать конфигурацию Squid - правила добваляются на лету.

- обратная сторона работы без перегрузки squid - список баннеров прогоняется полностью, впрочем редиректор написан таким образом, чтобы по возможности уменьшить прогон по списку

Установка:
в squid.conf добавить:

url_rewrite_program /opt/bannerfilter/redirector.sh
url_rewrite_children 5

Установить grep: ipkg install grep потому как в busybox grep не понимает опцию "-Ff"

создать файл redirector.sh в папке /opt/bannerfilter

#!/bin/sh

while :
do
read url user idt met
[ "`echo "$url" | /opt/bin/grep -Ff /opt/bannerfilter/exceptions`" = "" ] && [ "`echo "$url" | /opt/bin/grep -Ff /opt/bannerfilter/banners`" ] && url="http://192.168.1.1/null.gif";
echo "$url $user $idt $met"
done

chmod +x /opt/bannerfilter/redirector.sh
в файле /opt/bannerfilter/banners - список заблокированных URL
в файле /opt/bannerfilter/exceptions - список URL-исключений.

Перед запуском squid обязательно проверьте работу редиректора, а это сделать просто - нужно его запустить и кинуть парочку url, вроде такого:

$ cd /opt/bannerfilter/
$ ./redirector.sh
http://google-analytics.com
http://192.168.1.1/null.gif
http://ya.ru
http://ya.ru
Ctrl+C

to be continued... :)

Nebulosa
12-11-2008, 05:45
Очередное улучшение в коде редиректора -

Поскольку в репозитории наконец-то выложили grep 2.5.3, то воспользуемся опцией
-m, --max-count=NUM stop after NUM matches

Т.е. redirector.sh выглядит так:

#!/bin/sh

while :
do
read url user idt met
[ "`echo "$url" | /opt/bin/grep -m1 -Ff /opt/www/av/bannerfilter/exceptions`" = "" ] && [ "`echo "$url" | /opt/bin/grep -m1 -Ff /opt/www/av/bannerfilter/banners`" ] && url="http://192.168.1.1/null.gif";
echo "$url $user $idt $met"
done

Логика работы стала более продуманной - после первого же совпадения правила, остальные правила пропускаются и начинает обрабатываться следующий URL.

Результат оптимизации виден и невооруженным глазом :) :

export http_proxy=192.168.1.1:8080&& time wget -p --proxy=on -q http://wl500g.info

real 0m8.070s
user 0m0.008s
sys 0m0.048s

rm -r wl500g.info/

export http_proxy=192.168.1.1:8080&& time wget -p --proxy=on -q http://wl500g.info

real 0m6.736s
user 0m0.008s
sys 0m0.024s

Здесь, banners список - 683 правила, exceptions - 21 правило.

angel_il
23-11-2008, 09:50
Мне понадобилось и я решил откомпилить squid с ключом –enable-delay-pools
и у меня вышло.
качается тут с rapid share (http://rs407.rapidshare.com/files/166495505/squid_2.6.21-2_mipsel.ipk)

поставил, затестил, все ок ... must have, 3proxy нафиг....

тяжеловат он для для нашей коробочки, а так конечно сквид наверное лучшее что есть.

Nebulosa
23-11-2008, 15:42
тяжеловат он для для нашей коробочки, а так конечно сквид наверное лучшее что есть.

Да все с ним нормально ;)

2bars
23-11-2008, 18:37
А я взялся то за него, так как у меня 3proxy валился... бесследно причем...
я все равно остаюсь доволен... и шеить даже спокойно можно... еще clamav поднять и все... роутер точно сдохнет :D
кстате человек сверху написавший жжот, скуль поднял и джумлу повесил... гг

по поводу тулчейна... 2 часа ставиться не мнеьше... я думал у меня глаза вылезут

serji
27-11-2008, 17:28
следующий вопрос:
как правильно "чистить логи" от ненужных месяцев в сквиде и лайтсквиде

SergKM
28-11-2008, 08:55
качается тут с rapid share (http://rs407.rapidshare.com/files/166495505/squid_2.6.21-2_mipsel.ipk)
а кто-нибудь еще этот пакет скачивал и устанавливал?

У меня ошибка

ipkg install squid_2.6.21-2_mipsel.ipk
Installing squid (2.6.21-2) to /opt/...
Nothing to be done
Successfully terminated.
Collected errors:
Package squid md5sum mismatch. Either the ipkg or the package index are corrupt. Try 'ipkg update'.

Nebulosa
28-11-2008, 10:21
а кто-нибудь еще этот пакет скачивал и устанавливал?

Ну.. я не качал, я собрал свой, в том числе и с –enable-delay-pools :)

Наконец-то убрал кеширование совсем, прочие штуки отключил.. squid оперативку стал жрать на 3-4МБ меньше, это огромный плюс.

дополнительные опции -

--enable-storeio="ufs,null" \
--disable-carp \
--disable-wccp \
--disable-wccpv2 \
--enable-delay-pools \
--enable-kill-parent-hack \
--enable-err-language="Russian-1251" \
--enable-default-err-language="Russian-1251" \
--disable-ident-lookups \

xkir
28-11-2008, 12:39
Спасибо за выложенную сборку, завелось :) правда ругалось на CRC пакета, пришлось ставить вручную.
Вопрос: Подскажите, как в настройках сквида совсем отключить дисковый кеш? что-то в доках и FAQ не нашел.

serji
28-11-2008, 14:27
Здесь, banners список - 683 правила, exceptions - 21 правило.

Простите где?

SergKM
28-11-2008, 14:44
правда ругалось на CRC пакета, пришлось ставить вручную. Вручную - это как? Можно поподробнее?

Less
28-11-2008, 16:11
Вручную - это как? Можно поподробнее?


ipkg install <имя пакета>

SergKM
28-11-2008, 17:08
ipkg install <имя пакета> Нет видимо имелось ввиду вручную из архива все файлы по каталогам раскидать...

2bars
28-11-2008, 20:17
кстати мой пакет моск еб*ть начал я просто в списке пакетов который он с сервака выкачивает md5 сумму подменил на свою...

lagshmi
29-11-2008, 22:42
acl QUERY urlpath_regex cgi-bin ?
cache deny QUERY
при запуске ругатся на эти 2 строчи....

помогите пожалуйстотлючть авторизацию...

Less
29-11-2008, 23:21
acl QUERY urlpath_regex cgi-bin ?
cache deny QUERY
при запуске ругатся на эти 2 строчи....

помогите пожалуйстотлючть авторизацию...
1.
Замените на

acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY


2.
Вставте эти строки

acl MyHOST src IP/255.255.255.255
http_access allow MyHOST
перед строками

http_access allow MY
или же Вашей первой строкой
http_access allow
где вы разрешаете первое правило которому необходима авторизация.

Nebulosa
30-11-2008, 08:15
Спасибо за выложенную сборку, завелось :) правда ругалось на CRC пакета, пришлось ставить вручную.
Вопрос: Подскажите, как в настройках сквида совсем отключить дисковый кеш? что-то в доках и FAQ не нашел.
Плохо искали :)

squid должен быть скомпилирован с опцией: --enable-storeio="ufs,null,... " (то есть как раз в моей сборке это есть), а затем указать в конфиге:


cache_dir null /opt/var/squid/cache

Сборку сквида (и nginx тоже) тоже ставлю предварительно подменяя контрольную сумму в листе дистрибов, если кто знает более "гуманный" способ, напишите...

2bars
30-11-2008, 10:46
мне кажется если имя пакета переименовать, на не стандартное то он не найдет ничерта в списках и поставит такой как есть ) не пробовал никто?

serji
01-12-2008, 09:04
после смены redirector.sh и установки grep 2.5.3
Вывалился SQUID со словами

Dec 1 11:10:40 squid[255]: Squid Parent: child process 304 started
Dec 1 11:10:42 squid[304]: The url_rewriter helpers are crashing too rapidly, need help!
Dec 1 11:10:42 squid[255]: Squid Parent: child process 304 exited due to signal 6
а сам redirector.sh

./redirector.sh: ./redirector.sh: 7: Syntax error: Unterminated quoted string

Nebulosa
03-12-2008, 06:56
Простите где?

Ну у меня лежит, насобирал вручную при серфинге по злачным местам :)
Я их не выкладываю, потому как у каждого список будет свой.

Прочитал в очередной раз маны про редиректоры Squid немного уточнил свой редиректор, лишние переменные убрал и прочее:



#!/bin/sh

while :
do
read url ip ident method
[ "`echo "$url" | /opt/bin/grep -m1 -Ff /opt/bannerfilter/exceptions`" = "" ] && ([ "`echo "$url" | /opt/bin/grep -m1 -Ff /opt/bannerfilter/banners`" ] && echo 'http://192.168.1.1/null.gif' || echo) || echo
done

Заодно выяснил что 5 процессов крайне мало (у меня затык был именно в этом месте..), также выяснил что мой браузер (Firefox) может держать 16 коннектов с сайтом одновременно, а сквид получается может обработать только 5. Поэтому сделал ход конём - увеличил количество процессов до 30. :)


url_rewrite_children 30
Теперь все летает и overload гораздо ниже.

RekoD
15-01-2009, 19:08
Люди, запостьте пожалуйста _минимальный_ рабочий конфиг для squid'a.
Всем спасибо! :)

Вот с таким он запускается (видно по ps), но не слушает порт 3128 :(

(NCSA авторизация мне нужна, т.е. она в конфиге не случайно)


visible_hostname TEST_SQUID
http_port 127.0.0.1:3128

access_log /opt/var/squid/logs/access.log squid

coredump_dir /opt/var/squid/cache

auth_param basic program /opt/libexec/ncsa_auth /opt/etc/squid/users.acl
auth_param basic children 5
auth_param basic realm Squid on ONE-BOX
auth_param basic credentialsttl 8 hour

acl all src 0.0.0.0/0.0.0.0
http_access allow all


Squid стартует без ошибок, есть в процессах, но не открывает 3128 порт :(

$/opt/etc/init.d/S80squid start
Starting proxy server: done.
done.


Подскажите пожалуйста, что не так в конфиге:


visible_hostname SQUID_TEST
http_port 3128

auth_param basic program /opt/libexec/ncsa_auth /opt/etc/squid/users.acl
auth_param basic children 1
auth_param basic realm SQUID_TEST
auth_param basic credentialsttl 2 hours

cache_dir ufs /opt/var/squid/cache 20 16 256
pid_filename /opt/var/squid/logs/squid.pid
access_log /opt/var/squid/logs/access.log squid
icon_directory /opt/share/squid/icons
error_directory /opt/share/squid/errors/Russian-1251
coredump_dir /opt/var/squid/cache

cache_effective_user nobody
cache_effective_group nobody

cache_swap_low 97
cache_swap_high 100

acl all src 0.0.0.0/0.0.0.0
http_access allow all

Нужен _минимальный_ конфиг...
ACL потом буду генерить в конец конфига (скриптом из описания).

RekoD
15-01-2009, 22:21
В общем разобрался - надо сквид с ключем -D запускать, чтобы он не делал DNS тестов (на них и валился).

Как узнал: разведал это когда запустил в режиме debug (ключ -d1).

В общем разобрался - надо сквид с ключем -D запускать, чтобы он не делал DNS тестов (на них и валился).

Как узнал: разведал это когда запустил в режиме debug (ключ -d1).

К сожалению на консоль всё равно периодически валятся сообщения:

/opt/etc/init.d/FATAL: ipcache_init: DNS name lookup tests failed.
2009/01/06 06:51:20| Squid is already running! Process ID 609

_Действительно_ минимальный конфиг:

visible_hostname SQUID_TEST
http_port 3128

cache_dir ufs /opt/var/squid/cache 20 16 256
pid_filename /opt/var/squid/logs/squid.pid
access_log /opt/var/squid/logs/access.log squid
icon_directory /opt/share/squid/icons
error_directory /opt/share/squid/errors/Russian-1251
coredump_dir /opt/var/squid/cache

cache_effective_user nobody
cache_effective_group nobody

cache_swap_low 97
cache_swap_high 100

acl all src 0.0.0.0/0.0.0.0
http_access allow all


А вот минимальный конфиг с поддержкой NCSA авторизации пользователей:


visible_hostname SQUID_TEST
http_port 3128

auth_param basic program /opt/libexec/ncsa_auth /opt/etc/squid/users.acl
auth_param basic children 1
auth_param basic realm SQUID_TEST
auth_param basic credentialsttl 2 hours

cache_dir ufs /opt/var/squid/cache 20 16 256
pid_filename /opt/var/squid/logs/squid.pid
access_log /opt/var/squid/logs/access.log squid
icon_directory /opt/share/squid/icons
error_directory /opt/share/squid/errors/Russian-1251
coredump_dir /opt/var/squid/cache

cache_effective_user nobody
cache_effective_group nobody

cache_swap_low 97
cache_swap_high 100

acl all src 0.0.0.0/0.0.0.0

#
# per-user ACLs
#
acl test_user proxy_auth user

#
# per-user access rules
#
http_access allow test_user all

http_access deny all

Естественно не забываем добавлять юзверей в /opt/etc/squid/users.acl
командой (должен быть установлен (но не обязательно запускать) апач!):

htpasswd -b /opt/etc/squid/users.acl username password
А также в конфиг.

Естественно лучше для добавления написать скрипт, чтобы не править для каждого юзера 2 файла... ;)

opyzhov
28-01-2009, 13:56
Поставил пол года назад сквид
4 домашних юзера
1 Гб USB flash для кеша
Так вот при открытие страниц чувствовались торможения,,
было так: запрос страницы пауза потом бах вся страница целиком открывалась
подозреваю, что это из за того, что скорость чтения фалов с кеш диска медленне чем загрузка из сети, подозреваю что кэш сервер стоит и у провайдера (авангард) поэтому доступ к нему достаточно быстрый

Поправьте если я не прав. Снес

На компе с linux, который стоял до роутера в качестве шлюза - все работало хорошо и быстро
Так что подозреваю что не место сквиду на роутере

Nebulosa
29-01-2009, 12:34
Собрал новый squid, а то что-то его совсем забросили..

Дополнительные опции:
--enable-storeio="ufs,null" \
--disable-carp \
--disable-wccp \
--disable-wccpv2 \
--enable-delay-pools \
--enable-kill-parent-hack \
--enable-err-language="Russian-1251" \
--enable-default-err-language="Russian-1251" \
--disable-ident-lookups \

Nebulosa
05-02-2009, 12:32
Очередные обновления:

Собрал squid самый последний из ветки 2.6 с опциями:
--enable-storeio="ufs,null" \
--enable-delay-pools \
--enable-kill-parent-hack \
т.е. максимально универсальный, для тех кто хочет продолжать пользоваться веткой 2.6


Для остальных очередная версия 2.7.6 с опциями:
--enable-storeio="ufs,null" \
--disable-carp \
--disable-wccp \
--disable-wccpv2 \
--enable-delay-pools \
--enable-kill-parent-hack \
--enable-err-language="Russian-1251" \
--enable-default-err-language="Russian-1251" \
--disable-ident-lookups \

serji
09-02-2009, 14:49
lightparser.pl сильно грузит систему!


Mem: 29248K used, 916K free, 0K shrd, 528K buff, 12056K cached
Load average: 3.38, 2.95, 2.43 (State: S=sleeping R=running,

PID USER STATUS RSS PPID %CPU %MEM COMMAND
30318 admin R 1208 30316 88.3 4.0 lightparser.pl
25090 admin R 244 20858 2.6 0.8 top
172 nobody S 5512 170 2.0 18.2 squid
174 nobody S 240 172 0.1 0.7 redirector.sh
30332 admin S 124 30318 0.1 0.4 cat
89 admin SW 0 1 0.1 0.0 usb-storage-0
3 admin RWN 0 1 0.1 0.0 ksoftirqd_CPU0
126 admin S 324 1 0.0 1.0 nmbd
30316 admin S 284 30314 0.0 0.9 sh
176 nobody S 244 172 0.0 0.8 redirector.sh
179 nobody S 244 172 0.0 0.8 redirector.sh
173 nobody S 240 172 0.0 0.7 redirector.sh
175 nobody S 240 172 0.0 0.7 redirector.sh
177 nobody S 240 172 0.0 0.7 redirector.sh
178 nobody S 240 172 0.0 0.7 redirector.sh
180 nobody S 240 172 0.0 0.7 redirector.sh
15947 admin S 232 1 0.0 0.7 httpd
94 admin S 196 1 0.0 0.6 watchdog
71 nobody S 192 1 0.0 0.6 dnsmasq
165 admin S 176 1 0.0 0.5 lighttpd
92 admin S 172 1 0.0 0.5 pppd
115 admin S 124 1 0.0 0.4 dropbear
30314 admin S 116 148 0.0 0.3 cron
148 admin S 112 1 0.0 0.3 cron
65 admin S 88 1 0.0 0.2 syslogd
58 admin S 72 1 0.0 0.2 telnetd
1 admin S 68 0 0.0 0.2 init
208 nobody S 60 172 0.0 0.1 unlinkd
13314 admin S 56 128 0.0 0.1 smbd
181 nobody S 52 172 0.0 0.1 redirector.sh
20858 admin S 52 58 0.0 0.1 sh
182 nobody S 48 172 0.0 0.1 redirector.sh
183 nobody S 48 172 0.0 0.1 redirector.sh
184 nobody S 48 172 0.0 0.1 redirector.sh
185 nobody S 48 172 0.0 0.1 redirector.sh
187 nobody S 48 172 0.0 0.1 redirector.sh
188 nobody S 48 172 0.0 0.1 redirector.sh
189 nobody S 48 172 0.0 0.1 redirector.sh
190 nobody S 48 172 0.0 0.1 redirector.sh
191 nobody S 48 172 0.0 0.1 redirector.sh
192 nobody S 48 172 0.0 0.1 redirector.sh
193 nobody S 48 172 0.0 0.1 redirector.sh
124 admin S 32 1 0.0 0.1 vsftpd
66 admin S 28 1 0.0 0.0 nas
69 admin S 28 1 0.0 0.0 klogd
97 admin S 16 94 0.0 0.0 ntp
167 admin S 8 165 0.0 0.0 php-fcgi
152 admin S 8 1 0.0 0.0 php-fcgi
206 admin S 8 167 0.0 0.0 php-fcgi
207 admin S 8 167 0.0 0.0 php-fcgi
205 admin S 8 152 0.0 0.0 php-fcgi
128 admin S 4 1 0.0 0.0 smbd
4 admin SW 0 1 0.0 0.0 kswapd
[admin@W500 root]$

и подолгу....
каждые 5 минут процесс ест 80-90% ЦП около 2-х минут!

Less
09-02-2009, 18:37
lightparser.pl сильно грузит систему!
...
и подолгу....
каждые 5 минут процесс ест 80-90% ЦП около 2-х минут!

А Вы поставте раз в час, 5 или 24.
Вам актуальна риал тайм статистика?

П.С. для текущих соединений можно пользовать sqstat 1.2 sqstat (http://samm.kiev.ua/sqstat/)

serji
10-02-2009, 03:17
я подумал, чем чаще он работает, тем меньше объем вычислений ему производить, тем быстрее (меньше по времени) он должен работать

StaREViL
15-02-2009, 13:15
1.
Замените на

acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY


2.
Вставте эти строки

acl MyHOST src IP/255.255.255.255
http_access allow MyHOST
перед строками

http_access allow MY
или же Вашей первой строкой
http_access allow
где вы разрешаете первое правило которому необходима авторизация.

Убрал вообще пару строк, про авторизация.

[admin@WL500 share]$ cat /opt/etc/squid/squid.conf
#auth_param basic program /opt/libexec/ncsa_auth /opt/share/squid
#auth_param basic children 1
#auth_param basic realm Authorized users only. Squid PROXY
#auth_param basic credentialsttl 2 hours

#acl MY proxy_auth REQUIRED
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl home src 172.16.0.0/255.255.0.0
acl to_localhost dst 172.16.0.0/16
acl Safe_ports port 21 # ftp
acl CONNECT method CONNECT
acl banners url_regex "/opt/share/squid/banners.acl"

http_access deny banners
http_access allow home

http_port 3128

hierarchy_stoplist cgi-bin ?

cache_dir ufs /opt/var/squid/cache 20 16 256

cache_swap_low 97
cache_swap_high 100

access_log /opt/var/squid/logs/access.log squid
pid_filename /opt/var/squid/logs/squid.pid

#acl QUERY urlpath_regex cgi-bin ?
#no_cache deny QUERY

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320

acl apache rep_header Server ^Apache
broken_vary_encoding allow apache

header_access From deny all
header_access Referer deny all
header_access User-Agent deny all
header_access Cache-Control deny all
header_access Via deny all
header_access X-Forwarded-For deny all

cache_effective_user nobody
cache_effective_group nobody

visible_hostname host

icon_directory /opt/share/squid/icons
error_directory /opt/share/squid/errors/Russian-1251

cachemgr_passwd 456789 all

coredump_dir /opt/var/squid/cache


Работает, но.
Если сделать.
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
редирект, то вываливается ошибка в web

ОШИБКА
Запрошенный URL не может быть доставлен.

--------------------------------------------------------------------------------

Во время обработки запроса:

GET /index.php?option=com_planbafisha HTTP/1.1
Accept: */*
Referer: http://www.planbclub.ru/index.php?option=com_content&view=article&id=5&Itemid=6
Accept-Language: ru
UA-CPU: x86
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)
Host: www.planbclub.ru
Connection: Keep-Alive
Cookie: cfd9011911ae0506a6141b043a06539a=58d823048bba4197b 26ff0d570578983; fontSize=100


Произошла следующая ошибка:

Неверный запрос.
Некоторые аспекты HTTP запроса неправильны. Возможные проблемы:

Отсутствует либо неизвестен метод запроса (GET, POST)
Отсутствует URL
Отсутствует HTTP идентификатор (HTTP/1.0)
Запрос слишком велик
Не указан Content-Length для запросов POST или PUT
Недопустимый символ в имени сервера; подчеркивания недопустимы

Что это может быть.
Правильно ли вообще убирать закоментированные у меня параметры.

StaREViL
15-02-2009, 18:50
Убрал вообще пару строк, про авторизация.



Порылся в инете. Нашел тольк что надо включить
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

Но сквид ругается, не понимает что это за строки такие...

vectorm
15-02-2009, 20:24
Для прозрачного проксирования нужно не
http_port 3128
а
http_port 3128 transparent
Тогда можно редирект ставить.

StaREViL
15-02-2009, 21:26
Для прозрачного проксирования нужно не
http_port 3128
а
http_port 3128 transparent
Тогда можно редирект ставить.

Спасибо большое. Теперь работает, а то я уж начал цепочки мутить из 3proxy & squid

10der
17-03-2009, 21:33
Господа, я правильно понял, что включать на наших коробочках кеш для сайтов на сквиде не имеет смысла?
Тогда вопрос в лоб - Очень хочется иметь нечто занимающееся кеширование веб страничек и картинок на сайте - how to?
:(

2bars
18-03-2009, 18:49
я вижу концепцию сквида именно в кэше...
По логике... Если в кэше нету запращиваемого, то, пожалуй я загружу это в кэш и выдам пользователю ответ на запрос из кэша.если кэш не нужен то сквид превращается в дорогое удовольствие, Лучше 3proxy и иже...

А squid отлично ладит с кэшем... можно разные штуки придумывать на нескольких компах...

10der
18-03-2009, 21:14
А squid отлично ладит с кэшем... можно разные штуки придумывать на нескольких компах...
Ага, спасибо. Понял. На работе у меня на FreeBSD уже лет 5 крутится squid и проблем как бы нет (хотя на ранних версиях он любил падать в кору на ровном месте), вот я и спросил, как он будет жить и насколько будет прожорлив на нашей железке.
Еще раз спасибо за ответ.

oleg71
05-04-2009, 16:30
Что-т тема глохнет
никто что-ль не пользуется squid"ом
говорят экономит траффик!
Что думаете? по этому поводу.

serji
06-04-2009, 04:15
Что-т тема глохнет
никто что-ль не пользуется squid"ом
говорят экономит траффик!
Что думаете? по этому поводу.

squid рулёз!
тема не глохнет.. просто прочитав ветку находишь 100% ответов!!!!

экономию трафика не замерял, но видимо должен быть т.к. кэш в некоторых случаях быстрее медленного интернету!!!

oleg71
06-04-2009, 12:50
squid рулёз!
тема не глохнет.. просто прочитав ветку находишь 100% ответов!!!!

экономию трафика не замерял, но видимо должен быть т.к. кэш в некоторых случаях быстрее медленного интернету!!!

Рулез, рулез!

Вот по статистике и анализу логов squid"а у меня засада...
посоветуйте, очень нужно маловесное... легкое :)

lagshmi
06-04-2009, 13:18
Что-т тема глохнет
никто что-ль не пользуется squid"ом
говорят экономит траффик!
Что думаете? по этому поводу.

как это сделать? сжимать трафик gzip? но как это сделать?
кто бы еще скомпилировал squidguard под роутер

serji
06-04-2009, 13:28
Рулез, рулез!

Вот по статистике и анализу логов squid"а у меня засада...
посоветуйте, очень нужно маловесное... легкое :)

поставил lightsquid
удобно, не скажу что легкая, но работает 8)

oleg71
06-04-2009, 13:40
поставил lightsquid
удобно, не скажу что легкая, но работает 8)

LightSquid
Required software:
Perl :eek:
http server (Apache, lighthttpd, etc)
Squid
Cron

да уж, легонький :D

Что думаете про cachemangr от самого squid'a ?
но гад тоже php требует.

serji
06-04-2009, 13:42
мне кажется они все одинаковые.....
и ресурсов жрут ОГРОМЕННОЕ количество...
====================
сколько роутер не напичкивай,
а сервером он не станет 8((

oleg71
06-04-2009, 18:26
как это сделать? сжимать трафик gzip? но как это сделать?
кто бы еще скомпилировал squidguard под роутер

Пользовался toonel тоже сжимает, но ИМХО сжатие-разжатие это одно, а тут кэш, данные берутся с него, не тратится время на сжатие-разжатие. Круг сайтов посещений в инете все равно есть, поэтому экономия есть.
Хм, мне казалось, что squidguard есть.

garry111
07-04-2009, 17:53
Подскажите, пожалуйста, создал тему (http://wl500g.info/showthread.php?t=19149) о rtorrente, 2 провайдерах, сказали что поможет только proxy сервер в распределении потоков информации (down - у безлимитного провайдера, а up - через провайдера с безлимитным исходящим каналом).

Какие настройки squida необходимо сделать, чтобы данная схема заработала?

lagshmi
08-04-2009, 12:18
Подскажите, пожалуйста, создал тему (http://wl500g.info/showthread.php?t=19149) о rtorrente, 2 провайдерах, сказали что поможет только proxy сервер в распределении потоков информации (down - у безлимитного провайдера, а up - через провайдера с безлимитным исходящим каналом).

Какие настройки squida необходимо сделать, чтобы данная схема заработала?

squid тут непричем. учи матчасть.

может у кого есть squidguard под нашу прошивку?:D

garry111
08-04-2009, 14:08
asdd в моей теме сказал, что обязательно нужен прокси, а сквид самый известный прокси.
Про матчасть я то готов учить, но что конкретно, не знаю.

StaREViL
31-05-2009, 21:09
LightSquid
Required software:

Ну, я допустим, снимаю статистику один раз в сутки...ночью, поэтому особо не парусь по поводу загрузки роутера.

atomsk
22-06-2009, 09:21
а реально на роутере squid заставить авторизовать юзеров из AD?

vectorm
22-06-2009, 12:07
а реально на роутере squid заставить авторизовать юзеров из AD?
Конечно, точно по тем-же правилам, что и на большом Линуксе.

atomsk
22-06-2009, 12:35
надо тогда роутер в домен ввести, т.е. нужен kerberos, а он у меня никак не хочет поселиться на роутере

serji
29-06-2009, 14:51
А Вы поставте раз в час, 5 или 24.
Вам актуальна риал тайм статистика?

П.С. для текущих соединений можно пользовать sqstat 1.2 sqstat (http://samm.kiev.ua/sqstat/)

попытался настроить SqStat

при обращении пишет

SqStat error
Error (1): Cannot get data. Server answered: HTTP/1.0 401 Unauthorized



http://209.85.129.132/search?q=cache:iyYpTt55XkIJ:www.catatanlepas.com/component/content/article/37-application/111-sqstat.pdf+SqStat+error+Error+(1):+Cannot+get+data&cd=20&hl=ru&ct=clnk&gl=ru&ie=UTF-8&inlang=ru

Ошибка (1): Не удается получить данные. Сервер отвечает: HTTP/1.0 403 Запрещено
Это происходит потому, что мы ставим скрипт: http_access отрицать менеджер файлов
squid.conf. Tempatkanlah сценарий является наиболее вниз по пункту http_access.

при добавлении файла HOSTS.TXT показывает пустую страницу...


Где копать??

Less
29-06-2009, 16:14
попытался настроить SqStat

при обращении пишет

SqStat error
Error (1): Cannot get data. Server answered: HTTP/1.0 401 Unauthorized
при добавлении файла HOSTS.TXT показывает пустую страницу...
Где копать??
Откуда Вы взяли, файл HOSTS.TXT? Данный енеобходимо вносить в

/etc/hosts

Вот мой config.inc.php для sqStat

<?php
/* global settings */

$use_js=true; // use javascript for the HTML toolkits

// Maximum URL length to display in URI table column
DEFINE("SQSTAT_SHOWLEN",60);

/* proxy settings */

/* Squid proxy server ip address or host name */
$squidhost[0]="localhost";
/* Squid proxy server port */
$squidport[0]=3128;
/* cachemgr_passwd in squid.conf. Leave blank to disable authorisation */
$cachemgr_passwd[0]="pro99st0";
/* Resolve user IP addresses or print them as numbers only [true|false] */
$resolveip[0]=true;
/* uncomment next line if you want to use hosts-like file.
See hosts.txt.dist. */
// $hosts_file[0]="hosts.txt"
/* Group users by hostname - "host" or by User - "username". Username work only
with squid 2.6+ */
$group_by[0]="host";
?>

Также Вы читали
/docs/README


3. Edit your squid.conf to allow cachemgr protocol:

acl manager proto cache_object
# replace 10.0.0.1 with your webserver IP
acl webserver src 10.0.0.1/255.255.255.255
http_access allow manager webserver
http_access deny manager

atomsk
30-06-2009, 09:01
помогите с вводом в домен ASUSика ! )

Less
30-06-2009, 09:06
Что Вы имеете ввиду? С какой целью Вам это необходимо?

atomsk
30-06-2009, 10:10
чтобы сквид юзеров из домена брал
понимаю роутеру будет тяжело, но попробовать хочется

Azur4
30-06-2009, 18:18
чтобы сквид юзеров из домена брал
понимаю роутеру будет тяжело, но попробовать хочется
Нужны пакеты kerberos, samba, squid.
Первого нет среди пакетов, придётся собирать самому.
Дальше - http://www.google.com/search?q=squid+ad

atomsk
30-06-2009, 19:25
как раз таки проблема в сборке кербероса под роутер...:(

Azur4
01-07-2009, 19:25
как раз таки проблема в сборке кербероса под роутер...:(

в том то и беда, вроде можно через радиус но squid собран без его поддержки :(
[admin@gate root]$ squid -v
Squid Cache: Version 2.7.STABLE6
configure options: '--build=i386-pc-linux-gnu' '--host=mipsel-linux' '--target=mipsel-linux' '--prefix=/opt' '--bindir=/opt/
bin' '--sbindir=/opt/sbin' '--libexecdir=/opt/libexec' '--datadir=/opt/share/squid' '--sysconfdir=/opt/etc/squid' '--sharedst
atedir=/opt/com/squid' '--localstatedir=/opt/var/squid' '--libdir=/opt/lib' '--includedir=/opt/include' '--oldincludedir=/opt
/include' '--infodir=/opt/info' '--mandir=/opt/man' '--disable-epoll' '--enable-basic-auth-helpers=NCSA' '--disable-nls' '--e
nable-storeio=ufs,null' '--disable-carp' '--disable-wccp' '--disable-wccpv2' '--enable-delay-pools' '--enable-kill-parent-hac
k' '--enable-err-language=Russian-1251' '--enable-default-err-language=Russian-1251' '--disable-ident-lookups' 'build_alias=i
386-pc-linux-gnu' 'host_alias=mipsel-linux' 'target_alias=mipsel-linux' 'CC=/opt/optware/toolchain/mipsel-linux-uclibc/gcc-4.
1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc' 'LDFLAGS= -L/opt/optware/staging/opt/lib -Wl,-rpath,/opt/lib -Wl,-rpath-link,/
opt/optware/staging/opt/lib ' 'CPPFLAGS=-O2 -pipe -I/opt/optware/staging/opt/include ' 'CPP=/opt/optware/toolchain/mipsel-
linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc -E'

serji
02-07-2009, 10:17
Откуда Вы взяли, файл HOSTS.TXT? Данный енеобходимо вносить в

/etc/hosts

где то нагуглилось... уже убрал

Вот мой config.inc.php для sqStat

<?php
/* global settings */
$use_js=true; // use javascript for the HTML toolkits
// Maximum URL length to display in URI table column
DEFINE("SQSTAT_SHOWLEN",100);
/* proxy settings */
/* Squid proxy server ip address or host name */
$squidhost[0]="192.168.1.1";
#$squidhost[0]="127.0.0.1";
/* Squid proxy server port */
$squidport[0]=3128;
/* "cachemgr_passwd secret all" in squid.conf. Leave blank to disable authorisation */
$cachemgr_passwd[0]="secret";
/* Resolve user IP addresses or print them as numbers only [true|false] */
$resolveip[0]=true;
/*false;
/* uncomment next line if you want to use hosts-like file.
See hosts.txt.dist. */
// $hosts_file[0]="hosts.txt"
/* Group users by hostname - "host" or by User - "username". Username work only
with squid 2.6+ */
$group_by[0]="host";
/* you can specify more than one proxy in the configuration file, e.g.: */
// $squidhost[1]="192.168.0.2";
// $squidport[1]=3129;
// $cachemgr_passwd[1]="secret";
// $resolveip[1]=true;
// $hosts_file[1]="otherhosts.txt"
?>


Также Мы читали
/docs/README


3. Edit your squid.conf to allow cachemgr protocol:

acl manager proto cache_object
# replace 10.0.0.1 with your webserver IP
acl webserver src 192.168.1.1/255.255.255.255
http_access allow manager webserver
http_access deny manager


права на папки стоят Nobody... ЧТО ЕЩЕ ПОСМОТРЕТЬ?

PS попробовал ваш config.inc.php для sqStat -- результат тот же... 8(
Error (1): Cannot get data. Server answered: HTTP/1.0 401 Unauthorized

скорее всего баг с правами, но где?


ЗЫ2! снес пароли в config.inc.php и squid.conf и о ЧУДО!!! ЗАРАБОТАЛО!!!

Спасибо за помощь!

__KiM__
14-07-2009, 11:49
Установил squid. В логах при запуске ошибок нет.
открыл порт 3128 на доступ извне.
В настройках браузера выставил параметры proxy сервера, указав внешний ip-адрес роутера и порт 3128.
Однако, интернет не работает:(
Может кто объяснить как проверить факт того, что запросы до моего роутера доходят? Что-то типа tcpdump на порту или что-то в этом роде.

Вот инфа из cashe.log после запуска squid.

2009/07/14 14:17:06| Starting Squid Cache version 2.6.STABLE21 for mipsel-unknown-linux-gnu...
2009/07/14 14:17:06| Process ID 1853
2009/07/14 14:17:06| With 256 file descriptors available
2009/07/14 14:17:06| Using poll for the IO loop
2009/07/14 14:17:06| Performing DNS Tests...
2009/07/14 14:17:06| Successful DNS name lookup tests...
2009/07/14 14:17:06| DNS Socket created at 0.0.0.0, port 1055, FD 6
2009/07/14 14:17:06| Adding nameserver 10.150.21.1 from /etc/resolv.conf
2009/07/14 14:17:06| Adding nameserver 85.21.49.2 from /etc/resolv.conf
2009/07/14 14:17:06| helperOpenServers: Starting 5 'ncsa_auth' processes
2009/07/14 14:17:06| Unlinkd pipe opened on FD 16
2009/07/14 14:17:06| Swap maxSize 20480 + 8192 KB, estimated 0 objects
2009/07/14 14:17:06| Target number of buckets: 110
2009/07/14 14:17:06| Using 8192 Store buckets
2009/07/14 14:17:06| Max Mem size: 8192 KB
2009/07/14 14:17:06| Max Swap size: 20480 KB
2009/07/14 14:17:06| Rebuilding storage in /opt/var/squid/cache (CLEAN)
2009/07/14 14:17:06| Using Least Load store dir selection
2009/07/14 14:17:06| Set Current Directory to /opt/var/squid/cache
2009/07/14 14:17:06| Loaded Icons.
2009/07/14 14:17:06| Accepting proxy HTTP connections at 0.0.0.0, port 3128, FD 18.
2009/07/14 14:17:06| Accepting ICP messages at 0.0.0.0, port 3130, FD 19.
2009/07/14 14:17:06| WCCP Disabled.
2009/07/14 14:17:06| Ready to serve requests.
2009/07/14 14:17:08| Done reading /opt/var/squid/cache swaplog (0 entries)
2009/07/14 14:17:08| Finished rebuilding storage from disk.
2009/07/14 14:17:08| 0 Entries scanned
2009/07/14 14:17:08| 0 Invalid entries.
2009/07/14 14:17:08| 0 With invalid flags.
2009/07/14 14:17:08| 0 Objects loaded.
2009/07/14 14:17:08| 0 Objects expired.
2009/07/14 14:17:08| 0 Objects cancelled.
2009/07/14 14:17:08| 0 Duplicate URLs purged.
2009/07/14 14:17:08| 0 Swapfile clashes avoided.
2009/07/14 14:17:08| Took 1.7 seconds ( 0.0 objects/sec).
2009/07/14 14:17:08| Beginning Validation Procedure
2009/07/14 14:17:08| Completed Validation Procedure
2009/07/14 14:17:08| Validated 0 Entries
2009/07/14 14:17:08| store_swap_size = 0k
2009/07/14 14:17:09| storeLateRelease: released 0 objects

Заранее благодарю.

AVoyager
14-07-2009, 12:07
Может кто объяснить как проверить факт того, что запросы до моего роутера доходят?

Посмотреть access.log?

__KiM__
14-07-2009, 15:05
Посмотреть access.log?

Только одна запись
1247556104.295 23 60.190.97.142 TCP_DENIED/407 1618 GET http://www.yahoo.com/ - NONE/- text/html

Что она значит, понятия не имею.

AVoyager
14-07-2009, 15:11
Значит, что клиенту с адресом 60.190.97.142 был запрещён доступ к http://www.yahoo.com/

В конфиге сквида разрешение внешним клиентам на доступ дан?

__KiM__
14-07-2009, 15:58
Значит, что клиенту с адресом 60.190.97.142 был запрещён доступ к http://www.yahoo.com/

В конфиге сквида разрешение внешним клиентам на доступ дан?

Подскажите, плз, где это разрешение устанавливается.
И еще это не мой внешний IP-к, а по моим попыткам вообще никаких записей не производится.

Azur4
14-07-2009, 17:30
Подскажите, плз, где это разрешение устанавливается.
И еще это не мой внешний IP-к, а по моим попыткам вообще никаких записей не производится.
Ты это... Скинь squid.conf и напиши что на выходе надо. А то разрешений можно таких написать, что потом не расплатишься если трафик помегабайтно.

__KiM__
14-07-2009, 20:37
Ты это... Скинь squid.conf и напиши что на выходе надо. А то разрешений можно таких написать, что потом не расплатишься если трафик помегабайтно.

На выходе нужна proxy для доступа с рабочего места, в обход работодателя. Для одного пользователя, лучше если с паролем.

Я бы с удовольствием весь конфиг скинул, только там раскомментаренные строки разряжены по всему огромному конфигу, без скрипта, вручную долго собирать.
Скину то, что относится к acl.
Как я понял именно эти строки регулируют доступ. Если нужны значения еще каких параметров, то могу предоставить.

acl manager proto cache_object
acl MY proxy_auth REQUIRED
acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

http_access allow MY
http_access deny all
http_port 3128

И еще вопрос. Я не понял где нужно задавать пароль и задается ли он где-либо.

LOEDiver
15-07-2009, 05:54
Из приведенных строк важны две:

acl MY proxy_auth REQUIRED
http_access allow MY

Но, для авторизации, надо еще несколько:

auth_param basic program /opt/squid/bin/checkauth
auth_param basic children 1
auth_param basic credentialsttl 2 hours
authenticate_ttl 5 minutes

Гдеcheckauth - программа-авторизатор, которая получает на стандартный вход 2 параметра (логин и пароль), проверяет их и в стандартный выход выдает "OK\n" или "ERR\n". Например что-то типа этого (на перле, переделка на другой язык - домашнее задание):

#!/opt/bin/perl

$|=1;
while(<>) {
chomp;
my(@A)=split;
if ($A[0]=='логин' && $A[1]=='пароль') { print "OK\n"; }
else { print "ERR\n"; }
}

Разумеется, имена/пароли можно хранить в файлике, его считывать и проверять по всему списку.

__KiM__
15-07-2009, 08:56
Из приведенных строк важны две:

acl MY proxy_auth REQUIRED
http_access allow MY

Но, для авторизации, надо еще несколько:

auth_param basic program /opt/squid/bin/checkauth
auth_param basic children 1
auth_param basic credentialsttl 2 hours
authenticate_ttl 5 minutes

Гдеcheckauth - программа-авторизатор, которая получает на стандартный вход 2 параметра (логин и пароль), проверяет их и в стандартный выход выдает "OK\n" или "ERR\n". Например что-то типа этого (на перле, переделка на другой язык - домашнее задание):

#!/opt/bin/perl

$|=1;
while(<>) {
chomp;
my(@A)=split;
if ($A[0]=='логин' && $A[1]=='пароль') { print "OK\n"; }
else { print "ERR\n"; }
}

Разумеется, имена/пароли можно хранить в файлике, его считывать и проверять по всему списку.


Сейчас у меня следующие настройки в конфиге.

# If you want to use the traditional proxy authentication, jump over to
# the helpers/basic_auth/NCSA directory and type:
# % make
# % make install
#
# Then, set this line to something like
#
auth_param basic program /opt/libexec/ncsa_auth /opt/share/passwords/users

Нужно ли менять программы авторизации?
И что это за дирректория и какой у нее абсолютный путь?
helpers/basic_auth/NCSA
в которой меня просят выполнить команды %make %make install

В cashe.log при старте вижу следующую запись
helperOpenServers: Starting 5 'ncsa_auth' processes
Т.е. процесс который отвечает за авторизацию запущен?

LOEDiver
15-07-2009, 13:50
Скажем так, стандартно со сквидом идет именно ncsa_auth, параметром задается файл, в котором хранятся логины и пароли в виде:
login:crypt_password
где crypt_password - шифрованный пароль по стандартному алгоритму crypt

Если в логе пишется о запуске ncsa_auth, то авторизатор работает и в указанный файлик надо поместить нужные логины-пароли.

Например, паролю 12345678 будет соответствовать строка uhlrca4vneO7E

Я же привел пример вообще произвольной программы проверки логина-пароля, без привязки к ncsa_auth, поскольку эту проверку можно выполнить многими разными способами. Вплоть до привязки к nvram.

__KiM__
16-07-2009, 13:54
Скажем так, стандартно со сквидом идет именно ncsa_auth, параметром задается файл, в котором хранятся логины и пароли в виде:
login:crypt_password
где crypt_password - шифрованный пароль по стандартному алгоритму crypt

Если в логе пишется о запуске ncsa_auth, то авторизатор работает и в указанный файлик надо поместить нужные логины-пароли.

Например, паролю 12345678 будет соответствовать строка uhlrca4vneO7E.

Каками утилитами я могу произвести генерацию пароля?
Утилиты htpasswd я найти не смог :(.
Может поможет генерация пароля утилитой passwd и копирование соответствующей строчки из /etc/passwd значений логина и пароля?

LOEDiver
16-07-2009, 14:35
Может поможет генерация пароля утилитой passwd и копирование соответствующей строчки из /etc/passwd значений логина и пароля?

passwd генерирует строку другим методом. Попробовать можно (взяв все, что между двоеточиями, второе поле), но гарантии нет.

Если стоит perl, можно так:

perl -e 'print crypt("12345678","az"),"\n";'
где 12345678 - сам пароль, az - два произвольных символа.

oleg71
02-08-2009, 17:31
banners и файл исключений
при использовании redirector.sh
Какой формат файлов и структура , что б свой сделать?

doff
09-08-2009, 23:25
Перевыложите плиз сборочку! На рапиде долго не отлежала.

Хочется delay_pools поюзать и без кеша тоже отлично.

Nebulosa
10-08-2009, 07:32
Скомпилил, выложил.

doff
10-08-2009, 11:31
спасибо.
настроил одно ведро первого класса, всё отлично работает.

shadow-2005
07-10-2009, 06:45
Привет Всем,

ничего не понимаю после установки пакета выложенного в данной теме delay_pools не появился:

Squid Cache: Version 2.7.STABLE6
configure options: '--build=i386-pc-linux-gnu' '--host=mipsel-linux' '--target=mipsel-linux' '--prefix=/opt' '--bindir=/opt/bin' '--sbindir=/opt/sbin' '--libexecdir=/opt/libexec' '--datadir=/opt/share/squid' '--sysconfdir=/opt/etc/squid' '--sharedstatedir=/opt/com/squid' '--localstatedir=/opt/var/squid' '--libdir=/opt/lib' '--includedir=/opt/include' '--oldincludedir=/opt/include' '--infodir=/opt/info' '--mandir=/opt/man' '--disable-epoll' '--enable-basic-auth-helpers=NCSA' '--disable-nls' 'build_alias=i386-pc-linux-gnu' 'host_alias=mipsel-linux' 'target_alias=mipsel-linux' 'CC=/home/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc' 'LDFLAGS= -L/home/optware/oleg/staging/opt/lib -Wl,-rpath,/opt/lib -Wl,-rpath-link,/home/optware/oleg/staging/opt/lib ' 'CPPFLAGS=-O2 -pipe -I/home/optware/oleg/staging/opt/include ' 'CPP=/home/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc -E'


PS: PLZ, поделитесь squid, собранным, с поддержкой delay_pools

--



спасибо.
настроил одно ведро первого класса, всё отлично работает.

shadow-2005
17-10-2009, 18:11
Всем привет,

Поделитесь субжем кому не жалко, очень надо.
PS: понимаю что можно перекомпилять, но нет времени на скачивание и настройку development kit'a ;-(.

--
Best regards

vectorm
17-10-2009, 19:56
Всем привет,

Поделитесь субжем кому не жалко, очень надо.
PS: понимаю что можно перекомпилять, но нет времени на скачивание и настройку development kit'a ;-(.

--
Best regards
А поискать тут? Уже выкладывали.

shadow-2005
18-10-2009, 04:59
Привет vectorm,

Если ты про это, то не работает:
http://wl500g.info/showthread.php?t=10828&highlight=delay_pools

Других версий увы не нашел :-(

--
Best regards


А поискать тут? Уже выкладывали.

SergKM
18-10-2009, 18:40
http://depositfiles.com/files/rytdwkveg
1 октября собирал... :rolleyes:

shadow-2005
19-10-2009, 04:11
Привет SergKM,

Спасибо! Сегодня попробую :).

--
Best regards


http://depositfiles.com/files/rytdwkveg
1 октября собирал... :rolleyes:

SergKM
19-10-2009, 15:24
Попробуй. ;) У меня на этой сборке delay_pools работает.

shadow-2005
20-10-2009, 14:06
Привет SergKM,

Ага, все заработало! Еще раз спасибо

--
Best regards


Попробуй. ;) У меня на этой сборке delay_pools
работает.

almobil
02-11-2009, 13:25
сделал всё как написанно в первим посте (с небольшой поправкой на кавычки). прокси работает, а статистику не собирает! что не так делаю?!

Less
02-11-2009, 15:24
сделал всё как написанно в первим посте (с небольшой поправкой на кавычки). прокси работает, а статистику не собирает! что не так делаю?!

А чем смотрите статистику?

oleg71
02-11-2009, 17:29
Привет всем!
Чувствуется, что юзеров squida - все-таки есть :)

предлагаю поделится - способами оптимизации squid
для достижения наибольшего:
1) быстродействия
2) экономии трафика

Если у кого есть возможность и желание - прошу посмотреть данный конфиг и внести в него - свои изменения, только конечно комментируя
- для чего они ;)

пытался максимально сэкономить трафик...:confused:
P/S/ не удаляйте комментарий, пожалуйста.

almobil
03-11-2009, 05:23
А чем смотрите статистику?

nano /opt/var/squid/logs/access.log а он пустой совсем. в инструкции написанно "access_log /opt/var/squid/logs/access.log squid - место, куда пишется лог-файл доступа к ресурсам. Собственно его можно анализировать - кто и куда лазил за пор... статьями. ВНИМАНИЕ! Не забывайте его ротировать, дабы размер его не принял катастрофические величины." Что я делаю не так?! может в конфиге чтото нужно было править? я его тупо скопировал из первого поста.

almobil
06-11-2009, 06:26
что то у меня так и не логируется ничего... только в /opt/var/squid/logs/cache.log записи есть вида:
2009/11/03 00:21:08| Starting Squid Cache version 2.6.STABLE21 for mipsel-unknown-linux-gnu...
2009/11/03 00:21:08| Process ID 524
2009/11/03 00:21:08| With 256 file descriptors available
2009/11/03 00:21:08| Using poll for the IO loop
2009/11/03 00:21:08| Performing DNS Tests...
2009/11/03 00:21:08| Successful DNS name lookup tests...
2009/11/03 00:21:08| DNS Socket created at 0.0.0.0, port 1026, FD 8
2009/11/03 00:21:08| Adding nameserver 217.70.106.5 from /etc/resolv.conf
2009/11/03 00:21:08| Adding nameserver 217.70.96.34 from /etc/resolv.conf
2009/11/03 00:21:08| helperOpenServers: Starting 1 'ncsa_auth' processes
cannot stat /opt/share/passwords/users
2009/11/03 00:21:08| Unlinkd pipe opened on FD 14
2009/11/03 00:21:08| Swap maxSize 20480 + 8192 KB, estimated 0 objects
2009/11/03 00:21:08| Target number of buckets: 110
2009/11/03 00:21:08| Using 8192 Store buckets
2009/11/03 00:21:08| Max Mem size: 8192 KB
2009/11/03 00:21:08| Max Swap size: 20480 KB
2009/11/03 00:21:08| Rebuilding storage in /opt/var/squid/cache (DIRTY)
2009/11/03 00:21:08| Using Least Load store dir selection
2009/11/03 00:21:08| Set Current Directory to /opt/var/squid/cache
2009/11/03 00:21:08| Loaded Icons.
2009/11/03 00:21:08| Accepting proxy HTTP connections at 0.0.0.0, port 3128, FD 15.
2009/11/03 00:21:08| Accepting ICP messages at 0.0.0.0, port 3130, FD 16.
2009/11/03 00:21:08| WCCP Disabled.
2009/11/03 00:21:08| Ready to serve requests.
2009/11/03 00:21:08| WARNING: basicauthenticator #1 (FD 9) exited
2009/11/03 00:21:08| Too few basicauthenticator processes are running
FATAL: The basicauthenticator helpers are crashing too rapidly, need help!

Squid Cache (Version 2.6.STABLE21): Terminated abnormally.

как нибудь можно это побороть?!

serji
09-11-2009, 09:29
Nov 9 04:01:01 admin: /opt/share/www/lightsquid/lightparser.pl crontab STARTED
Nov 9 05:51:23 kernel: scsi0: ERROR on channel 0, id 0, lun 0, CDB: 0x28 00 11 fb de a3 00 00 08 00
Nov 9 05:51:23 kernel: Current sd08:01: sns = 70 3
Nov 9 05:51:23 kernel: ASC=11 ASCQ= 0
Nov 9 05:51:23 kernel: Raw sense data:0x70 0x00 0x03 0x00 0x00 0x00 0x00 0x0a 0x00 0x00 0x00 0x00 0x11 0x00 0x00 0x00 0x00 0x00
Nov 9 05:51:23 kernel: I/O error: dev 08:01, sector 281236328
Nov 9 05:51:26 kernel: scsi0: ERROR on channel 0, id 0, lun 0, CDB: 0x28 00 11 fb de a3 00 00 08 00
Nov 9 05:51:26 kernel: Current sd08:01: sns = 70 3
Nov 9 05:51:26 kernel: ASC=11 ASCQ= 0
Nov 9 05:51:26 kernel: Raw sense data:0x70 0x00 0x03 0x00 0x00 0x00 0x00 0x0a 0x00 0x00 0x00 0x00 0x11 0x00 0x00 0x00 0x00 0x00
Nov 9 05:51:26 kernel: I/O error: dev 08:01, sector 281236328


работал, работал.... а теперь вот...
в кронтабе записан на старт в 4 утра ежедневно...
а к 5-ти какая то ошибка...
куда копать? как исправить??
ЗЫЖ и еще как привильно чистить логи, напр за тот ГОД!

OlegaVB
09-11-2009, 09:42
Это ошибки на подключенном диске ( флешке )

Nov 9 05:51:23 kernel: scsi0: ERROR on channel 0, id 0, lun 0, CDB: 0x28 00 11 fb de a3 00 00 08 00

serji
09-11-2009, 10:22
я понимаю, что это что то с диском....
проверка диска до конца не проходит.. тоже останавливается по ошибке..
пошел в другую ветку искать правды про диск 8(

almobil
12-11-2009, 06:32
а файл с паролями обязательно должен присутствовать? если да, то поделитесь примерным его содержанием?

almobil
13-11-2009, 09:00
Ну вроде бы разобрался, всё заработало, и проксует и статистику собирает. А вот можно ли сделать так чтобы компьютеры в локалке не прописывали у себя прокси в настройках, а всё шло сразу через прокси? Тоесть новый компьютер подключаю, ему черех DHCP выдаётся адрес и он в интернет ходит только через прокси?

Azur4
13-11-2009, 09:39
и он в интернет ходит только через прокси?
Это называется прозрачное проксирование.
Нужно убрать авторизацию у squid (либо оставить только по IP) и в iptables развернуть http трафик на порт squid приблизительно так:
-A PREROUTING -p tcp -d ! 192.168.0.0/24 --dport 80 -j REDIRECT --to-port 3128

almobil
13-11-2009, 09:51
Это называется прозрачное проксирование.
Нужно убрать авторизацию у squid (либо оставить только по IP) и в iptables развернуть http трафик на порт squid приблизительно так:
-A PREROUTING -p tcp -d ! 192.168.0.0/24 --dport 80 -j REDIRECT --to-port 3128

я добавил запись:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
тоже работает...

Less
13-11-2009, 10:50
я добавил запись:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3128
тоже работает...
При таком правиле все пакеты которые будут приходить на 80-й порт вашего роутера будут переброшены на порт 3128 (как из внутри сети так и снаружи), что само собой есть неверно.
А согласно правилу (которое вам дали постом выше) пакеты пришедшие только из вашей внутри-сети будут переброшены на порт 3128.

Тут ознакомится - http://www.sys-adm.org.ua/www/squid-transparent.php

almobil
14-11-2009, 04:35
да действительно, правило "-A PREROUTING -p tcp -d ! 192.168.0.0/24 --dport 80 -j REDIRECT --to-port 3128" больше подходит...

almobil
16-11-2009, 06:20
а подскажите каким должно быть правило чтобы перезватывать трафик не только с 80-ого порта, но и с остальных портов тоже?

gromaster
25-01-2010, 21:16
у меня WL-500G Premium V2
подключение к провайдеру через PPTP
в сетке провайдера есть несколько человек (около 10) которые получают от меня инет (на компе стоит прокси)
хочу поставить прокси на сам роутер, чтобы комп круглые сутки не гонять.
в связи с этим вопрос насколько быстро работает прокси на роутере? функции кэширования не нужны, интернет 3 мбита, будет ли заметна разница в скорости открывания страниц у юзеров если перейти на прокси в роутере? других прог на роутере не будет, только прокси.

vectorm
26-01-2010, 13:30
у меня WL-500G Premium V2
подключение к провайдеру через PPTP
в сетке провайдера есть несколько человек (около 10) которые получают от меня инет (на компе стоит прокси)
хочу поставить прокси на сам роутер, чтобы комп круглые сутки не гонять.
в связи с этим вопрос насколько быстро работает прокси на роутере? функции кэширования не нужны, интернет 3 мбита, будет ли заметна разница в скорости открывания страниц у юзеров если перейти на прокси в роутере? других прог на роутере не будет, только прокси.
Лучше использовать более мелкие прокси, 3Proxy например, или Polypo. Они менее прожорливы, и, соответственно, будут на роутере бустрее отдавать трафик. Разница в скорости заметна будет небольшая.

gromaster
26-01-2010, 14:20
а где найти мануал по установке и настройке этих проксей?

Less
08-03-2010, 16:08
Нужен совет кто собирал сабж, у меня собственно падает при таких симптомах:

gcc -DHAVE_CONFIG_H -DDEFAULT_CONFIG_FILE=\"/opt/etc/squid.conf\" -I. -I../include -I. -I. -I../include -I../include -Wall -g -O2 -MT store_swapmeta.o -MD -MP -MF .deps/store_swapmeta.Tpo -c -o store_swapmeta.o store_swapmeta.c
mv -f .deps/store_swapmeta.Tpo .deps/store_swapmeta.Po
gcc -DHAVE_CONFIG_H -DDEFAULT_CONFIG_FILE=\"/opt/etc/squid.conf\" -I. -I../include -I. -I. -I../include -I../include -Wall -g -O2 -MT store_swapout.o -MD -MP -MF .deps/store_swapout.Tpo -c -o store_swapout.o store_swapout.c
mv -f .deps/store_swapout.Tpo .deps/store_swapout.Po
gcc -DHAVE_CONFIG_H -DDEFAULT_CONFIG_FILE=\"/opt/etc/squid.conf\" -I. -I../include -I. -I. -I../include -I../include -Wall -g -O2 -MT tools.o -MD -MP -MF .deps/tools.Tpo -c -o tools.o tools.c
In file included from /usr/include/sys/capability.h:23,
from tools.c:50:
/usr/include/linux/capability.h:73: error: expected specifier-qualifier-list before ‘__le32’
tools.c: In function ‘mail_warranty’:
tools.c:138: warning: ignoring return value of ‘system’, declared with attribute warn_unused_result
make[4]: *** [tools.o] Error 1
make[4]: Leaving directory `/opt/slug/optware/host/builds/squid/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/opt/slug/optware/host/builds/squid/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/opt/slug/optware/host/builds/squid/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/opt/slug/optware/host/builds/squid'
make: *** [/opt/slug/optware/wl500g/host/builds/squid/.built] Error 2
но при этом hello-ipk, libgmp-ipk вполне нормально собрал без заиканий :confused:
Не совсем понятно почему он смотрит в /usr/include/linux/

Less
09-03-2010, 03:12
Собрал 2.7.STABLE7 с параметрами:
--enable-basic-auth-helpers="NCSA" \
--disable-nls \
--enable-storeio="ufs,null" \
--disable-carp \
--disable-wccp \
--disable-wccpv2 \
--enable-delay-pools \
--enable-kill-parent-hack \
--enable-err-language="Russian-1251" \
--enable-default-err-language="Russian-1251" \
--disable-ident-lookups \
--enable-arp-acl \
--enable-linux-netfilter

Earthwalker
27-04-2010, 13:40
В постах выше упоминается такая замечательная штука как SqStat. Подскажите пожалуйста ссылку на пакет для ipkg

Azur4
27-04-2010, 16:58
В постах выше упоминается такая замечательная штука как SqStat. Подскажите пожалуйста ссылку на пакет для ipkg
http://samm.kiev.ua/sqstat/
sqstat - это php скрипт и пакет ipkg для для него делать ИМХО никто не будет.

prince131
25-06-2010, 21:30
у меня роутер d-link dir-320 с прошивкой от олега и

у меня такая ситуация в моем офисе заблокирован внешний трафик и есть только локальный я хочу через прокси подключаться к своему роутеру и выходить во внешку на роутере стоит прошивка от олега все делал по вашей инструкции тока почему то результата нет .
1 ошибка когда проверяю прокси через IE 8 у меня выходит ошибка 400 "Не удается найти веб-страницу
HTTP 400
Возможные причины:
•Возможно, сделана опечатка в адресе.
•Если вы щелкнули ссылку, возможно, что она устарела. "
и вторая ошибка не совсем понял про список пользователей :
и к нему небольшие коментарии:

auth_param basic program /opt/libexec/ncsa_auth /opt/share/passwords/users - как Вы понимаете, второй путь может быть любым, но там должен лежать файлик (users) с паролями в формате htaccess. Права на него нужно ставить так, чтобы непревелигированный пользователь (nobody) смог его прочитать.

как его создать и в каком формате
и как выставит права мне нужен только один ползователь это agents с паролем agents.


Не могли бы вы мне или в асю или на почту или здесь написать конкретные действия что и как сделать чтобы поднять прокси...Очень надо заранее благодарен

KinoMan
26-06-2010, 05:51
как его создать и в каком формате
и как выставит права мне нужен только один ползователь это agents с паролем agents.


htpasswd -bc users agents agents

ваш файл users должен содержать следующее


agents:QDR8X5EwR4VXM

prince131
26-06-2010, 09:57
Народ я не силен в этом помогите мне пожалуйста скиньте нормальтную дословную инструкцию я начинающий пользователь и мне очень надо прокси поднять
Выложите пложалуста дословную инструкцию для поднятия прокси что куда нажимать какую команду вводить вообще дословно..Буду очень благодарен.!
у меня роутер dir-320
сеть 192,168,1,0
pptp соединение(WAN)
пароль для прокси agents
логин agents
ЗАРАНЕЕ спасибо

texnar6
10-08-2010, 21:24
Поставил сквид как в инструкции в первом посту, всё работает замечательно, но только внутри локальной сети, а мне нужно наоборот с внешней юзать сквид на роутере, iptables в post-firewall добавил, конфиг как в первом посту, повторяюсь запускается без ошибок, всё гуд из локалки авторизацию прохожу и всё работает, проверил nmap'ом с внешней сети, говорит, что порт 3128 закрыт. В iptables не селён, но скопипастил правильно и как только не мучал, пробовал создавать правила на роутере тоже не помогло, кроми сквида на роутере нечего нету, подскажите пожалуйста в каком направлении копать? нужно, что бы с любого айпишника из вне можно было зайти зная логин/пароль

Azur4
10-08-2010, 21:47
В iptables не селён, но скопипастил правильно и как только не мучал, пробовал создавать правила на роутере тоже не помогло, кроми сквида на роутере нечего нету
Покажи
iptables -vnL -t filter
iptables -vnL -t nat
ifconfig
route -n

texnar6
11-08-2010, 12:01
Покажи:
iptables -vnL -t filter
iptables -vnL -t nat
ifconfig
route -n

Приложено в attach

Azur4
12-08-2010, 17:46
Приложено в attach

Ок...
Зачем тебе правило из первого поста?

iptables -t nat -A PREROUTING -i vlan1 -p 'tcp' --dport 3128 -j DNAT --to-destination $4:3128
Оно вроде как для прозрачности... должно быть, только там ошибка есть (топикстартер поиздеваться решил)
Удали его и будет всё в порядке.
Если нужен прозрачный (типа что бы не писать проксик в браузере) то пиши я переделаю правило.

texnar6
13-08-2010, 19:21
Проблема решена, фаервол на роутере закрывает внешние порты, смотрел netstat -ntl вижу проксю 0.0.0.0:3128 что означает, что она работает на все интерфейсы, но с вне не коннектило, совсем отключать фаервол не хотелось, решилось правилом:

iptables -I INPUT -p tcp --dport 3128 -j ACCEPT

Что собственно говорит примерно следующее принимать все входящие подключения на порту 3128

oleg71
29-08-2010, 11:24
Подскажите настройку Lightsquid (на роутере)
скачал с оф сайта v.1.8 - не получается ...
требует perl 5.9, /usr/bin/perl и т.п., менял, перставлял - без толку :confused:
помню, давно где-то было, а сейчас вот ни гугл, ни мапс, ни джипиэс :)

DmitryOlenin
10-10-2010, 18:07
Спасибо за тему.
Настроил как в первом сообщении, всё работает.

Однако есть проблема.

Заключается она в том, что некоторые адреса через прокси не открываются совсем (например тут (http://www.kinopoisk.ru/level/4/people/26240/), хотя сам сайт (http://www.kinopoisk.ru) работает нормально),
на некоторых вообще не грузятся картинки (встретил на одном из сайтов uCoz-а).

В чём может быть затык?
Возможно стоит как-то совсем отключить кеширование?

P.S.
Если хочется все программы пустить через прокси: нужно организовывать тоннель, о чём в этой теме писали.
Или, например, воспользовавшись мануалом Установка openvpn в основную память для НОВИЧКОВ (http://wl500g.info/showthread.php?t=8880)
(в данном случае ставить не в основную память, конечно).
Верно?

ShreD
20-12-2010, 17:52
Доброго времени суток. Перечитал тему несколько раз в надежде собрать по частям интересующие меня моменты в настройке squid на роутере, но так и не нашел того что меня интересует. Если знающих людей не затруднит, не могли бы Вы помочь с созданием файла конфига под мои нужны?
Имеется: роутер WL-500gP со статическим внешним IP, имеется компьютер во вне, мой рабочий(IP статика).
Необходимо: Что бы я мог с работы использовать свой роутер как шлюз для получения дополнительного IP. Ни логирования, ни кэшированния не требуется. Надо что бы я без авторизации мог с работы пользоваться своим роутером как дополнительным шлюзем. Если Вас не затруднит и будет возможность помогите пожалуйста с составлением файла конфигурации.
Зарание спасибо.

Black_Sun
21-12-2010, 09:43
Хай всем, dir-320 прошивка от олега, установил, всё работает, но один вопрос, как добавлять пользователей в файл users? :)

p.s. htpasswd: not found

KinoMan
22-12-2010, 19:49
Хай всем, dir-320 прошивка от олега, установил, всё работает, но один вопрос, как добавлять пользователей в файл users? :)

p.s. htpasswd: not found

на компе генерируй файл и закидывай на роутер
если под виндой, то скачай http://masterhost.ru/support/files/htpasswd.exe

DNL
24-01-2011, 10:40
Имеется роутер dir-320 с прошивкой от олега. Стоит squid. Удается подключится к прокси со стороны LAN. Но со стороны WAN соединения нет. Как это исправить?
в post-firewall прописано:
iptables -A INPUT -p 'tcp' --dport 1000 -j ACCEPT

Порт в конфиге squid прописан 1000.

texnar6
26-01-2011, 08:33
Имеется роутер dir-320 с прошивкой от олега. Стоит squid. Удается подключится к прокси со стороны LAN. Но со стороны WAN соединения нет. Как это исправить?
в post-firewall прописано:
iptables -A INPUT -p 'tcp' --dport 1000 -j ACCEPT

Порт в конфиге squid прописан 1000.

А как насчёт на предведущей странице посмотреть?

iptables -I INPUT -p tcp --dport 1000 -j ACCEPT
если не поможет выключите на роутере фаервол будете приятно удивлены)

Господа сквитоводы подскажите пробовал кто прикрутить носки5?
Слышал, что даже код не нужно менять, только надо с сорсов собирать с какими-то параметрами... желательно более-мение подробный ман)

vietkong
28-01-2011, 12:15
Попробуй. ;) У меня на этой сборке delay_pools работает.

Перевыложи, плз, а то файл удалили с депозита.

nikAV
18-05-2012, 08:05
Оно вроде как для прозрачности... должно быть, только там ошибка есть (топикстартер поиздеваться решил)
....
Если нужен прозрачный (типа что бы не писать проксик в браузере) то пиши я переделаю правило.

Ок, Я напишу...Прошу помощи в настройке...имею: ASUS RT-N16 с прошивкой от энтузиастов, а нём установлен скрипт для чайников,transmission,twonky,nshaper, palantir, MPD(радио) есть также privoxy & polipo, НО настроить их для прозрачного проксирования не смог...Установил Squid, но при запуске ругается:
]$ squid
2012/05/18 10:10:16| WARNING cache_mem is larger than total disk cache space!

squid.conf :
#
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl localnet src 192.168.1.0/27 # RFC1918 possible internal network

acl SSL_ports port 443
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl CONNECT method CONNECT

http_access allow localhost
http_access deny manager

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

http_access allow localnet

# And finally deny all other access to this proxy
http_access deny all

http_port 192.168.1.1:3128 transparent

icon_directory /opt/share/squid/icons
error_directory /opt/share/squid/errors/ru-ru/

# We recommend you to use at least the following line.
hierarchy_stoplist cgi-bin ?

# Uncomment and adjust the following to add a disk cache directory.
cache_dir ufs /opt/var/squid/cache 5 16 256
cache_swap_low 95 # Заканчивает очистку лога
cache_swap_high 100 # Начинает очистку лога

#access_log /opt/var/squid/logs/access.log squid #место, куда пишется лог-файл доступа к ресурсам. Собственно его можно анализировать
pid_filename /opt/var/squid/logs/squid.pid

coredump_dir /opt/var/squid/cache

# Add any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320

url_rewrite_program /opt/bannerfilter/redirector.sh #направляем на редиректор
url_rewrite_children 30 #количество процессов

iptables >

# Generated by iptables-save v1.4.3.2 on Fri May 18 10:28:36 2012
*nat
:PREROUTING ACCEPT [2850492:171563247]
:POSTROUTING ACCEPT [488984:36233969]
:OUTPUT ACCEPT [492880:37581291]
:UPNP - [0:0]
:VSERVER - [0:0]
-A PREROUTING -d 77.66.146.194/32 -j VSERVER
-A PREROUTING -d 192.168.0.2/32 -j VSERVER
-A POSTROUTING ! -s 77.66.146.194/32 -o ppp0 -j MASQUERADE
-A POSTROUTING ! -s 192.168.0.2/32 -o vlan2 -j MASQUERADE
-A POSTROUTING -s 192.168.1.0/24 -d 192.168.1.0/24 -o br0 -j MASQUERADE
-A VSERVER -j UPNP
COMMIT
# Completed on Fri May 18 10:28:37 2012
# Generated by iptables-save v1.4.3.2 on Fri May 18 10:28:37 2012
*mangle
:PREROUTING ACCEPT [10135784:2379822366]
:INPUT ACCEPT [10085380:2374753886]
:FORWARD ACCEPT [31085:2729418]
:OUTPUT ACCEPT [9559546:7448937593]
:POSTROUTING ACCEPT [9659366:7478586753]
-A PREROUTING -i ppp0 -j IMQ --todev 0
-A POSTROUTING -o ppp0 -j IMQ --todev 1
COMMIT
# Completed on Fri May 18 10:28:37 2012
# Generated by iptables-save v1.4.3.2 on Fri May 18 10:28:37 2012
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [16851:1543868]
:OUTPUT ACCEPT [9559424:7448925849]
:BRUTE - [0:0]
:MACS - [0:0]
:SECURITY - [0:0]
:UPNP - [0:0]
:logaccept - [0:0]
:logdrop - [0:0]
-A INPUT -p udp -m udp --dport 123 -j ACCEPT
-A INPUT -i tun0 -p tcp -m tcp --dport 901 -j ACCEPT
-A INPUT -i tun0 -p udp -m udp --dport 138 -j ACCEPT
-A INPUT -i tun0 -p udp -m udp --dport 137 -j ACCEPT
-A INPUT -i tun0 -p tcp -m tcp --dport 445 -j ACCEPT
-A INPUT -i tun0 -p tcp -m tcp --dport 139 -j ACCEPT
-A INPUT -i tun0 -p tcp -m tcp --dport 8080 -j ACCEPT
-A INPUT -i tun0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -p udp -m udp --dport 1194 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 411 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 9000 -j ACCEPT
-A INPUT -s 63.241.31.144/32 -d 77.66.146.194/32 -j DROP
-A INPUT -p tcp -m tcp --dport 9091 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 51413 -j ACCEPT
-A INPUT -p udp -m udp --dport 65534 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 65534 -j ACCEPT
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -i br0 -m conntrack --ctstate NEW -j ACCEPT
-A INPUT -i ppp0 -m conntrack --ctstate NEW -j SECURITY
-A INPUT -i vlan2 -m conntrack --ctstate NEW -j SECURITY
-A INPUT -p tcp -m tcp --dport 20022 --tcp-flags FIN,SYN,RST,ACK SYN -j BRUTE
-A INPUT -d 192.168.1.1/32 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -j DROP
-A FORWARD -i tun0 -o br0 -j ACCEPT
-A FORWARD -i br0 -o tun0 -j ACCEPT
-A FORWARD -i br0 -o br0 -j ACCEPT
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD ! -i br0 -o ppp0 -j DROP
-A FORWARD ! -i br0 -o vlan2 -j DROP
-A FORWARD ! -i br0 -m conntrack --ctstate NEW -j SECURITY
-A FORWARD -m conntrack --ctstate DNAT -j ACCEPT
-A FORWARD -o br0 -j DROP
-A OUTPUT -s 77.66.146.194/32 -d 63.241.31.144/32 -j DROP
-A BRUTE -m recent --update --seconds 600 --hitcount 3 --name BRUTE --rsource -j DROP
-A BRUTE -m recent --set --name BRUTE --rsource -j ACCEPT
-A SECURITY -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -m limit --limit 1/sec -j RETURN
-A SECURITY -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit --limit 1/sec -j RETURN
-A SECURITY -p udp -m limit --limit 5/sec -j RETURN
-A SECURITY -p icmp -m limit --limit 5/sec -j RETURN
-A SECURITY -j DROP
-A logaccept -m conntrack --ctstate NEW -j LOG --log-prefix "ACCEPT " --log-tcp-sequence --log-tcp-options --log-ip-options --log-macdecode
-A logaccept -j ACCEPT
-A logdrop -m conntrack --ctstate NEW -j LOG --log-prefix "DROP " --log-tcp-sequence --log-tcp-options --log-ip-options --log-macdecode
-A logdrop -j DROP
COMMIT

интерфейсы:

$ ifconfig
br0 Link encap:Ethernet HWaddr EE:CC:44:BB:FF:DD
inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
RX bytes:43909685 (41.8 Mb) TX bytes:1761332162 (1679.7 Mb)

eth0 Link encap:Ethernet HWaddr EE:CC:44:BB:FF:DD
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX bytes:2840515699 (2708.9 Mb) TX bytes:2099796255 (2002.5 Mb)
Interrupt:4 Base address:0x2000

eth1 Link encap:Ethernet HWaddr EE:CC:44:BB:FF:DD
RX bytes:45886385 (43.7 Mb) TX bytes:1250426245 (1192.4 Mb)
Interrupt:3 Base address:0x1000

imq0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
UP RUNNING NOARP MTU:1492 Metric:1
RX bytes:2168992522 (2068.5 Mb) TX bytes:2168448539 (2067.9 Mb)

imq1 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
UP RUNNING NOARP MTU:1492 Metric:1
RX bytes:1610030837 (1535.4 Mb) TX bytes:1321123528 (1259.9 Mb)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MULTICAST MTU:16436 Metric:1
RX bytes:165495015 (157.8 Mb) TX bytes:165495015 (157.8 Mb)

ppp0 Link encap:Point-to-Point Protocol
inet addr:78.86.164.149 P-t-P:80.80.111.97 Mask:255.255.255.255
UP POINTOPOINT RUNNING MULTICAST MTU:1492 Metric:1
RX bytes:2524736527 (2407.7 Mb) TX bytes:1324546002 (1263.1 Mb)

vlan1 Link encap:Ethernet HWaddr EE:CC:44:BB:FF:DD
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX bytes:6184588 (5.8 Mb) TX bytes:550656831 (525.1 Mb)

vlan2 Link encap:Ethernet HWaddr EE:CC:44:BB:FF:DD
inet addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX bytes:2653949439 (2531.0 Mb) TX bytes:1549139424 (1477.3 Mb)

Собственно, мне Squid нужен лишь для того, чтоб фильтровать порнуху и банеры из домашней сети, и чтоб домашние об этом не подозревали...моя сеть 192.168.1.0/27 (т.е только 16 аппаратов м.б. в сети - DHCP)
Помогите разобраться КАК НАПИСАТЬ ПРАВИЛО IPTABLES ДЛЯ ПРОЗРАЧНОГО ПРОКСИРОВАНИЯ, не затронув при этом других правил? Спасибо!

don-pedro
18-05-2012, 08:25
privoxy & polipo
...
лишь для того, чтоб фильтровать порнуху и банеры из домашней сети, и чтоб домашние об этом не подозревали

По-моему, polipo тут не нужно. Достаточно privoxy.



Помогите разобраться КАК НАПИСАТЬ ПРАВИЛО IPTABLES ДЛЯ ПРОЗРАЧНОГО ПРОКСИРОВАНИЯ, не затронув при этом других правил? Спасибо!

-A PREROUTING -i br0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128

nikAV
20-05-2012, 05:30
-A PREROUTING -i br0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
Спасибо, заработало! Только полная строка будет так:


iptables -t nat -A PREROUTING -i br0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
А теперь бы заставить iptables не перенаправлять на прокси пакеты внутри сети. :192.168.1.1/26
Подозреваю что надо вставить -s ! 192.168.1.1/26 ... а может -d ...не могу в
воткнуться: какие пакеты надо перенаправлять?Которые идут ОТ клиента в интернет или наоборот???

Privoxy я не смог заставить работать в прозрачном режиме...у меня в сети и телефон,и огрызок,и ноут...на всех не настроишь работу через прокси...

don-pedro
21-05-2012, 08:06
А теперь бы заставить iptables не перенаправлять на прокси пакеты внутри сети. :192.168.1.1/26

Может быть, /24 ?



Подозреваю что надо вставить -s ! 192.168.1.1/26 ... а может -d ...не могу в
воткнуться: какие пакеты надо перенаправлять?Которые идут ОТ клиента в интернет или наоборот???

Цель-то всего этого дела какая?



Privoxy я не смог заставить работать в прозрачном режиме...у меня в сети и телефон,и огрызок,и ноут...на всех не настроишь работу через прокси...
На сайте privoxy написано, что оно умеет прозрачный режим. Так что надо читать доки.
Использование сквида на роутере в данной ситуации явно излишне.

vbvbvb
27-02-2013, 07:47
Имею Asus Wl500gp, WL520gu.
Установлена прошивка Олега (энтузиастов 1.9.2.7-d).
Хочу скомпилировать Squid 3.2 с --enable-pf-transparent, так как в репе лежит кальмар без этой опции.
Установил VMware и Debian 6.
Скачал тулчен с http://www.nslu2-linux.org.
Указал Target - oleg.
Что не качалось нашел на других ресурсах.
Попытался скомпилировать mc.
Вот что получил:



DESTDIR= \
prefix=/opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28 \
exec_prefix=/opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28 \
bindir=/opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin \
top_srcdir=.. \
srcdir=. \
datadir=/opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/usr/share \
ticdir=/opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/usr/share/terminfo \
source=terminfo.tmp \
THIS_CC="/opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc" \
THAT_CC="gcc" \
sh ./run_tic.sh
** Building terminfo database, please wait...
Running tic to install /opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/usr/share/terminfo ...

You may see messages regarding extended capabilities, e.g., AX.
These are extended terminal capabilities which are compiled
using
tic -x
If you have ncurses 4.2 applications, you should read the INSTALL
document, and install the terminfo without the -x option.

"terminfo.tmp", line 9118, terminal 'MtxOrb': /opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/usr/share/terminfo/M: permission denied
? tic could not build /opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/usr/share/terminfo
make[3]: *** [install.data] Ошибка 1
make[3]: Leaving directory `/opt/slug/optware/oleg/toolchain/buildroot/build_mipsel/ncurses-5.5/misc'
make[2]: *** [install] Ошибка 2
make[2]: Leaving directory `/opt/slug/optware/oleg/toolchain/buildroot/build_mipsel/ncurses-5.5'
make[1]: *** [/opt/slug/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/lib/libncurses.a] Ошибка 2
make[1]: Leaving directory `/opt/slug/optware/oleg/toolchain/buildroot'
make: *** [/opt/slug/optware/oleg/toolchain/buildroot/.built] Ошибка 2


В общем, что можете посоветовать. Какой актуальный инструментарий поставить чтобы собирать нужные пакеты самому?

ryzhov_al
27-02-2013, 08:09
В общем, что можете посоветовать. Какой актуальный инструментарий поставить чтобы собирать нужные пакеты самому?Слова «актуальный» и «Optware» лучше рядом не ставить:)

vbvbvb
27-02-2013, 09:35
Слова «актуальный» и «Optware» лучше рядом не ставить:)

А как собирать бинарники вот этим тулчейном - hndtools-mipsel-uclibc-4.6.3
http://code.google.com/p/wl500g/wiki/CompilingCustomFirmware - тут описано как прошивку собрать, где остановиться и запустить ./configure для squid

lly
27-02-2013, 09:53
vbvbvb
Советую сначала почитать этот форум, многое проясниться.

А с hndtools-mipsel-uclibc-4.6.3 придётся забыть об ядрах 2.4 (-d линейка прошивок).

ryzhov_al
27-02-2013, 09:56
А как собирать бинарники вот этим тулчейном - hndtools-mipsel-uclibc-4.6.3
http://code.google.com/p/wl500g/wiki/CompilingCustomFirmware - тут описано как прошивку собрать, где остановиться и запустить ./configure для squidНигде, тулчейн можно использовать для своих нужд безо всякой прошивки.

Давайте определимся с тулчейнами:
используйте hndtools-mipsel-uclibc-4.6.3 для того, чтобы использовать получившийся софт исключительно на энтузиасткой прошивке, без установки каких-либо репозиториев,
используйте тулчейн Optware, а лучше среду сборки optware для того, чтобы сформировать готовый пакет для репозитория Optware,
используйте тулчейн Entware, а лучше среду сборки Entware (aka OpenWRT Buildroot) для того, чтобы сформировать готовый пакет для репозитория Entware.

Но первым делом, вы, конечно же, вы уже посмотрели от каких других библиотек/пакетов squid зависит и уже знаете как их собрать.

И нулевым делом, конечно же, вы уже оценили производительность имеющего в репозитории варианта и она вас полностью устроила.

vbvbvb
27-02-2013, 10:22
vbvbvb
Советую сначала почитать этот форум, многое проясниться.
А с hndtools-mipsel-uclibc-4.6.3 придётся забыть об ядрах 2.4 (-d линейка прошивок).
Не могли бы поделиться читал но все очень не однозначно.
Так как я начинающий и в линуксе и тем более кросс компиляции очень много подводных камней.
Да, забыть придется. Благо 1.9.2.7-rtn совместима с моими роутерами. Это не беда.


используйте тулчейн Optware, а лучше среду сборки optware для того, чтобы сформировать готовый пакет для репозитория Optware
Я хотел остановиться на этом варианте. Производительность готового squid в optware меня устраивает.
Не очень понятно зачем пересобирать зависимости?

ryzhov_al
27-02-2013, 10:38
Я хотел остановиться на этом варианте. Производительность готового squid в optware меня устраивает.
Не очень понятно зачем пересобирать зависимости?Ок. Если вы остановились на optware, то среда сборки optware сама пересоберёт зависимости за вас. Вам достаточно найти (https://www.google.ru/search?q=target+oleg+optware+site%3Ahttp%3A%2F%2Fw l500g.info) здесь тему по использованию этого инструментария и внести необходимые правки в имеющийся squid.mk (http://svn.nslu2-linux.org/svnroot/optware/trunk/make/squid.mk).

vbvbvb
05-03-2013, 13:24
Ок. Если вы остановились на optware, то среда сборки optware сама пересоберёт зависимости за вас.
Вам достаточно найти (https://www.google.ru/search?q=target+oleg+optware+site%3Ahttp%3A%2F%2Fw l500g.info) здесь тему по использованию этого инструментария и внести необходимые правки в имеющийся squid.mk (http://svn.nslu2-linux.org/svnroot/optware/trunk/make/squid.mk).
Огромное вам спасибо! Как добьюсь успеха отпишусь может кому будет интересно.

С горем пополам собрал тулчейн. Делал по этой (http://www.nslu2-linux.org/wiki/Optware/AddAPackageToOptware) инструкции.
Пришлось в папку .../oleg/downloads докачать то, что не скачивается при make toolchain
вот отсюда http://ftp.osuosl.org/pub/nslu2/sources/.
Ссылки на нужные пакеты уже мертвы. Сегодня буду собирать squid, как дома окажусь.

В optware есть скомпелированный squid. Ответ команды squid -v содержит значение
- "build_alias=i386-pc-linux-gnu host_alias=mipsel-linux target_alias=mipsel-linux"
как правильно задать такие параметры в squid3.mk ? На данный момент вот так


<------>(cd $(@D); \
<------><------>$(TARGET_CONFIGURE_OPTS) \
<------><------>CC="/mnt/src/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc" \
<------><------>CPPFLAGS="-O2 -pipe -I/mnt/src/optware/oleg/staging/opt/include" \
<------><------>LDFLAGS="-L/mnt/src/optware/oleg/staging/opt/lib -Wl,-rpath,/opt/lib -Wl,-rpath-link,/mnt/src/optware/oleg/staging/opt/lib" \
<------><------>CXX="/mnt/src/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-g++" \
<------><------>CPP="/mnt/src/optware/oleg/toolchain/mipsel-linux-uclibc/gcc-4.1.1-uclibc-0.9.28/bin/mipsel-linux-uclibc-gcc -E" \
<------><------>$(SQUID3_CROSS_CONFIG_ENVS) \
<------><------>./configure \
<------><------>--build=$(GNU_HOST_NAME) \
<------><------>--host=$(GNU_TARGET_NAME) \
<------><------>--target=$(GNU_TARGET_NAME) \
<------><------>--prefix=$(SQUID3_INST_DIR) \
<------><------>--bindir=$(SQUID3_BIN_DIR) \
<------><------>--sbindir=$(SQUID3_SBIN_DIR) \
<------><------>--libexecdir=$(SQUID3_LIBEXEC_DIR) \
<------><------>--datadir=$(SQUID3_DATA_DIR) \
<------><------>--sysconfdir=$(SQUID3_SYSCONF_DIR) \
<------><------>--sharedstatedir=$(SQUID3_SHAREDSTATE_DIR) \
<------><------>--localstatedir=$(SQUID3_LOCALSTATE_DIR) \
<------><------>--libdir=$(SQUID3_LIB_DIR) \
<------><------>--includedir=$(SQUID3_INCLUDE_DIR) \
<------><------>--oldincludedir=$(SQUID3_INCLUDE_DIR) \
<------><------>--infodir=$(SQUID3_INFO_DIR) \
<------><------>--mandir=$(SQUID3_MAN_DIR) \
<------><------>$(SQUID3_CROSS_CONFIG_OPTIONS) \
<------><------>--enable-basic-auth-helpers=NCSA \
<------><------>--disable-nls \
<------><------>--enable-ipfw-transparent \
<------><------>--enable-ssl \
<------><------>--with-squid=/mnt/src/optware/oleg/builds/squid3 \
<------><------>--enable-ltdl-convenience \
<------>)
Выдает ошибку


cannot find -lssl
collect2: ld returned 1 exit status
make[4]: *** [basic_ncsa_auth] Error 1
make[4]: Leaving directory `/mnt/src/optware/oleg/builds/squid3/helpers/basic_auth/NCSA'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/mnt/src/optware/oleg/builds/squid3/helpers/basic_auth'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/mnt/src/optware/oleg/builds/squid3/helpers'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/src/optware/oleg/builds/squid3'
make: *** [/mnt/src/optware/oleg/builds/squid3/.built] Error 2
Что доставить как исправить?

P.S. Закоментил --enable-ssl Вылез новый фарш


nis_support.cc:17:27: error: rpcsvc/ypclnt.h: No such file or directory
nis_support.cc:18:28: error: rpcsvc/yp_prot.h: No such file or directory
nis_support.cc: In function 'char* get_nis_password(char*, char*, char*)':
nis_support.cc:43: error: 'yp_match' was not declared in this scope
nis_support.cc:51: error: 'YPERR_YPBIND' was not declared in this scope
nis_support.cc:54: error: 'YPERR_KEY' was not declared in this scope
make[4]: *** [nis_support.o] Error 1
make[4]: Leaving directory `/mnt/src/optware/oleg/builds/squid3/helpers/basic_auth/NIS'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/mnt/src/optware/oleg/builds/squid3/helpers/basic_auth'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/mnt/src/optware/oleg/builds/squid3/helpers'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/src/optware/oleg/builds/squid3'
make: *** [/mnt/src/optware/oleg/builds/squid3/.built] Error 2
И еще один вопрос как удалить то что осталось после того как не скомпилился пакет?
Опасаюсь что make clean удалит мой toolchain, так как для его создания тоже использовалась команда make.

vbvbvb
23-03-2013, 08:30
Теперь при компиляции инструментарием optware вылезает такая ошибка:


ldap_backend.c:42:18: error: lber.h: No such file or directory
ldap_backend.c:43:18: error: ldap.h: No such file or directory
In file included from ldap_backend.c:46:
edir_ldapext.h:1: error: expected ')' before '*' token
ldap_backend.c:51: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
ldap_backend.c:61: error: 'LDAP_SCOPE_SUBTREE' undeclared here (not in a function)
ldap_backend.c:65: error: 'LDAP_PORT' undeclared here (not in a function)
...

В ~optware/oleg/staging/opt/include скопировал эти хидеры из /usr/local/include , но стало еще хуже. Подскажите, где взять нужные хидеры и где они должны лежать.
P.S. пакет libldap2-dev установлен, не помогло. Openldap собрал установил - не помогло.
Собираю на Debian 6 squeeze

vbvbvb
02-04-2013, 10:38
Удалил тутлчеин. Сделал для удобства зеркало http://svn.nslu2-linux.org/svnroot/optware/trunk. Теперь переодически докачиваю обновления.
Правда пришлось ждать 4 суток пока закачалось. :D
Собрал gcc 4.1.1 на Debian6. Установил в /opt/usr/local/
Сделал симлинки:


rm /usr/bin/gcc
ln -s /opt/usr/local/bin/gcc /usr/bin/gcc
rm /usr/bin/g++
ln -s /opt/usr/local/bin/gcc /usr/bin/g++
rm /usr/bin/cpp
ln -s /opt/usr/local/bin/gcc /usr/bin/cpp
rm /usr/bin/c++
ln -s /opt/usr/local/bin/gcc /usr/bin/c++

Собрал toolchain как описано тут :
http://www.nslu2-linux.org/wiki/Optware/AddAPackageToOptware
При сборке squid3.1.8 появилась трабла такого рода:


squid_session.c:44:20: error: db_185.h: No such file or directory
squid_session.c:51: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
squid_session.c: In function 'init_db':

Решил ее, собрав libdb с опцией --enable-compat185
Скопировал собранные хидеры и библиотеки в ~optware/oleg/staging/opt/ в include и lib соответственно.
При сборке squid2.7.9 хидеров и либ вообще не было в ~optware/oleg/staging/opt/ и все собралось прекрасно.
Собственно первый вопрос. Почему так?

Так же собрал openssl. Либы и хидеры сами скопировались в ~optware/oleg/staging/opt/
Далее добавил опции в squid3.mk --enable-ssl и --enable-ipfw-transparent в двух местах после ./configure \
Одно из них отвечает за сборку в папке host, которая создается, когда запускаешь make squid3.
Второй вопрос: а зачем предварительная компиляция в host?

До этого, возможно, моей ошибкой было то, что я использовал команду make clean, чтобы почистить то, что осталось после не удачной сборки.
Выяснилось, что надо использовать make squid3-clean и make squid3-dirclean это очистит только то, что было создано при компиляции squid3. (При этом папка host не удаляется.) Я удалял ее в ручную.
В итоге squid3 собрался без проблем. Предыдущие ошибки больше не возникали. Только ipk пакет не ставится. Пишет:

*Package md5sum mismatch. Either the ipkg or package index are corrupt. Try 'ipkg update'
Что делать? В ручную распаковывать и ставить не хочется. Потом забуду, что где лежит и начнется.....Это третий вопрос к уважаемым форумчанам.

Список установленных и удаленных программ.


adduser install
aolserver4-daemon deinstall
apache2 install
apache2-mpm-prefork install
apache2-utils install
apache2.2-bin install
apache2.2-common install
apt install
apt-listchanges deinstall
apt-utils deinstall
aptitude install
at deinstall
augeas-lenses install
autoconf install
autoconf2.13 install
automake install
automake1.4 install
automake1.9 install
autotools-dev install
base-files install
base-passwd install
bash install
bash-completion install
bc install
bind9-host install
binutils install
binutils-mips-linux-gnu install
binutils-multiarch install
bison install
bsd-mailx deinstall
bsdmainutils install
bsdutils install
build-essential install
busybox install
bzip2 install
ca-certificates install
cifs-utils install
console-common install
console-data install
console-setup install
console-terminus install
coreutils install
cpio install
cpp install
cpp-4.1 install
cpp-4.3 install
cpp-4.4 install
cpp-4.4-mips-linux-gnu install
cron install
cvs deinstall
dash install
db4.8-util install
dbus deinstall
dc install
dctrl-tools install
debconf install
debconf-i18n install
debhelper install
debian-archive-keyring install
debian-faq install
debian-keyring install
debianutils install
defoma install
devscripts install
dhcp3-client deinstall
dhcp3-common install
dhcpcd install
diffstat install
diffutils install
dmidecode install
dmsetup install
dnsutils install
doc-debian install
doc-linux-text install
dpatch install
dpkg install
dpkg-cross install
dpkg-dev install
dput install
dropbear install
e2fslibs install
e2fsprogs install
eject install
emdebian-archive-keyring install
enscript install
equivs install
exim4 install
exim4-base install
exim4-config install
exim4-daemon-light install
fakeroot install
fcron deinstall
file install
findutils install
firmware-linux-free install
flex install
fontconfig install
fontconfig-config install
ftp install
fuse-utils deinstall
g++ install
g++-4.4 install
g++-4.4-mips-linux-gnu install
gawk install
gcc install
gcc-4.1 install
gcc-4.1-base install
gcc-4.3 install
gcc-4.3-base install
gcc-4.4 install
gcc-4.4-base install
gcc-4.4-mips-linux-gnu install
gcc-4.4-mips-linux-gnu-base install
geoip-database install
gettext install
gettext-base install
git deinstall
globus-common-progs deinstall
globus-gsi-openssl-error-dbg install
globus-openssl-module-dbg install
globus-openssl-progs install
gnupg install
gpgv install
grep install
groff-base install
grub-common install
grub-pc install
gzip install
hardening-includes install
hardening-wrapper deinstall
heirloom-mailx install
hicolor-icon-theme install
host install
hostname install
html2text install
ifupdown install
info install
initramfs-tools install
initscripts install
insserv install
install-info install
intltool install
intltool-debian install
iproute deinstall
iptables install
iputils-ping install
isc-dhcp-client deinstall
isc-dhcp-common install
kbd install
keyboard-configuration install
klibc-utils install
less install

vbvbvb
02-04-2013, 10:39
libacl1 install
libalgorithm-c3-perl install
libalgorithm-diff-perl install
libalgorithm-diff-xs-perl install
libalgorithm-merge-perl install
libapache2-mod-php5 install
libapache2-svn install
libapr1 install
libaprutil1 install
libaprutil1-dbd-sqlite3 install
libaprutil1-ldap install
libapt-pkg-perl install
libatk1.0-0 install
libatk1.0-data install
libatk1.0-dev install
libattr1 install
libaugeas0 install
libauthen-sasl-perl install
libavahi-client3 install
libavahi-common-data install
libavahi-common3 install
libbind9-60 install
libblkid1 install
libboost-iostreams1.42.0 install
libbsd-dev install
libbsd0 install
libbz2-1.0 install
libc-bin install
libc-bin-mips-cross install
libc-dev-bin install
libc-dev-bin-mips-cross install
libc6 install
libc6-dev install
libc6-dev-mips-cross install
libc6-i686 install
libc6-mips-cross install
libcairo2 install
libcairo2-dev install
libcap2 install
libcarp-assert-more-perl install
libcarp-assert-perl install
libclass-accessor-perl install
libclass-c3-perl install
libclass-c3-xs-perl install
libclass-data-inheritable-perl install
libclass-inspector-perl install
libclass-mop-perl install
libcomerr2 install
libcommon-sense-perl install
libconfig-augeas-perl install
libconfig-auto-perl install
libconfig-inifiles-perl install
libconfig-model-backend-augeas-perl install
libconfig-model-openssh-perl install
libconfig-model-perl install
libconfig-model-tkui-perl install
libconvert-binhex-perl install
libcroco3 install
libcrypt-openssl-bignum-perl install
libcrypt-openssl-dsa-perl install
libcrypt-openssl-random-perl install
libcrypt-openssl-rsa-perl install
libcrypt-openssl-x509-perl install
libcrypt-ssleay-perl install
libcups2 install
libcurl3 deinstall
libcurl3-gnutls deinstall
libcwidget3 install
libdata-optlist-perl install
libdatrie1 install
libdb4.6 install
libdb4.7 install
libdb4.8 install
libdb4.8-dev install
libdbd-mysql-perl install
libdbi-perl install
libdbus-1-3 install
libdebian-dpkgcross-perl install
libdevel-globaldestruction-perl install
libdevel-stacktrace-perl install
libdevel-symdump-perl install
libdevmapper1.02.1 install
libdns69 install
libdpkg-perl install
libedit-dev install
libedit2 install
libelf1 deinstall
libengine-pkcs11-openssl install
libengine-tpm-openssl deinstall
libept1 install
libevent-1.4-2 install
libexception-class-perl install
libexpat1 install
libexpat1-dev install
libfcgi-perl install
libffi5 install
libfile-copy-recursive-perl install
libfile-homedir-perl install
libfont-afm-perl install
libfont-freetype-perl install
libfontconfig1 install
libfontconfig1-dev install
libfontenc1 install
libfreetype6 install
libfreetype6-dev install
libfuse2 deinstall
libgc1c2 install
libgcc1 install
libgcc1-mips-cross install
libgcgi-dev install
libgcgi0 install
libgcrypt11 install
libgdbm3 install
libgeoip1 install
libglib2.0-0 install
libglib2.0-data install
libglib2.0-dev install
libglobus-common0 install
libglobus-gsi-openssl-error0 install
libglobus-gsi-proxy-ssl1 install
libglobus-libtool install
libglobus-openssl install
libglobus-openssl-module0 install
libgmp3c2 install
libgnutls26 install
libgomp1 install
libgomp1-mips-cross install
libgpg-error0 install
libgpgme11 deinstall
libgpm2 install
libgssapi-krb5-2 install
libgssglue-dev install
libgssglue1 install
libgssrpc4 install
libgtk2.0-0 install
libgtk2.0-bin install
libgtk2.0-common install
libgtk2.0-dev install
libhtml-format-perl install
libhtml-parser-perl install
libhtml-tagset-perl install
libhtml-template-perl install
libhtml-tree-perl install
libice-dev install
libice6 install
libidn11 install
libio-pty-perl install
libio-socket-ssl-perl install
libio-string-perl install
libio-stringy-perl install
libipc-run-perl install
libipc-shareable-perl install
libisc62 install
libisccc60 install
libisccfg62 install
libjasper1 install
libjpeg62 install
libjson-perl install
libjson-xs-perl install
libk5crypto3 install
libkadm5clnt-mit7 install
libkadm5srv-mit7 install
libkdb5-4 install
libkeyutils1 install
libklibc install
libkrb5-3 install
libkrb5support0 install
libldap-2.4-2 install
liblist-moreutils-perl install
liblocale-gettext-perl install
liblockfile1 install
liblog-dispatch-perl install
liblog-log4perl-perl install
libltdl-dev install
libltdl7 install
liblua5.1-0 deinstall
liblwres60 install
liblzma2 install
libmagic1 install
libmail-sendmail-perl install
libmailtools-perl install
libmime-tools-perl install
libmoose-perl install
libmpfr4 install
libmro-compat-perl install
libmysqlclient16 install
libncurses5 install
libncurses5-dev install
libncursesw5 install
libneon27-gnutls install
libnet-daemon-perl install
libnet-libidn-perl install
libnet-ssleay-perl install
libnewt0.52 install
libnfnetlink0 install
libnfsidmap2 deinstall
libnspr4-0d deinstall
libnss3-1d deinstall
libonig2 install
libossp-uuid-perl install
libossp-uuid16 install
libp11-1 install
libpackage-deprecationmanager-perl install
libpackage-stash-perl install
libpam-modules install
libpam-runtime install
libpam0g install
libpam0g-dev install
libpango1.0-0 install
libpango1.0-common install
libpango1.0-dev install
libpaper-utils install
libpaper1 install
libparams-util-perl install
libparams-validate-perl install
libparse-debcontrol-perl install
libparse-debianchangelog-perl install
libparse-recdescent-perl install
libpathfinder-openssl-1 install
libpci3 install
libpcre3 install
libpixman-1-0 install
libpixman-1-dev install
libplrpc-perl install
libpng12-0 install
libpng12-dev install
libpod-coverage-perl install
libpod-pom-perl install
libpopt0 install
libpth20 deinstall
libpthread-stubs0 install
libpthread-stubs0-dev install
libpython2.6 deinstall
libqdbm14 install
libreadline5 install
libreadline6 install
librpcsecgss3 install
librpm1 deinstall
librpmbuild1 deinstall
librpmio1 deinstall
libruby install
libruby1.8 install
libruby1.9.1 install
libsasl2-2 install
libscope-guard-perl install
libselinux1 install
libselinux1-dev install
libsepol1 install
libsepol1-dev install
libserf-0-0 install
libsigc++-2.0-0c2a install
libslang2 install
libslp-dev install
libslp1 install
libsm-dev install
libsm6 install
libsoap-lite-perl install
libsqlite0 deinstall
libsqlite3-0 install
libss2 install
libssh2-1 deinstall
libssl-dev install
libssl0.9.8 install
libstdc++6 install
libstdc++6-4.4-dev install
libstdc++6-4.4-dev-mips-cross install
libstdc++6-mips-cross install
libsub-exporter-perl install
libsub-install-perl install
libsub-name-perl install
libsvn-perl install
libsvn1 install
libsys-hostname-long-perl install
libtalloc2 install
libtask-weaken-perl install
libtasn1-3 install
libterm-size-perl install
libtest-pod-perl install
libtext-charwidth-perl install
libtext-iconv-perl install
libtext-wrapi18n-perl install
libthai-data install
libthai0 install
libtie-ixhash-perl install
libtiff4 install
libtimedate-perl install
libtk-dirselect-perl install
libtokyocabinet8 install
libtool install
libtry-tiny-perl install
libtspi1 deinstall
libudev0 install
libunistring0 install
liburi-perl install
libusb-0.1-4 install
libuuid-perl install
libuuid1 install
libwbclient0 install
libwrap0 install
libwrap0-dev install
libwww-perl install
libx11-6 install
libx11-data install
libx11-dev install
libxapian22 install
libxau-dev install
libxau6 install
libxcb-render-util0 install
libxcb-render-util0-dev install
libxcb-render0 install
libxcb-render0-dev install
libxcb1 install
libxcb1-dev install
libxcomposite-dev install
libxcomposite1 install
libxcursor-dev install
libxcursor1 install
libxdamage-dev install
libxdamage1 install
libxdmcp-dev install
libxdmcp6 install
libxext-dev install
libxext6 install
libxfixes-dev install
libxfixes3 install
libxfont1 install
libxft-dev install
libxft2 install
libxi-dev install
libxi6 install
libxinerama-dev install
libxinerama1 install
libxml-namespacesupport-perl install
libxml-parser-perl install
libxml-sax-expat-perl install
libxml-sax-perl install
libxml-simple-perl install
libxml2 install
libxml2-utils install
libxmlsec1 install
libxmlsec1-openssl install
libxmuu1 deinstall
libxrandr-dev install
libxrandr2 install
libxrender-dev install
libxrender1 install
libxslt1.1 install
libyaml-0-2 install
libyaml-perl install
libyaml-syck-perl install
lintian install

vbvbvb
02-04-2013, 10:40
linux-base install
linux-headers-2.6.32-5-686 install
linux-headers-2.6.32-5-common install
linux-image-2.6-486 install
linux-image-2.6-686 install
linux-image-2.6.32-5-486 install
linux-image-2.6.32-5-686 install
linux-kbuild-2.6.32 install
linux-libc-dev install
linux-libc-dev-mips-cross install
live-boot install
live-boot-initramfs-tools install
live-config install
live-config-sysvinit install
live-initramfs install
locales install
locate install
lockfile-progs install
login install
logrotate install
lsb-base install
lsb-release install
lsof install
lzma install
m4 install
make install
man-db install
manpages install
manpages-dev install
mawk install
mc install
mime-support install
mlocate deinstall
module-init-tools install
mount install
mutt deinstall
mysql-client install
mysql-client-5.1 install
mysql-common install
mysql-server-5.1 deinstall
nano install
ncurses-base install
ncurses-bin install
ncurses-term install
net-tools install
netbase install
netcat-traditional install
nfs-common deinstall
openssh-blacklist install
openssh-blacklist-extra install
openssh-client deinstall
openssh-server deinstall
openssl install
openssl-blacklist install
openssl-blacklist-extra install
os-prober install
passwd install
patch install
patchutils install
pciutils install
perl install
perl-base install
perl-modules install
perl-tk install
php-geshi install
php5 install
php5-cli install
php5-common install
php5-suhosin install
pkg-config install
po-debconf install
portmap install
procmail install
procps install
psmisc install
python install
python-central install
python-dbg install
python-minimal install
python-openssl install
python-openssl-dbg install
python-openssl-doc install
python-reportbug install
python-subversion install
python-support install
python2.6 install
python2.6-dbg install
python2.6-minimal install
readline-common install
reportbug install
rpm deinstall
rsync install
rsyslog install
samba install
samba-common install
sed install
sensible-utils install
sgml-base install
shared-mime-info install
sharutils install
smbfs install
ssl-cert install
strace install
subversion install
subversion-tools install
sudo install
sysv-rc install
sysvinit install
sysvinit-utils install
tar install
tasksel install
tasksel-data install
tcl8.4 deinstall
tcpd install
telnet install
texinfo install
time install
traceroute install
ttf-dejavu-core install
tzdata install
ucf install
udev install
unzip install
update-inetd install
user-setup deinstall
util-linux install
uuid-runtime deinstall
vim-common install
vim-tiny install
w3m install
wamerican install
wdiff install
websvn deinstall
wget install
whiptail install
whois install
x-ttcidfont-conf install
x11-common install
x11proto-composite-dev install
x11proto-core-dev install
x11proto-damage-dev install
x11proto-fixes-dev install
x11proto-input-dev install
x11proto-kb-dev install
x11proto-randr-dev install
x11proto-render-dev install
x11proto-xext-dev install
x11proto-xinerama-dev install
xapt install
xfonts-encodings install
xfonts-utils install
xkb-data install
xml-core install
xsltproc install
xtrans-dev install
xz-utils install
yum deinstall
zlib1g install
zlib1g-dev install