Автор Тема: Контент фильтрация. Linux. Squid+Dansguardian  (Прочитано 73578 раз)

Оффлайн Andrei

  • Давно тут
  • **
  • Сообщений: 26
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #30 : 23.03.2010 00:04:01 »
поиск по форуму "dansguardian" и "dansguard" почему-то у меня вообще скудный выходил

обязательно выложу, как попровлю всё, завтра уезжаю на некую конференцию по поводу продления виндовых лицензий из коробки первой помощи, а в среду попрбую доделать

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 976
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #31 : 28.03.2010 15:22:03 »
Мини-мини отчет по установке Dansguardian (лайт 5.0)

Установка пакета проходит без проблем через synaptic или apt-get

Проблема 1 : Не узнать статус - пишет "/etc/init.d/dansguardian: line 76:    dansguardian: command not found"
В скрипте старта ошибка
/etc/init.d/dansguardian
надо удалить пробелы на 76 строке, т.е. она должна быть такой - а то статус не поглядеть
    "$PROCESSNAME" -s

Проблема 2: Не стартует Ж)

 /etc/init.d/dansguardian start
Starting dansguardian service: Error binding server socket: [8080] (Address already in use)
Exiting with error

По netstat -lpn узнал что на порту висит
tcp        0      0 0.0.0.0:8080                0.0.0.0:*                   LISTEN      7571/guile18

Это центр управленяи системой.
Я вообще не знал что такое в альте есть :)

Ну пришлось подправить конфиг
mcedit /etc/dansguardian/dansguardian.conf
и прописать
filterport = 88
Он был свободен - вполне красивая цифирка.
Ну и лог разрешил - чтоб если что понаблюдать.
filterip =
Оставил пустым - пусть слушает в том числе и из  внешнего мира.

Браузер естественно теперь через 127.0.0.1:88 ходит
Для проверки ввел первый попавшийся из блек листов http://adsmart.ru/
Оно работает :)

Для того чтобы стартовал при загрузке пропишем
/sbin/chkconfig --level 345  dansguardian on

Пока на более серьезные разборки времени нет.
Еще с СКФ не все понятно...

« Последнее редактирование: 28.03.2010 16:07:52 от YYY »

Оффлайн Andrei

  • Давно тут
  • **
  • Сообщений: 26
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #32 : 30.03.2010 12:38:00 »
да, совершенно согласен, там столько тонокстей и нюансов, что и я постепенно стал забивать на это. Сейчас кое как вспоминаю что делаю и пытаюсь записывать это в файлик, чтобы потом накотать мини мануальчик, но столько мелочей....

и с фильтраций русских плохих слов я так и не пришёл к однозначному выводу - то фильтрует, то не фильтрует, может есть нюансы в содержании их на самих страницах, от веба я далёк, потому не понимаю, почему "василий" у мена на стене контакта не блокируется, а в яндексе блокируется. (это когда представляешь русское слово в веб кодировке)

так как дансгвардиан передаёт всё сквиду все подключения от своего имени (127.0.0.1), резать канал сквидом и блокировать загрузку больших файлов не получится (если я хочу посадить всю школу на дансгвардиан, а учителей внести в список нефильтруемых), а дансгвард или не умеет это делать или я пока не нашёл это =)
Есть вариант посадить учителей на порт сквида а не дансгвадра (на 3128), но тогда надо будет в сквиде добавить IP учителей в список подключаемых (иначе ученики могут порт в браузере поменять на 3128 и мимо фильтрации ходить, сейчас сквид пренимает только от локалхоста) и статистика посещаемости будет разная для учителей и учеников (учитель - через сквид ходит в инет, ученик - через дансгвардиан), а я хочу всё вместе.


И вопрос немного по другой теме:  Статистику я снимаю с дансгвариана Lightsquid'ом и порой в списке сайтов вижу запрещённые, подозреваю, что он пишет туда ЗАПРОСНЫЕ сайты, а не посещённые, я правльно думаю или нет? кто подскажет?   В противном случае я не понимаю как народ заходит туда (в чём очень сомневаюсь).

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 976
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #33 : 30.03.2010 13:03:21 »
и с фильтраций русских плохих слов я так и не пришёл к однозначному выводу - то фильтрует, то не фильтрует, может есть нюансы в содержании их на самих страницах, от веба я далёк, потому не понимаю, почему "василий" у мена на стене контакта не блокируется, а в яндексе блокируется. (это когда представляешь русское слово в веб кодировке)
А что такое стена контакта?
Может там кодировки разные?
В яндексе UTF-8

так как дансгвардиан передаёт всё сквиду все подключения от своего имени (127.0.0.1), резать канал сквидом и блокировать загрузку больших файлов не получится (если я хочу посадить всю школу на дансгвардиан, а учителей внести в список нефильтруемых), а дансгвард или не умеет это делать или я пока не нашёл это =)
Есть вариант посадить учителей на порт сквида а не дансгвадра (на 3128), но тогда надо будет в сквиде добавить IP учителей в список подключаемых (иначе ученики могут порт в браузере поменять на 3128 и мимо фильтрации ходить, сейчас сквид пренимает только от локалхоста) и статистика посещаемости будет разная для учителей и учеников (учитель - через сквид ходит в инет, ученик - через дансгвардиан), а я хочу всё вместе.
А если поменять их местами ?
Т.е. Браузер->Сквид->ДансГвард->Интернет.
Если ДансГвард не работает отдельно а ему обязательно нужен родительский-прокси. То
по другому Т.е. Браузер->Сквид->ДансГвард->ЕщеОдинПрокси->Интернет.
В качестве ЕщеОдинПрокси можно havp (http://sisyphus.ru/ru/srpm/havp)
Таким образом если еще трафик на вирусы не сканируется, то будет. Если сканируется на ДансГварде или на Сквиде то с них убрать.

И вопрос немного по другой теме:  Статистику я снимаю с дансгвариана Lightsquid'ом и порой в списке сайтов вижу запрещённые, подозреваю, что он пишет туда ЗАПРОСНЫЕ сайты, а не посещённые, я правльно думаю или нет? кто подскажет?   В противном случае я не понимаю как народ заходит туда (в чём очень сомневаюсь).
Думаю если на сквиде запрещенные файлы проскакивают - если да, то ДансГуард их пропустил, если нет - то не пустил.

ЗЫ: кстати по теме еще одна дока по русски http://ubuntueasy.com/node/365
« Последнее редактирование: 30.03.2010 13:06:30 от YYY »

Оффлайн Andrei

  • Давно тут
  • **
  • Сообщений: 26
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #34 : 30.03.2010 13:17:07 »
так вроде дансгвардиан не может как прокся работать, поэтому ей нужен прокся    пользователь -> Dansguardian -> squid

с несколькими проксями вариант, но очень не хочется плодить, обе пркси на 1 машине? оба сквида?

нсчёт кодировки страниц вконтакте, интересное вариант, не подумал, тогда как-то надо делать несколько списков файлов с разными кодировками для русских страниц, меня это не утешает =)

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

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 976
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #35 : 30.03.2010 13:28:52 »
так вроде дансгвардиан не может как прокся работать, поэтому ей нужен прокся    пользователь -> Dansguardian -> squid
Сейчас проверить не могу. Хотя да на страничке сказано что
Technically DansGuardian is more of a filtering pass-through than a true proxy
Видимо без родительского прокси работать не будет
Ну тогда Браузер->Сквид->ДансГвард->ЕщеОдинПрокси->Интернет
Можно Сквид, ДансГуард и ЕщеОдинПрокси держать на одной машине.
Что выбрать в качестве ЕщеОдинПрокси я не знаю.
Можно и 2 сквида (http://www.opennet.ru/openforum/vsluhforumID12/3772.html)
А можно что-нибудь другое.

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 976
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #36 : 30.03.2010 13:45:55 »
Кстати.

  forwardedfor = off
  usexforwardedfor = off
опции необходимы, если вы хотите чтобы в логах сквида отображался IP адрес клиента, вместо 127.0.0.1
Это отсюда (http://wiki.sys-adm.org.ua/www/dg_clamav_acl)

Оффлайн batva

  • Завсегдатай
  • *
  • Сообщений: 75
    • Email
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #37 : 30.03.2010 14:41:15 »
У меня связка прозрачный squid + dansguardyan. Внес IP учителей и администрации в в файл exceptioniplist (эти IP dansguardian не фильтрует), и про русские слова: файл /badwords/weighted_russian в данном файле прописываются все нехорошие русские слова и если они встречаются, то страница блокируется. Но нужно чтоб путь к данному файлу был прописан в файле exceptionpharasetlist

Оффлайн Andrei

  • Давно тут
  • **
  • Сообщений: 26
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #38 : 31.03.2010 11:06:33 »
У меня связка прозрачный squid + dansguardyan. Внес IP учителей и администрации в в файл exceptioniplist (эти IP dansguardian не фильтрует), и про русские слова: файл /badwords/weighted_russian в данном файле прописываются все нехорошие русские слова и если они встречаются, то страница блокируется. Но нужно чтоб путь к данному файлу был прописан в файле exceptionpharasetlist

вы совершенно правы, но есть загвостка, по крайней мере у меня. Прописные там слова дансгвард не воспринимает почему-то, а если и воспринимает, то в единице из тысячи, может у меня где-то настройки не так стоят и я грешу на кодировку. Прописав там слова в виде "ящик" - %D1%8F%D1%89%D0%B8%D0%BA он стал блокировать некоторые страницы содержищие сие слово, почему некоторые? видимо других опять же что-то с кодировкой, другая или ещё какие нюансы, я пока не разбирался.

Кстати.

  forwardedfor = off
  usexforwardedfor = off
опции необходимы, если вы хотите чтобы в логах сквида отображался IP адрес клиента, вместо 127.0.0.1
Это отсюда (http://wiki.sys-adm.org.ua/www/dg_clamav_acl)

я поступил несколько иначе. В конфиг файле дансгвардиана есть параметр отвечающий за формат логфайла, выбираем формат лога сквида и в Lightsquid'e в конфиг файле меняем путь к логфайлу (указываем адрес лога дансгвардиана) и вс хорошо работает.

# Log File Format
# 1 = DansGuardian format (space delimited)
# 2 = CSV-style format
# 3 = Squid Log File Format
# 4 = Tab delimited
logfileformat = 3


Оффлайн Andrei

  • Давно тут
  • **
  • Сообщений: 26
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #39 : 31.03.2010 11:31:39 »
to YYY

по ссылке http://ubuntueasy.com/node/365, котрыую вы дали, есть слова

"Папка /etc/dansguardian/lists содержит все файлы, имеющие отношение к
фильтрации содержимого страниц. Внимательно прочтите каждый из этих
файлов для того, чтобы получить представление о том, как при помощи
DansGuardian организовать ограничение трафика по скорости,..."

интересует "как при помощи DansGuardian организовать ограничение трафика по скорости"
я не нашёл там ничего похожего, поисковики тоже не очень хотят мне помочь

может вы можете пролить свет в этом вопросе?

Оффлайн YYY

  • Мастер
  • ***
  • Сообщений: 5 976
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #40 : 31.03.2010 12:32:55 »
я поступил несколько иначе
Я не совсем про то...
Проверить сейчас не могу, но
++++
# if on it adds an X-Forwarded-For: <clientip> to the HTTP request
# header.  This may help solve some problem sites that need to know the
# source ip. on | off
forwardedfor = off
# if on it uses the X-Forwarded-For: <clientip> to determine the client
# IP. This is for when you have squid between the clients and DansGuardian.
# Warning - headers are easily spoofed. on | off
usexforwardedfor = off
+++++
получается если то и то включить - сквид по идее сможет определить с какого IP
соединялся клиент. Т.е. можно "резать канал сквидом и блокировать загрузку больших файлов не получится"
« Последнее редактирование: 31.03.2010 12:39:33 от YYY »

Оффлайн Andrei

  • Давно тут
  • **
  • Сообщений: 26
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #41 : 31.03.2010 12:54:37 »

получается если то и то включить - сквид по идее сможет определить с какого IP
соединялся клиент. Т.е. можно "резать канал сквидом и блокировать загрузку больших файлов не получится"


да, у меня такие мысли появились, когда прочитал эти слова по одному из ваших линков
" ....На самом деле авторизация будет проходить на сквиде, а не на DG. Поэтому если у вас сквид не настроен, то работать DG не будет..... " по линку http://wiki.sys-adm.org.ua/www/dg_clamav_acl

значит пользователь идёт на порт дансгварда, оттуда кидается на сквид, проходит авторизацию, потом опять на дансгвард проходить фильтрацию и потом выдаётся порция интернета пользователю....может конечно ещё есть пару шагов, котрые не видно.  Это не может не радовать, потому что смогу резать сквидом всё что хочу, но надо разбираться..... чем дальше в лес - тем толще линукс.

Оффлайн batva

  • Завсегдатай
  • *
  • Сообщений: 75
    • Email
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #42 : 01.04.2010 15:12:04 »
Цитировать
вы совершенно правы, но есть загвостка, по крайней мере у меня. Прописные там слова дансгвард не воспринимает почему-то, а если и воспринимает, то в единице из тысячи, может у меня где-то настройки не так стоят и я грешу на кодировку. Прописав там слова в виде "ящик" - %D1%8F%D1%89%D0%B8%D0%BA он стал блокировать некоторые страницы содержищие сие слово, почему некоторые? видимо других опять же что-то с кодировкой, другая или ещё какие нюансы, я пока не разбирался.
все блокируется но необходимо прописать данные слова в 3-х кодировках.
1. UTF8
2. CP1251
3. KOI8-R
Если вы прописывали в линуксе то там указали только в 1-й группе в кодировке UTF, а нужно эти же слова прописать в данном файле ниже в других кодировках. Там в файле они понятно  где. И тогда даже если слово встречается в конце страницы, то вся страница блокируется.
Например у меня прописаны слова типа: экстремизм, террор и т.д.
И все страницы даже онлайн словари, где просто описание данных терминов тоже блокируются.

Оффлайн Andrei

  • Давно тут
  • **
  • Сообщений: 26
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #43 : 01.04.2010 18:37:14 »
Огромное спасибо, что в конце концов внесли ясность, почему у меня блокируется выборочно, теперь я всё понял =)
 
а не поделитесь самим файликом фраз русским? я его изучу досканально =)

Оффлайн batva

  • Завсегдатай
  • *
  • Сообщений: 75
    • Email
Re: Контент фильтрация. Linux. Squid+Dansguardian
« Ответ #44 : 03.04.2010 13:43:35 »
Тут 2 файла. weighted_russian и weighted_russian2
В файле weighted_russian прописаны слова в трех кодировках, которые необходимы, но т.к. слов много то Dansguardian не запускался. Я закомментировал все слова в кодировке KOI8-R, и перенес все слова в кодировке KOI8-R в другой файл weighted_russian2. И все работает. Только нужно прописать эти файлы. И не забываем перезапустить Dansguardian.
Если что то блокируется, что надо, то либо убираете слова из файлов (они во всех кодировках по порядку), либо дополнительно составляете белый список сайтов. И сайты из белого списка фильтроваться не будут.