Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» SQUID (только под *nix)

Автор: Ptrovich
Дата сообщения: 31.03.2005 10:34

Markes

deny_info http:\mycoolsite.com\squiderror\error.html
Это ответка на случай если идет запрос на какую то урлу и, согласно правилам , доступ к ней запрещен.
А error_directory /usr/local/squid/share/errors/Russian-1251 - это ответка на случай если произошла ошибка связи или еще какая нить ошибка.
По этому обычно в deny_info заталкивают какой нить гиф однотонный размером 1 на 1 пиксель. У меня он салатового цвета. И тогда вместо банеров у меня получаются салатовые пятна.
А в error_directory ложат русскую ошибку чтоб юзера (у меня это в основном одни деффки , которые в англ ничего не понимают) прочли что проблема с инетом , и сходили и позвали сисадмина.

Лирическое отступление.
У меня допустим в русской ошибке пишет "У вас проблемы с интернетом нажмите красную кнопку на "главном компьютере" у меня под столом. Если через 10 минут ничего не изменилось позвоните мне по телефону: " и мой номер мобилы.
(Соответственно на серваке висит наклейка рекалом красного цвета " Главный компьютер" , ну и ресет покрашен красным лаком от ногтей). Иногда я еще вешаю распечатку над столом "Красная кнопка под столом!" потому что на столе стоит моя рабочая машина , и иногда ее перегружают.


Цитата:
Опять закомментировал строку - вылазит русский еррор

По умолчанию видно сквид у тя скомпилирован с русской ошибкой.
--enable-default-err-language=Russian-1251
А когда ты в конфиге ставишь англ, то это меняет дифолтные настройки вот и все.

Автор: Markes
Дата сообщения: 31.03.2005 10:46
Ptrovich

Цитата:
По этому обычно в deny_info заталкивают какой нить гиф однотонный размером 1 на 1 пиксель. У меня он салатового цвета. И тогда вместо банеров у меня получаются салатовые пятна.

Т.е. если у меня режется порно, то вместо ошибки типа "Доступ запрещён", я увижу этот пиксель?

Цитата:
По умолчанию видно сквид у тя скомпилирован с русской ошибкой.
--enable-default-err-language=Russian-1251
А когда ты в конфиге ставишь англ, то это меняет дифолтные настройки вот и все.

Не знаю как он был скомпилирован, но я вижу как раз отредактированную мною ошибку по адресу /usr/local/squid/share/errors/Russian-1251, но у меня это закомментировано в конфиге. Значит от по умолчанию оттуда берёт еррор? Раньше-то этого не было.
Автор: Ptrovich
Дата сообщения: 31.03.2005 11:07

Цитата:
Т.е. если у меня режется порно, то вместо ошибки типа "Доступ запрещён", я увижу этот пиксель?

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


Цитата:
Не знаю как он был скомпилирован, но я вижу как раз отредактированную мною ошибку по адресу /usr/local/squid/share/errors/Russian-1251, но у меня это закомментировано в конфиге. Значит от по умолчанию оттуда берёт еррор? Раньше-то этого не было.


Быть может ты где то еще выше оставил строчку с русским еррором? Хотя какая в принципе разница какой еррор будет лезть, смысле из какой директории? Просто отредактируй его как тебе надо и дело с концом.
Автор: Markes
Дата сообщения: 31.03.2005 12:05
Ptrovich

Цитата:
Точно. Обычно банер маленький, тоесть ты не можешь угадать с каким масштабом написать "Доступ запрещен" чтоб его было полноценно видно. Обычно видно только "Дос" или еще как то так. По - этому я использую просто цвет.

ОК. Создал из стандартного еррора ERR_PIXEL такого вида:


<HTML><HEAD><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<TITLE>ERROR: The requested URL could not be retrieved</TITLE>
<STYLE type="text/css"><!--BODY{background-color:#ffffff;font-family:verdana,sans-serif}PRE{font-family:sans-serif}--></
STYLE>
</HEAD><BODY>
<IMG src="/usr/local/squid/share/errors/antibanner/pixel.gif">
</body>
</html>


Положил его в /usr/local/squid/share/errors/Russian-1251

Добавляюв конфиг:

acl banners url_regex "/usr/local/squid/etc/banners"
deny_info ERR_PIXEL banners
http_access deny banners

Нифига не работает. Вместо баннера вижу слово "Ошибка" из стандартного error.


Цитата:

Быть может ты где то еще выше оставил строчку с русским еррором?

Вот именно что нет
Автор: Ptrovich
Дата сообщения: 31.03.2005 13:12
Markes
Опять неправильно.
Тут нужно четко усвоить разницу между deny_info и error_directory

Цитата:
deny_info
This can be used to return an ERR_ page for requests, which do not pass the 'http_access' rules. A single ACL will cause the http_access check to fail. If a 'deny_info' line exists for that ACL then Squid returns a corresponding error page.

и

Цитата:
error_directory
If you wish to create your own versions of the default (English) error files, either to customize them to suit your language or company, copy the template English files to another directory and point this tag at them


При этом deny_info требует (я не знаю почему , просто верю на слово тому кто мне сказал) чтоб файл который будет отправляцца клиенту лежал на ресурсе доступном из нета. Тоесть у тебя или у кого то еще должен быть поднят апач который хостит эти файлы ошибок.
acl banner url_regex -i "/usr/local/squid/etc/banners"
deny_info http://google.com.ua/error.gif banner
http_access deny banner

Меня смущает одна вещь: если простые эрроры пуляются и без апача, то почему для специфического еррора апач нужен? Если чесно , то я не пробовал без апача , может и так работает?
Автор: Markes
Дата сообщения: 31.03.2005 14:26
Ptrovich

Короче, я пытаюсь сделать 2 вещи:

1. Чтобы вместо части моей стандартной ошибки при резке баннеров у меня был gif.
Кладу pixel.gif в корень моего домена. В конфиге это выглядит так:

acl banners url_regex "/usr/local/squid/etc/banners"
deny_info http://mydomain.ru/pixel.gif banners
http_access deny banners
Перезапускаю сквиду, она падает с такой ошибкой:

errorTryLoadText: '/usr/local/squid/etc/errors/http://mydomain.ru/pixel.gif': (2) No such file or directory

Ок. Кладу этот pixel.gif в /usr/local/squid/etc/errors/ и меняю строку в конфиге:
deny_info pixel.gif banners
Сквида ни на что не ругается, но вместо гифа показывает мне опять же часть моей стандартной русской ошибки из /usr/local/squid/share/errors/Russian-1251 (или откуда она грузится, хрен его знает)

2. Хочу, чтобы при срабатывании правила по резке порно, юзер получал спец-еррор.
Получаю аналогичные грабли: сделал из стандартного /usr/local/squid/share/errors/Russian-1251/ERR_ACCESS_DENIED спец-порно-еррор ERR_PORNO_DENIED (просто изменил немного первый ).
Пишу в конфиге:

acl porno url_regex "/usr/local/squid/etc/porno"
deny_info /usr/local/squid/share/errors/Russian-1251/ERR_PORNO_DENIED porno
http_access deny porno


Получаю ошибку в cache.log:
errorTryLoadText: '/usr/local/squid/etc/errors//usr/local/squid/share/errors/Russian-1251/ERR_PORNO_DENIED': (2) No such file or directory

Делаю так:
deny_info ERR_PORNO_DENIED porno

-> Ошибки нет и вижу свою стандартную ошибку.

Моя сходит с ума Где криворукость?
Автор: Ptrovich
Дата сообщения: 31.03.2005 15:13
Ты можешь посмотреть этот гиф через експлорер?
В первом случае вообще все идеально, должно пахать. У меня все пашет.
Я думаю это надолго , давай по аське, чтоб быстрее инфа ходила.
5334467
Автор: Pleshkov
Дата сообщения: 03.04.2005 16:34
Markes

Цитата:
Делаю так:
deny_info ERR_PORNO_DENIED porno

-> Ошибки нет и вижу свою стандартную ошибку.

А потом сделай так

Код: squid -k reconfigure
Автор: Markes
Дата сообщения: 04.04.2005 09:31
Pleshkov

Цитата:
А потом сделай так
Код:squid -k reconfigure
и будет тебе счастье .... только что проверил

Делал killall -HUP squid (у меня фря). Проблема не в этом. Не работает и всё. "Помешали" конфиг с Ptrovich - никаких продвижений. У него работает таким образом как я описал выше, у меня - нет
Автор: wchik
Дата сообщения: 07.04.2005 18:31
уважаемый ALL
возникла ситуация надо разрешать доступ к сквиду на уровне групп
решение вроде существует
добавляем в

Код: auth_param ntlm program /usr/local/bin/ntlm_auth
Автор: squid
Дата сообщения: 07.04.2005 19:45
Markes

Цитата:
Получаю ошибку в cache.log:
errorTryLoadText: '/usr/local/squid/etc/errors//usr/local/squid/share/errors/Russian-1251/ERR_PORNO_DENIED': (2) No such file or directory

Делаю так:
deny_info ERR_PORNO_DENIED porno

-> Ошибки нет и вижу свою стандартную ошибку.


есть такая опция error_directory и там уже нужно прописать путь к директории путь /usr/local/squid/share/errors/Russian-1251/
Автор: val0000
Дата сообщения: 08.04.2005 21:23
Народ, какой у вас обычно процент попаданий в кэш?
У меня 1-2% (т.е на каждые 50Mb скачанных из инета приходится примерно 1-1.5Mb взятых из кэша). Это нормально?
Сетка человек 20 причем все ходят по примерно одним и тем же сайтам.
Проводил такой эксперимент: открываю www.google.com, в access.log вижу: TCP_MISS.
Нажимаю обновить в браузере в access.log опять вижу TCP_MISS. И зачем тогда нужен кэш?
Автор: Markes
Дата сообщения: 08.04.2005 21:57
val0000

Цитата:
У меня 1-2% (т.е на каждые 50Mb скачанных из инета приходится примерно 1-1.5Mb взятых из кэша)

А как узнать этот процент?
Автор: Pleshkov
Дата сообщения: 10.04.2005 13:01
Доброе время суток All!

Можно ли в сквиде(squid/2.5.STABLE9) заменить nsca_auth на PHP скрипт (в Perl я не силен), который будет выбирать из бд разрешения юзверя. Если да, то какие параметры передаются скрипту авторизации и в каком виде?
Автор: ooptimum
Дата сообщения: 10.04.2005 13:17
Pleshkov
Твой скрипт должен читать стандартный ввод и на каждую введенную строку, содержащую имя пользователя и через пробел его незашифрованный пароль, вывести в stdout строку 'ERR', если пользователь не аутентифицирован и 'OK' в противном случае.
Автор: Pleshkov
Дата сообщения: 10.04.2005 13:37
Markes

Цитата:
Делал killall -HUP squid (у меня фря). Проблема не в этом. Не работает и всё. "Помешали" конфиг с Ptrovich - никаких продвижений. У него работает таким образом как я описал выше, у меня - нет

у меня тоже фря ... проверил я те говорю, нормально работает.

Добавлено:
ooptimum

Цитата:
Твой скрипт должен читать стандартный ввод и на каждую введенную строку, содержащую имя пользователя и через пробел его незашифрованный пароль, вывести в stdout строку 'ERR', если пользователь не аутентифицирован и 'OK' в противном случае.

Тогда следующий вопрос, а в каком виде его в конфиг сквиду прописать?
Автор: ooptimum
Дата сообщения: 10.04.2005 13:50
Pleshkov
auth_param basic program твой_скрипт
Автор: Pleshkov
Дата сообщения: 10.04.2005 13:50
ooptimum
ок, спасиб
Автор: kostik
Дата сообщения: 11.04.2005 00:15
wchik,

а домен случайно не в режиме Win-2003? если так, то там можно создать междоменную (глобальную) группу безопасности... по идее, это должно решить проблемы.
Автор: Aleksanders
Дата сообщения: 11.04.2005 07:52
SQUID не хочет брать ip сайта из файла hosts, а берет с сервера DNS. Как-то можно изменить ситуацию, чтобы сначала пытался брать оттуда, а потом уже с DNS?
Автор: ooptimum
Дата сообщения: 11.04.2005 08:55
Aleksanders
Посмотри /etc/nsswitch.conf. Должна быть запись типа 'hosts: files dns', т.е. обращение к файлам до обращения к DNS.
Автор: Aleksanders
Дата сообщения: 11.04.2005 09:23
ooptimum
Нет там такого файла. Фрюха очень старая, 3.4-RELEASE. Создал такой файл, ничего не изменилось.
Смысл в том, что вместо некоторого ip, соответствующего сайту www.somesite.ru нужно выдавать www.somesite.ru, который находится на локальном апаче. Я прописал его ip в файле hosts, и он стал отдаваться нормально, но не через SQUID
Автор: Markes
Дата сообщения: 11.04.2005 09:41
squid
Цитата:
есть такая опция error_directory и там уже нужно прописать путь к директории путь /usr/local/squid/share/errors/Russian-1251/

Прописал - тоже самое.

Pleshkov
Цитата:
у меня тоже фря ... проверил я те говорю, нормально работает.

Да я верю Но у меня так не работает, ХЗ почему..
Автор: wchik
Дата сообщения: 11.04.2005 12:41
val0000
проверь размер диска что ты на кеш выделил
у меня это 30 -35 процентов

kostik
домен смешанный корень леса вин 2000
поддомен 2003,
корень на новую операционку пока перевести не получится однако
Автор: val0000
Дата сообщения: 11.04.2005 14:58
wchik

Цитата:
проверь размер диска что ты на кеш выделил
у меня это 30 -35 процентов

Под кэш выделено 3Gb. Оперативки на серваке 256Mb. Настройки сквида дефолтные.
Автор: PashaG
Дата сообщения: 11.04.2005 16:23
Доброго времени суток!

На днях решил настроить авторизацию пользователей с использованием LDAP и столкнулся с такой штукой: squid (а точнее его программа аутентификации squid_ldap_auth) не принимает вводимый пароль!
в squid.conf

auth_param basic program /usr/lib/squid/squid_ldap_auth -P -b ou=users,dc=test,dc=ru -f (&(uid=%s)) -h 127.0.0.1
external_acl_type ldap_group %LOGIN /usr/lib/squid/squid_ldap_group -P -b ou=users,dc=test,dc=ru -f (&(uid=%v)(telexNumber=ou=%a,ou=users,dc=test,dc=ru)) -h 127.0.0.1

acl o_users external ldap_group o1
http_access allow o_users
http_access deny all

в cache.log

2005/04/11 17:04:17| The request GET http://yandex.ru/ is DENIED, because it matched 'o_users'
(squid_ldap_auth): ../../../libraries/libldap/search.c:189: ldap_search: Assertion `ld != ((void *)0)' failed.
2005/04/11 17:04:23| The request GET http://yandex.ru/ is DENIED, because it matched 'o_users'
2005/04/11 17:04:23| WARNING: basicauthenticator #1 (FD 11) exited

Не могу понять где грабли. Заранее спасибо.
Автор: ooptimum
Дата сообщения: 11.04.2005 19:45
PashaG
уверен в параметре
Цитата:
(&(uid=%s))
?
С чем ты там AND делаешь?
Автор: wchik
Дата сообщения: 11.04.2005 22:14
val0000

Цитата:
Под кэш выделено 3Gb. Оперативки на серваке 256Mb.

где выделено?
конфиг в студию! (БЕЗ КОММЕНТАРИЕВ И ПУСТЫХ СТРОК!!!!!!!!!!)
df -h аналогично
Автор: PashaG
Дата сообщения: 12.04.2005 07:32
ooptimum

Виноват.

AND в фильтре делается с признаком активности пользователя:

auth_param basic program /usr/lib/squid/squid_ldap_auth -P -b ou=users,dc=test,dc=ru -f (&(uid=%s)(description=active)) -h 127.0.0.1

Я его в вопросе по невнимательности пропустил, а в конфиге он есть.

Меня в тупик ставят сообщения в cache.log, особенно следующее:

(squid_ldap_auth): ../../../libraries/libldap/search.c:189: ldap_search: Assertion `ld != ((void *)0)' failed.
Автор: val0000
Дата сообщения: 12.04.2005 10:08
wchik

Цитата:
где выделено?
конфиг в студию! (БЕЗ КОММЕНТАРИЕВ И ПУСТЫХ СТРОК!!!!!!!!!!)
df -h аналогично


http_port 192.168.1.254:3128
icp_port 0
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
cache_dir ufs /var/spool/squid 3000 16 256
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
pid_filename /var/run/squid/squid.pid
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
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 563
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
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
acl good_ip src "/usr/local/etc/squid/good_ip.txt"
acl bad_url url_regex "/usr/local/etc/squid/bad_url.txt"
acl bad_urlpath urlpath_regex "/usr/local/etc/squid/bad_urlpath.txt"
acl porn url_regex "/usr/local/etc/squid/porn.txt"
acl noporn url_regex "/usr/local/etc/squid/noporn.txt"
http_access allow manager localhost
http_access deny manager
http_access deny bad_url
http_access deny bad_urlpath
http_access deny porn
http_access allow good_ip
http_access deny all
http_reply_access allow all
error_directory /usr/local/etc/squid/errors/Russian-1251
coredump_dir /usr/local/squid/cache

Filesystem Size Used Avail Capacity Mounted on
/dev/ad1s1a 984M 53M 852M 6% /
/dev/ad1s1f 6.7G 10.0K 6.2G 0% /tmp
/dev/ad1s1g 22G 1.5G 19G 7% /usr
/dev/ad1s1e 6.7G 325M 5.9G 5% /var
procfs 4.0K 4.0K 0B 100% /proc

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687

Предыдущая тема: Неполадки в работе DHCP сервера


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.