Squid+sams

FreeBSD, NetBSD, OpenBSD, DragonFly и т. д.

Модератор: arachnid

Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Squid+sams

Сообщение Dimas »

Freebsd 6.4
Squid+sams все из портов и отлично работает, но...

Squid работает по ncsa аунтификации пользователей, т.е. логин и пас просто хранятся в текстовом файле.

Самс отлично запускается
/usr/local/bin/sams
и
samsdeamon -d
отлично выполняются.

Добавил пользователя testuser
пароль 111

но аунтификацию не проходит )

squid.conf

auth_param basic program /usr/local/squid/libexec/ncsa_auth /usr/local/squid/etc/passwd (/usr/local/etc/squid/ncsa.sams не создан фаил, вписал нормальный путь до фаила с паролями)
acl password proxy_auth REQUIRED
http_access allow password
http_access deny all

auth_param basic credentialsttl 2 hours - сквид ругается на запись
Спасибо сказали:
Аватара пользователя
Maestro
Сообщения: 227
Статус: ипэшник
ОС: FreeBSD-6.2 STABLE

Re: Squid+sams

Сообщение Maestro »

Во-первых - куда и как добавили пользователя
Во-вторых - а кто такой password???
дайте денег на обновление портов :)
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

Maestro писал(а):
04.09.2009 19:44
Во-первых - куда и как добавили пользователя
Во-вторых - а кто такой password???

1. Пользователя добавляю в самом самсе, он появляется. Но авторизация на прокси через его учетку не проходит. Куда он добавляется в самсе ?
2. password сори лишняя запись.

3. Пробовал как советуют в различных faq

auth_param basic program /usr/sbin/ncsa_auth /etc/squid/ncsa.sams
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
redirect_program /usr/bin/samsredir

Но после внесения в squid.conf данной записи вместо

auth_param basic program /usr/local/squid/libexec/ncsa_auth /usr/local/squid/etc/passwd
acl password proxy_auth REQUIRED
http_access allow password
http_access deny all

Сквид стартует, но сама прокся просто тупо не работает ) (/etc/squid/ncsa.sams фаил создан)
Спасибо сказали:
Аватара пользователя
ivan2ksusr
Сообщения: 882
ОС: Mac OS X, openSUSE

Re: Squid+sams

Сообщение ivan2ksusr »

покажите весь конфиг squid'a
файл samsredir точно лежит в /usr/bin?
а если запустить "squid -s" что покажет?
покажите вывод access.log и cache.log после запуска squid


через sams в итоге у вас должен получиться acl:
acl _sams_47aaf54f4bfb8 proxy_auth "/etc/squid/47aaf54f4bfb8.sams"
ну и т.д.
http_access allow _sams_47aaf54f4bfb8 !_sams_47a2f3864a48d

где то в конфиге накрутили)
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

Проблема решена!
Надо было в шаблоне выбрать тип авторизации, плюс создать свой шаблон. Т.к. даже поменяв в дефаултном тип авторизации он у меня не заработал.
В новом шаблоне я выставил NCSA и все заработало
Спасибо сказали:
Аватара пользователя
ivan2ksusr
Сообщения: 882
ОС: Mac OS X, openSUSE

Re: Squid+sams

Сообщение ivan2ksusr »

ларчик то просто открывался, значит не дочитали FAQ по sams :) Хотя там об этом пишут.
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

Иногда возникает вот такая проблема: создаю в sams пользователя.
Он создается в фаиле авторизации ncsa.sams но при вводе в браузере логин пас, авторизацию не проходит!
Если вручную изменять пас для пользователя через htpasswd то все заработает!
Но что вносит sams вместо верного пароля ? Может кто сталкивался ?
Спасибо сказали:
Аватара пользователя
ivan2ksusr
Сообщения: 882
ОС: Mac OS X, openSUSE

Re: Squid+sams

Сообщение ivan2ksusr »

Dimas писал(а):
11.09.2009 14:52
Иногда возникает вот такая проблема: создаю в sams пользователя.
Он создается в фаиле авторизации ncsa.sams но при вводе в браузере логин пас, авторизацию не проходит!
Если вручную изменять пас для пользователя через htpasswd то все заработает!
Но что вносит sams вместо верного пароля ? Может кто сталкивался ?

реконфигурацию squid делаете когда вносите изменения?
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

Конечно, добавил юзера нажал реконфигурация. Как я понимаю без реконфигурации он не добавится же ) После нее он добавляется просто пароль не подходит ( Причем странно как то у некоторых все ок. Пароли все только на латинице.
Спасибо сказали:
Аватара пользователя
SergNik
Сообщения: 77
ОС: Windws+FreeBSD

Re: Squid+sams

Сообщение SergNik »

А у меня вообще с паролями полная лажа. У тебя сработал жесткий линк на файл?

Код:

unix# ln -s /usr/local/bin/htpasswd /usr/bin/htpasswd ln: /usr/bin/htpasswd: Operation not permitted


У меня тоже лажа с этим самосом и сквидом(((((
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

ln -s /usr/local/bin/htpasswd /usr/bin/htpasswd


Команда сработала отлично )
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

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

Предположим пользователь test входит через браузер Firefox в свой кабинет

А далее он открывает в новом фрейме кнопку трафик и получает вот такого вида запрос в браузере к базе

http://test.ru/main.php?show=exe&funct...d=4aa669e5c1890

В результате нехитрых комбинаций пользователь смог сменить себе трафик с xxx мегабайт на безлимитку, перекинуть себя в другую группу.

Вот таким запросом просмотреть статистику трафика администратора.

http://test.ru/main.php?username=administr...edate=2009-9-14

Что это за бред такой ? Как закрыть это все ?
Спасибо сказали:
Аватара пользователя
Maestro
Сообщения: 227
Статус: ипэшник
ОС: FreeBSD-6.2 STABLE

Re: Squid+sams

Сообщение Maestro »

Не пользоваться SAMS =) А все делать ручками =)
дайте денег на обновление портов :)
Спасибо сказали:
Аватара пользователя
ivan2ksusr
Сообщения: 882
ОС: Mac OS X, openSUSE

Re: Squid+sams

Сообщение ivan2ksusr »

вот те на О_о, надо будет просмотреть что и как :)
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

Maestro писал(а):
15.09.2009 09:57
Не пользоваться SAMS =) А все делать ручками =)

да было все просто squid+sarg, но вот попросили кабинет юзеру что бы мог смотреть трафик и т.д.
Спасибо сказали:
Аватара пользователя
Maestro
Сообщения: 227
Статус: ипэшник
ОС: FreeBSD-6.2 STABLE

Re: Squid+sams

Сообщение Maestro »

Dimas писал(а):
15.09.2009 11:06
Maestro писал(а):
15.09.2009 09:57
Не пользоваться SAMS =) А все делать ручками =)

да было все просто squid+sarg, но вот попросили кабинет юзеру что бы мог смотреть трафик и т.д.

порт разработанный русскими ребятами - lightsquid - красиво и по-русски
дайте денег на обновление портов :)
Спасибо сказали:
Аватара пользователя
SergNik
Сообщения: 77
ОС: Windws+FreeBSD

Re: Squid+sams

Сообщение SergNik »

А моя проблема осталась( Оно создает пароль из конслоли
/usr/local/sbin/htpasswd -c /usr/local/etc/squid/ncsa.sams user
а из интерфейса не хочет. Хотя может это и к лучшему,заводить юзеров из консольки)
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

SergNik писал(а):
17.09.2009 11:57
А моя проблема осталась( Оно создает пароль из конслоли
/usr/local/sbin/htpasswd -c /usr/local/etc/squid/ncsa.sams user
а из интерфейса не хочет. Хотя может это и к лучшему,заводить юзеров из консольки)

А у меня создает, но через одно место, пароли работают через раз, каждому третьему юзеру приходится править в консоли
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

Проблема с паролями пользователей решилась, обновил базу и ребутнул сервер, все стало норм
Спасибо сказали:
Аватара пользователя
ivan2ksusr
Сообщения: 882
ОС: Mac OS X, openSUSE

Re: Squid+sams

Сообщение ivan2ksusr »

Dimas писал(а):
14.10.2009 11:19
Проблема с паролями пользователей решилась, обновил базу и ребутнул сервер, все стало норм

а зачем сервер перезагружать? Оо
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

ivan2ksusr писал(а):
14.10.2009 11:38
а зачем сервер перезагружать? Оо

Для проверки что все сервисы при перезагрузке поднялись

Проблемы с паролями юзеров разрешились ) Добавляет корректно.

Но появились следующие проблемы с редиректором sams

Вот мой squid.conf

Код: Выделить всё

# created by SAMS _sams_ 2009-10-14 10:50:56
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8
acl clients src 192.168.0.1-192.168.2.254
acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
http_port 3128
hierarchy_stoplist cgi-bin ?
pid_filename /var/run/squid.pid
coredump_dir /usr/local/squid/cache
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
cache_mem 16 MB
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
cache_dir ufs /var/cache/squid 10000 16 256
ftp_user anonymous@
ftp_list_width 32
ftp_passive on
acl superuser src 192.168.0.10-192.168.0.50
acl CONNECT method CONNECT
http_access allow all superuser
redirect_program /usr/local/bin/samsredir
auth_param basic program /usr/local/libexec/squid/ncsa_auth /usr/local/etc/squid/ncsa.sams
acl password proxy_auth REQUIRED
http_access allow password
http_access deny all


Пользователи проходящие авторизацию на прокси юзают интернет нормально, а вот группа acl superuser src 192.168.0.10-192.168.0.50 у которой логи и пас не должен запрашиваться в принципе ) запрос не получает, но получает страницу 404, куда переадресовывает редиректор, что видно в access.log

Вот лог хождения юзера с выделенным ip из указанного диапазона

Код: Выделить всё

1255516237.614      2 192.168.0.245 TCP_MISS/404 566 GET http://mail.ru/ - DIRECT/192.168.0.1 text/html
1255516258.544      4 192.168.0.245 TCP_MISS/404 566 GET http://mail.ru/ - DIRECT/192.168.0.1 text/html


Где как понятно 192.168.0.1 это адрес прокси

Вот лог хождения юзера через авторизацию на прокси

Код: Выделить всё

1255519218.553     81 192.168.0.1 TCP_MISS/200 47427 GET http://www.yandex.ru/ test DIRECT/93.158.134.3 text/html
1255519218.611     10 192.168.0.1 TCP_MISS/304 434 GET http://www.tns-counter.ru/V13a**8950867131254910824**yandex_ru/ru/CP1251/tmsec=yandex_main/0 test DIRECT/217.73.200.222 -
1255519218.620     13 192.168.0.1 TCP_MISS/302 492 GET http://yabs.yandex.ru/count/1xephaKcsyy40002ZhsaLwq4KPK2cm5fMeYkIXa3agD8PGcAgC8E1f6yq4ba1fE53OkgeM8fGNi5 test DIRECT/87.250.251.91 -
1255519218.628      5 192.168.0.1 TCP_MISS/304 242 GET http://yabs.yandex.ru/resource/iYmOD51oK7CoYsjZBn4FIw.png test DIRECT/87.250.251.91 -
1255519218.658      6 192.168.0.1 TCP_MISS/302 492 GET http://yabs.yandex.ru/count/1xephaKcsyy40002ZhsaLwq4KPK2cm5fMeYkIXa3agD8PGcAgC8E1f6yq4ba1fE53OkgeM8fGNi5 test DIRECT/87.250.251.91 -
1255519218.663     11 192.168.0.1 TCP_MISS/200 629 GET http://yabs.yandex.ru/count/1xephiXiI1840000ZhsaLwq4KP6yq4ba1fE53NW2=THaI8vK2cm5fMfAZI6K9Um40=CUqiDvK3cm9jL9
Aa5bu9e9Ek0Ny1 test DIRECT/87.250.251.91 -
1255519218.819      5 192.168.0.1 TCP_MISS/304 242 GET http://yabs.yandex.ru/resource/flashldr015.js test DIRECT/87.250.251.91 -
1255519218.824     13 192.168.0.1 TCP_MISS/304 343 GET http://suggest.yandex.ru/tsuggest-1.8.html test DIRECT/87.250.251.63 text/html
1255519218.859      6 192.168.0.1 TCP_MISS/302 540 GET http://yabs.yandex.ru/count/1xephfqKLQC40002ZhsaLwq4KPK3cm9jL8YgOb47agGMNWcAfxS91f6yq4ba1fE53OkgY40fGOoJhW6W
awu1UmO0 test DIRECT/87.250.251.91 -

Как видно юзер test отлично побежал по яндексу.

Если я убираю строку о ридеректоре, то юзеры с выделенными ip начинают нормально гулять, авторизация на прокси идет все ок, но вот беда те кто превысил трафик без редиректора не отрубаются на прокси.
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

http://sams.perm.ru/demo/main.php?username...1&EYea=2009

Оцените, защищенность sams
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

Вот и наступил 2010 год :cool: Наступил и для разработчиков самс, оказалось счетчик ограничен 2009 годом (вместо 2010 перекидывал на 2001, при этом выбора 2010 нет как такового), была экстренно выпущена версия 1.0.5 и уже обещана в январе версия 1.1.0
Но для тех кто не хочет пока обновляться до 1.0.5 (тем более в портах ее еще нет)
Вот такое решение:
Открываем mysqltools.php
Ищем строки

Код: Выделить всё

for($i=2001;$i<2010;$i++)

меняем на

Код: Выделить всё

for($i=$year-10;$i<$year+10;$i++)

Ну и собственно все :cool:
Ждем самс 2, обещают что то вкусное :cool:
И ждем планшетный компьютер от апл :cool:
Спасибо сказали:
Аватара пользователя
Dimas
Сообщения: 137
Статус: FreeBSD

Re: Squid+sams

Сообщение Dimas »

Разобрался с редиректором самс
Добавляется в конфиг самса вот так:

Код: Выделить всё

url_rewrite_program /usr/local/bin/samsredir
url_rewrite_children 15


Все забегало заработало корректно, как мне и хотелось. Превысившие лимит банятся.
P.S. Решил проблему давно, руки написать дошли только сейчас.
Спасибо сказали: