1

Тема: Dansguardian+ClamAV+Squid

Хочу на фре (шлюзе) сделать такую связку, чтобы фильтровать веб контент на порно и вирусы.
Делал по одной инструкции некоего geekOOL. В результате комп в локалке (он один) не может выйти в инет. Если я на 192.168.20.2 пытаюсь загрузить страничку, на фре (vr0 сетевая плата имеет внешний адрес интернет провайдера, vr1 плата имеет внутренний адрес 192.168.20.1) в консоли появляется сообщение что

myroom kernel: arp: 192.168.20.2 is on vr1 but got reply from 00:19:66:0f:be:a0 on vr0

и интернета нет в локалке (на фре есть).

Делал так. Собрал ядро с такими параметрами

options UFS_ACL
options MAC
options AUDIT
options DEVICE_POLLING
options HZ=1000
options MAXDSIZ="(1380*1024*1024)"
options DFLDSIZ="(1380*1024*1024)"
options MAXSSIZ="(1024*1024*1024)"
options ALTQ
options ALTQ_CBQ
options ALTQ_RED
options ALTQ_RIO
options ALTQ_HFSC
options ALTQ_PRIQ
options ALTQ_NOPCC
device pf
device pflog
device pfsync

В конфиге сквида разрешил 192.168.20.2

acl internetusers src 192.168.20.2
http_access allow internetusers

В rc.conf

squid_enable="YES"
clamav_clamd_enable="YES"
clamav_freshclam_enable="YES"
dansguardian_enable="YES"
firewall_enable="YES"
firewall_type="OPEN"

Подскажите как настроить такую связку. И как мне следует понимать сообщение что 192.168.20.2 находится на vr1 если на vr1 у меня 192.168.20.1 (шлюз для 192.168.20.2)?

2

Re: Dansguardian+ClamAV+Squid

Похоже, проблема была в pf - он у меня вообще не работал, не было правил никаких. Добавив правила для nat

nat on $ext_if tag LAN_INET_NAT_TCP_UDP tagged LAN_INET_TCP_UDP -> $ext_if:0
   nat on $ext_if tag LAN_INET_NAT_ICMP tagged LAN_INET_ICMP -> $ext_if:0

интернет в локалке появился. Правда приходится вручную вводить прокси в настройках браузера.
Чтобы сделать прозрачно в настройках сквида написал

httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

В настройках pf добавил

rdr on $int_if inet proto tcp from any to $lan port 80 -> 127.0.0.1 port 8080

В результате прозрачного прокси так и нет. Более того получаю сообщение при загрузке фри для каждой строки в конфиге сквида, которые я добавил, что они типа unrecognized. Скажите почему unrecognized и как быть с прозрачным прокси?

3

Re: Dansguardian+ClamAV+Squid

вообще-то редериктить на проксю надо если вы из лана идете куда угодно на 80 порт. А у вас наоборот все.

4

Re: Dansguardian+ClamAV+Squid

Спасибо. Действительно так. Теперь все работает хорошо. Антивирус сканирует, дансгардиан тоже. Единственное что напрягает - это тормознутость прокрутки в браузере. Т.е. когда например страница загрузится, если пользоваться прокруткой справа или колесиком мыши, то страница прокручивается с задержками/ скачками (медленно) словно плывет. Вы не знаете с чем это может быть связано?

5 (24-02-2009 12:35:18 отредактировано fred)

Re: Dansguardian+ClamAV+Squid

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

Думаю что скорее это связано с компом непосредственно (он бу к тому же видеопамять встроенная). Возможно.:rolleyes:
Интересно, что если на странице есть фрейм (т.е. как бы еще одно окно с прокруткой), то в этом окне прокрутка работает без промедлений. Ну это уже наверно другая тема. С фильтровой связкой разобрался более-менее. Всем спасибо.

P.S. насчет сквида... Походу настройки для прозрачного прокси типа httpd_accel бла бла - нахрен не нужны. Это какая то ересь или артыфакты прошлого, которые теперь не работают. Теперь достаточно просто указывать что http_port 3128 transparent и все.

6

Re: Dansguardian+ClamAV+Squid

может надо прописывать в кодировки консоли, наверное koi8-r.

7

Re: Dansguardian+ClamAV+Squid

Ыыыыы... а чем списки плохих доменов неугодили? вот тут хорошая база http://www.squidguard.org/blacklists.html smile
А насчет тормознутости незнаю, у меня летает... правдо нету антивируса... думаю он ненужен. На компах клиентов есть...

8

Re: Dansguardian+ClamAV+Squid

Ну, домены исчезают и появляются новые -  за всеми не уследишь имхо. А слова как были так и остануться, по-моему блокировать по словам надежнее/практичнее. Попробую насчет кодировки...

9

Re: Dansguardian+ClamAV+Squid

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

например вот http://www.malwaredomains.com/
подымаете у себя зеркало, синхронизируете переодичиски и сверяетесь с ним... Чего еще надо для полного счастья?

10

Re: Dansguardian+ClamAV+Squid

на закуску, для тех кому вобще лень что-то настраивать http://www.opendns.com/

11 (26-02-2009 16:22:20 отредактировано fred)

Re: Dansguardian+ClamAV+Squid

Не, мне не лень я понастраиваю... smile Вот, например, закачал блэклисты. В дансгардиан конфиги блокировки разделены по нескольким категориям -
bannedphraselist
weightedphraselist
bannedsitelist
greysitelist
bannedurllist
greyurllist
bannedregexpurllist
bannedextensionlist
bannedmimetypelist
picsfile
contentregexplist

Но ссылка на блэклисты есть только у bannedsitelist. Т.е. можно дополнительно блокировать по доменам в блэклистах с помощью строк например

.Include</etc/dansguardian/blacklists/ads/domains>
.Include</etc/dansguardian/blacklists/adult/domains>

(это путь к файлам для убунту, а не для фри, если что). А как быть с остальными блэклистами? Ведь в них есь еще expressions и urls. Их можно прикрутить к dansguardian? Насколько понимаю блэклисты (изначально для сквида), прикручиваются с помощью squidGuard. SquidGuard еще из списков делает базы данных, что убыстрит фильтрацию и понизит нагрузку. Т.е. без сквидгада не обойтись? Не будет ли это слишком наворочено дансгардиан+клам+сквид+сквидгад? Как быть?
Или насчет зеркала...

подымаете у себя зеркало, синхронизируете переодичиски и сверяетесь с ним...

Звучит хорошо. Можно чуть подробнее насчет подымаете и синхронизируете? И еще в антиспаме особой необходимости нет, нужен исключительно тырнет, т.е. поменьше рекламы, порно и левых сайтов.

P.S. Насчет блокировки по словам... Пока не совсем разобрался. Хотя стало намного лучше, когда вместо скрипта dansguardian.pl указал чтобы блокирующее сообщение выводилось в виде template.html в koi8-r. Но все-таки отдельные сайты "проскакивают" (в utf8 или кирилица-windows). Вот еще пример erokrasotki.net Скажите, кто может заблокировать его по взвешенным фразам дансгардиана?

12

Re: Dansguardian+ClamAV+Squid

Именно по этому я в свое время и отказался от Dansguardian и перешел на squidGuard, мне он както более простой и гибкий в использовании. С ним все придельно просто, прописываем его как програмы для отбрасывания

#  TAG: redirect_program
#       Specify the location of the executable for the URL redirector.
#       Since they can perform almost any function there isn't one included.
#       See the FAQ (section 15) for information on how to write one.
#       By default, a redirector is not used.
#
#Default:
# none
redirect_program /usr/local/bin/squidGuard

и правим конфиг squidGuard.conf:

говорим где база данных

dbhome /usr/local/etc/squid/db/squidGuard
logdir /usr/local/squid/logs

Описываем сети в которых действует ограничения

source s_limit {
    ip 10.0.0.0/23
}

По такому принципу описываем базы

dest porn {
    domainlist porn/domains
    urllist porn/urls
    expressionlist porn/expressions
    redirect http://10.0.0.10/px.gif
}

А по такому кому какие ACL

acl {
    s_limit {
        pass     !porn any
    }
    default {
        pass     none
    redirect http://10.0.0.10/px.gif
    }
}

Базы после обновления (просто правки текстовых файлов) надо пересобрать. У меня для этого вот такой скриптик
rebuild_base.sh

#!/bin/sh
/usr/local/bin/squidGuard -C all
chown -R squid /usr/local/etc/squid/db/squidGuard
/usr/bin/killall -HUP squid

А по поводу зеркала на malwaredomains подробно описано, я не вникал, но недумаю что там особо сложно... Просто вы локально подымаете BIND, который по сути является слайвом для malwaredomains (переодически синхронизируется). Конечто можно и не подымать, а использовать удаленный, но с локального в разы бустрее, к томуже если много клиентов вас там быстро заблокируют.

13

Re: Dansguardian+ClamAV+Squid

Все-таки практика показала (у меня smile), что процент блокирования нежелательных страниц у dansguardian больше, чем с редиректором по черным спискам. Блокирование по взвешенным фразам - большой плюс этого фильтра. Именно об этой возможности хотелось бы узнать больше. Поэтому если кто сталкивался или работает с dansguardian, посоветуйте каким образом можно заблокировать конкретный сайт (тот что выше в посте) именно на основе взвешанных фраз. Я включил в конфиг 3 файла с одинаковым содержанием и с 3 разными кодировками (cp1251, utf-8, koi8-r) но пока безрезультатно. Вот его содержание.
[ удалено администратором ]

14

Re: Dansguardian+ClamAV+Squid

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