Вторник, 21.11.2017, 00:16
Dansguardian+ и не только
Главная Регистрация Вход
Приветствую Вас, Гость
Меню сайта
Наш опрос
Какую версию PHP вы используете?
Всего ответов: 41
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Форма входа
 FAQ
Главная » FAQ

,Выходов из этой ситуации три:
1. Изменить значение опции http_port в файле конфигурации Squid - squid.conf ,
на
http_port 127.0.0.1:3128
таким образом Squid будет принимать соединения только на внутреннем сетевом интерфейсе.
2. Использовать правила ACL в squid.conf , если первый случай вам не подходит.
3. Использовать правила сетевого экрана.

На этот вопрос ответ дал пользователь Arg с linformatika.ru. Оригинальный комментарий http://linformatika.ru/content/squiddansguardian_i_ip_autentifikatsiya#comment-2824       

Спасибо!. Обход по паролю делал по вашим материалам,а вот с originalip для правильного отображения адреса в логах сквида вышел косяк с которым долго мучился. Компилировать с этой опцией squid не нужно, а нужно только прописать в сквиде follow_x_forwarded_for allow "свою localnet" и в in dansguardian.conf forwardedfor = on.

Кстати пулы так тоже работают нормально и dans не перетягивает их на себя))

Для справки:

arg@server:~$ dansguardian -v
DansGuardian 2.10.1.1

Built with: '--mandir=/usr/share/man/' '--enable-clamav=yes' '--enable-clamd=yes' '--with-proxyuser=dansguardian' '--with-proxygroup=dansguardian' '--prefix=/usr' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--enable-icap=yes' '--enable-commandline=yes' '--enable-trickledm=yes' '--enable-email=yes' '--enable-ntlm=yes' 'CXX=g++' 'CXXFLAGS=-g -O2' 'LDFLAGS=-Wl,-Bsymbolic-functions' 'CPPFLAGS=' 'CC=cc' 'CFLAGS=-g -O2'
arg@server:~$ squid -v
Squid Cache: Version 2.7.STABLE9
configure options: '--prefix=/usr' '--exec_prefix=/usr' '--bindir=/usr/sbin' '--sbindir=/usr/sbin' '--libexecdir=/usr/lib/squid' '--sysconfdir=/etc/squid' '--localstatedir=/var/spool/squid' '--datadir=/usr/share/squid' '--enable-async-io' '--with-pthreads' '--enable-storeio=ufs,aufs,coss,diskd,null' '--enable-linux-netfilter' '--enable-arp-acl' '--enable-epoll' '--enable-removal-policies=lru,heap' '--enable-snmp' '--enable-delay-pools' '--enable-htcp' '--enable-cache-digests' '--enable-underscores' '--enable-referer-log' '--enable-useragent-log' '--enable-auth=basic,digest,ntlm,negotiate' '--enable-negotiate-auth-helpers=squid_kerb_auth' '--enable-carp' '--enable-follow-x-forwarded-for' '--with-large-files' '--with-maxfd=65536' 'i386-debian-linux' 'build_alias=i386-debian-linux' 'host_alias=i386-debian-linux' 'target_alias=i386-debian-linux' 'CFLAGS=-Wall -g -O2' 'LDFLAGS=-Wl,-Bsymbolic-functions' 'CPPFLAGS='


В Ubuntu 10.10, и Squid и Dansguardian уже собраны с необходимыми опциями, для других дистрибутивов нужно смотреть, и при необходимости собрать самому или оставить запрос на сборку разработчикам дистрибутива.

Для отладки фильтрации на связке Dansguardian + SQUID требуются соответственно просмотр логов access.log и error.log обоих программ.
Для просматривания логов в  консоли можно воспользоваться стандартными программами и командами оболочки.
Например, очень полезны tail и grep.
Запустив tail -n 10 access.log в каталоге с логом dansguardian мы выведем на экран последние 10 строк файла access.log.
Если добавить всего одну опцию -f , то запустив tail -f -n 10 access.log мы получим обновляемый вывод на экран последних 10 строк.
С помощью grep можно отсеивать подходящие/неподходящие строки.
Добавив grep можно получить отфильтрованный вывод tail,
Например, tail -f -n 20 access.log | grep google будет выводить последние строки файла access содержащие google

При фильтрации по белым спискам очень часто оказывается, что страницы не загружаются полностью, отсутствуют картинки, расползшаяся разметка.
Разобраться в ситуации поможет обычная веб-консоль браузера Firefox, просто включаем веб-консоль, и переходим на проблемную страницу, в веб-консоли очень быстро станет видно какие элементы не грузятся и по каким причинам.
Для более глубокого исследования проблем и возможностей можно использовать специальные модули, например Firebug.
Dansguardian может вырезать целые куски веб-страниц и вместо них оставлять комментарии, а Firebug поможет определиться что и где резать, чтоб не ломать разметку сайта.

Если испытываете проблемы со Squid, то можно остановить службу и запустить его с опцией -d вручную, после опции должно стоять число, определяющее уровень сообщений об ошибках, подробнее можно посмотреть в документации Squid.
Такой запуск поможет быстро локализовать проблемы.





Автоматический запуск сервисов при запуске системы

Для новых версий Ubuntu:
sudo sysv-rc-conf --level 345 squid3 on
где squid3 - имя сервиса, 345 -уровень исполнения
Если запустите без опций, т.е.
sudo sysv-rc-conf
то запустится псевдографический интерфейс.

Для старых версий Ubuntu и ALT:
sudo chkconfig --level 345 squid3 on

Иногда бывают случаи, когда хочется использовать несколько редиректоров, но в Squid можно прописать лишь один.
Но... всё-таки можно использовать несколько редиректоров, если использовать конвеер |
Допустим, у нас есть два редиректора,
один баннерорезалка /usr/sbin/banners_cut.pl
второй фильтр поисковиков /usr/sbin/redir.pl
Однако, если мы попытаемся прописать в конфиге Squid такую строку
url_rewrite_program  /usr/sbin/redir.pl|/usr/sbin/banners_cut.pl
то при перезапуске Squid сообщит об ошибке.

Выход простой.
Создаем скрипт /usr/sbin/redir.sh с правом на запуск(X), владелец и группа = владельцу и группе прокси-сервера.
содержимое скрипта простое, всего две строки.
 
#!/bin/sh
/usr/sbin/redir.pl|/usr/sbin/banners_cut.pl


следует выполнить скрипт в консоли
/usr/sbin/redir.sh
чтобы убедиться, что скрипт ждет ввода строки, и возращает корректную строку после ввода.

Остается указать этот скрипт в конфиге Squid и перезапустить его.
url_rewrite_program  /usr/sbin/redir.sh

Прим. На высоких нагрузках способ не тестировался.


Copyright MyCorp © 2017
Поиск
Друзья сайта
  • Linformatika
  • Форум ALTLINUX
  • Ubuntu на Онего.ру
  • Сайт управляется системой uCoz