DansGuardian + ClamAV: фильтруем веб-содержимое и строим антивирусную защиту::Журнал СА 7.2005
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
О журнале
Журнал «БИТ»
Подписка
Где купить
Авторам
Рекламодателям
Магазин
Архив номеров
Вакансии
Контакты
   

ЭКСПЕРТНАЯ СЕССИЯ 2019


  Опросы

Какие курсы вы бы выбрали для себя?  

Очные
Онлайновые
Платные
Бесплатные
Я и так все знаю

 Читать далее...

1001 и 1 книга  
28.05.2019г.
Просмотров: 1296
Комментарии: 2
Анализ вредоносных программ

 Читать далее...

28.05.2019г.
Просмотров: 1407
Комментарии: 1
Микросервисы и контейнеры Docker

 Читать далее...

28.05.2019г.
Просмотров: 1083
Комментарии: 0
Django 2 в примерах

 Читать далее...

28.05.2019г.
Просмотров: 829
Комментарии: 0
Введение в анализ алгоритмов

 Читать далее...

27.03.2019г.
Просмотров: 1431
Комментарии: 0
Arduino Uno и Raspberry Pi 3: от схемотехники к интернету вещей

 Читать далее...

Друзья сайта  

Форум системных администраторов  

sysadmins.ru

 DansGuardian + ClamAV: фильтруем веб-содержимое и строим антивирусную защиту

Архив номеров / 2005 / Выпуск №7 (32) / DansGuardian + ClamAV: фильтруем веб-содержимое и строим антивирусную защиту

Рубрика: Безопасность /  Сетевая безопасность   | Дополнительные материалы

АНДРЕЙ АВРАМЕНКО

DansGuardian + ClamAV: фильтруем веб-содержимое и строим антивирусную защиту

Сегодня многие компании все больше внимания уделяют информационной безопасности. Для ее обеспечения, по данным исследования IDC, российские пользователи затратили почти 42$ млн. на специализированное программное обеспечение. Но существуют и бесплатные продукты, не уступающие коммерческим по функциональности.

Я думаю, ни для кого не секрет, что большая часть вирусов попадает на компьютеры локальной сети из Интернета. Конечно, проверку на вирусы можно проводить и на локальной машине, но централизованная фильтрация трафика гораздо проще в обслуживании и позволяет экономить ресурсы компьютеров локальной сети.

DansGuardian – фильтр веб-содержимого для ОС Linux, FreeBSD, OpenBSD, NetBSD, Mac OS X, HP-UX и Solaris, использует прокси-серверы squid или oops. Он фильтрует содержимое несколькими методами: по фразам, картинкам и URL. В отличие от некоторых других фильтров, он не использует «черный лист» URL, который надо постоянно обновлять (да и к тому же Интернет большой, все не перечислишь).

Проект постоянно дорабатывается, имеется коммерческая версия под названием SmoothGuardian. В ней есть несколько дополнительных возможностей: блокировка лицензионной музыки, удаление рекламы, многоязыковая поддержка фраз фильтрования, генерация стандартных отчетов, таких как самые популярные сайты, пользователи и сайты, заблокированные чаще всего, позволяет блокировать «по часам», т.е. блокировка происходит в определенное время, и другое.

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

Я устанавливал dansguardian на ОС Linux Alt Master 2.4:

  • Версия dansguardian – 2.8.0.3 (версия антивирусного патча 6.3.8).
  • Версия squid – 2.5.STABLE9.
  • Версия clamav – 0.86.1.
  • Версия libesmtp – 1.0.3r1.

Dansguardian не является редиректором (как, например, squidGuard), хотя многие первоначально думают именно так. Это прокси-сервер, и он использует squid как веб-браузер. Для того чтобы пользователи не использовали squid напрямую, необходимо в конфигурационном файле firewall указать перенаправление с порта squid на порт dansguardian. Либо установить dansguardian на порт 3128, а squid перенести на какой-либо другой, открыв доступ только с 127.0.0.1

Для начала установим СlamAV. Скачать его можно с официального сайта http://www.clamav.net.

./configure

make

make install

Конфигурирование clamav не займет много времени. Просто немного подредактируйте clamd.conf.

Dansguardian требует библиотеку libesmtp для отправки сообщений системному администратору. Скачать ее можно с http://www.stafford.uklinux.net/libesmtp.

Устанавливается просто:

./configure –-prefix=/usr

make

make install

Пропатчивать dansguardian для поддержки firewall не нужно, скачать его с поддержкой антивируса можно с http://www.harvest.com.br/asp/afn/dg.nsf.

./configure

--sysconfdir=/etc/dansguardian/

--cgidir=/var/www/cgi-bin/

--runas_usr=squid

--runas_grp=squid

make

make instal

Далее следует настроить dansguardian. Конфигурационный файл /etc/dansguardian/dansguardian.conf оснащен отличными комментариями, так что, я думаю, не будет затруднений в конфигурировании:

reportinglevel = 3

languagedir = '/etc/dansguardian/languages'

# К сожалению, русского языка в списке нет. Я сделал перевод и в ближайшее время отправлю автору.

# Вы можете скачать архив с сайта журнала http://www.samag.ru, раздел «Исходный код». Чтобы установить язык,

# необходимо разархивировать файл в папку /etc/dansguardian/languages и в конфигурационном файле указать: 

language = 'russian'

# Что записывать в лог

# 0 = none 1 = just denied     2 = all text based

# 3 = all requests

loglevel = 2

# Протоколировать, если страница была передана пользователю

logexceptionhits = on

# формат ведения лога

# 1 = DansGuardian format      2 = CSV-style format

# 3 = Squid Log File Format    4 = Tab delimited

logfileformat = 1

# Местонахождение лог-файла

loglocation = '/var/log/dansguardian/access.log'

# Сетевые опции

# IP-адрес, на котором слушает dansguardian

filterip =

filterport = 8080

# IP-адрес и порт прокси-сервера (squid или oops)

proxyip = 127.0.0.1

proxyport = 3128

# URL, на который произойдет переадресация при блокировке

accessdeniedaddress = 'http://YOURSERVER.YOURDOMAIN/cgi-bin/dansguardian.pl'

nonstandarddelimiter = on

# Заменять запрещенную картинку какой-нибудь своей

usecustombannedimage = 1

custombannedimagefile = '/etc/dansguardian/transparent1x1.gif'

# Создать фильтр для группы пользователей.

# Dansguardian будет автоматически смотреть в файл dansguardianfN.conf, где N – номер группы

filtergroups = 1

# Чтобы поставить пользователей в соответствие с группами, отредактируйте файл filtergrouplist

filtergroupslist = '/etc/dansguardian/filtergroupslistv

# Местоположение файлов аутентификации

bannediplist = '/etc/dansguardian/bannediplist'

exceptioniplist = '/etc/dansguardian/exceptioniplist'

banneduserlist = '/etc/dansguardian/banneduserlist'

exceptionuserlist = '/etc/dansguardian/exceptionuserlist'

# Записывать в лог найденные причины блокировки.

showweightedfound = on

# 0 = off  – не использовать

# 1 = on, normal – использовать в стандартном режиме

# 2 = on, singular – записывать каждый аргумент, но только один раз для страницы

weightedphrasemode = 2

urlcachenumber = 2000

urlcacheage = 900

# Фильтрация содержимого по фразам

# 0 – фильтрация html вместе с мета-тэгами

# 1 - удаление многочисленных  пробелов и html-тэгов перед фильтрацией

# 2 – оба метода

phrasefiltermode = 2

preservecase = 0

# Перекодировка в hex для фильтрования документов с различными кодировками

hexdecodecontent = 0

# Использовать алгоритм «Quick Search», в отличие от алгоритма DFA. Алгоритм DFA позволяет работать быстрее,

# но его текущая версия не совсем совместима с 16-битными символами. Если вы хотите использовать 16-битные символы,

# включите эту опцию.

forcequicksearch = 0

reverseaddresslookups = off

reverseclientiplookups = off

# Создавать файлы bannedsitelist и bannedurllist со списком запрещенных сайтов и URL

createlistcachefiles = on

# Максимальный размер передаваемого от клиента файла в байтах

# 0 – блокировать

# -1 – не блокировать или размер файла

maxuploadsize = -1

maxcontentfiltersize = 256

# Методы аутентификации пользователя на прокси-сервере

usernameidmethodproxyauth = on

# **На данный момент не работает**

usernameidmethodntlm = off

usernameidmethodident = off

preemptivebanning = on

# Добавлять заголовки X-Forwarded-For: <IP-адрес клиента>

forwardedfor = off

usexforwardedfor = off

logconnectionhandlingerrors = on

# Опции дочерних процессов

# Максимальное количество процессов

maxchildren = 120

# Первоначальное количество процессов

minchildren = 8

# Количество процессов, которые должны быть готовы к соединению

minsparechildren = 4

preforkchildren = 6

# Максимальное количество бездействующих процессов

maxsparechildren = 32

# Максимальное количество сайтов, обработанных процессом

maxagechildren = 500

# Опции коммуникации между процессами

ipcfilename = '/tmp/.dguardianipc'

urlipcfilename = '/tmp/.dguardianurlipc'

# PID filename

pidfilename = '/var/run/dansguardian.pid'

nodaemon = off

nologger = off

# Пользователь и группа, с чьими правами запускается dansguardian

daemonuser = 'squid'

daemongroup = 'squid'

softrestart = off

# Антивирусные настройки

# --------------------

# Включить проверку на вирусы

virusscan = on

# Способ проверки clamdscan, clamav или kav

virusengine = 'clamav'

# Максимальное количество информации, переданной  клиенту, если файл содержит вирус

tricklelength = 32768

firsttrickledelay = 30

followingtrickledelay = 60

# Список типов MIME, не проверяемых на вирусы

exceptionvirusmimetypelist = '/etc/dansguardian/exceptionvirusmimetypelist'

# Максимальный размер содержимого для проверки,

# если 0 – не ограничено

maxcontentscansize = 0

# Файлы с определенными расширениями не будут проверяться

exceptionvirusextensionlist = '/etc/dansguardian/exceptionvirusextensionlist'

# Временная директория, в которую сохраняется файл для проверки

downloaddir = '/tmp/dgvirus'

# В директории /etc/dansguardian содержатся несколько файлов, в которых можно вписывать исключения,

# т.е. информация с данных сайтов, url, ip или по запросам данных пользователей не будет фильтроваться.

virusscanexceptions = on

urlcachecleanonly = on

virusscannertimeout = 60

# Использование почтового оповещения

notify = 0

# Настройки CLAMDSCAN

# --------------------

# Сокет демона clamd (указывается в clamd.conf)

localsocket = '/tmp/clamd'

# Настройки CLAMAV

# --------------------

clmaxfiles = 1500

clmaxreclevel = 3

clmaxfilesize = 10485760

Конфигурационный файл squid менять не будем. Будем считать, что squid настроен и нормально функционирует, за исключением того случая, если вы хотите установить Dansguardian на порт 3128. Тогда необходимо изменить порт в конфигурационном файле squid.

Теперь необходимо настроить firewall на перенаправление. В Linux это делается примерно так:

iptables -t nat -A PREROUTING --dst x.x.x.x -p tcp --dport 3128 -j DNAT --to-destination x.x.x.x:8080

x.x.x.x поменяйте на IP интерфейса, который смотрит в сторону локальной сети.

Ну вот и все. Теперь при скачивании файла, содержащего вирус, у вас в этом файле появится сообщение о вирусе. Конечно, не очень удобно, но зато безопасно. Лучшим вариантом теперь, наверное, будет не сохранять файлы на диск, а сразу открывать, тогда не будет недоразумений.

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

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

В целом у меня о программе сложилось хорошее впечатление. Простая в установке, несложная в настройке, она имеет достаточно обширные возможности. Хотелось бы, чтобы данный проект и дальше развивался, позволяя системным администраторам защищать локальную сеть от нежелательных данных.

Ссылки:

  1. Введение в dansguardian и руководство по детальной инсталляции dansguardian: www.dansguardian.org.
  2. Информация о продукте SmoothGuardian: www.smoothwall.net.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru