пятница, 11 февраля 2011 г.

SBS на базе Ubuntu Server - настройка прокси-сервера Squid с DansGuardian и ClamAV

Следующий этап - учет и контроль использования Интернет (squid, dansguard, clamav)

Логинимся в установленную систему.
Локализация консоли

$ sudo apt-get update
$ sudo apt-get install console-cyrillic
$ cyr

Установка файлового менеджера Midnight Commander

$ sudo apt-get install mc

Установка и настройка ClamAV

$ sudo apt-get install clamav-daemon clamav-freshclam

Обновляем базы ClamAV
$ sudo freshclam

Конфигурационные файлы ClamAV находятся в папке /etc/clamav, но конфигурация, поставляемая с ClamAV вполне подходит для наших нужд. FreshClam будет обновлять вирусные сигнатуры один раз в час, но если вы хотите это изменить, то следует отредактировать следующий раздел в файле /etc/clamav/freshclam.conf:
# Check for new database 24 times a day<br>Checks 24

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

# Check for new database 24 times a day<br>Checks 48

Подобное изменение приведет к увеличению числа проверок вдвое. Нажмите Ctrl+X для выхода и нажмите Y, когда nano попросит "Сохранить измененный буфер (Save the Modified Buffer)". Если вы изменили конфигурацию FreshClam, запустите следующую команду чтобы убедиться в том, что изменения вступили в силу:
sudo /etc/init.d/clamav-freshclam restart

Если вы изменили конфигурацию FreshClam, запустите следующую команду чтобы убедиться в
том, что изменения вступили в силу:
$ sudo /etc/init.d/clamav-freshclam restart



Установка и настройка Squid

Для установки Squid запустите в терминале следующую команду:

sudo apt-get install squid

Конфигурация для Squid находится в файле /etc/squid/squid.conf. Для того, чтобы редактировать этот файл, наберите:

sudo nano /etc/squid/squid.conf



Нам не нужно сильно изменять настройки Squid, так как между ним и пользователями будет находится DansGuardian и направлять трафик на  нужный порт Squid'а. По умолчанию Squid использует порт 3128 Текущий порт можно проверить с помощью утилиты sockstat



sudo apt-get install sockstat

sudo sockstat |grep squid



Видим, что текущий порт, который слушает Squid 3128.

Если меняем что-либо в конфигурационном файле squid, то выполняем следующую команду, чтобы Squid перегрузил конфигурационный файл:
sudo service squid restart


Установка и настройка DansGuardian

Для установки DansGuardian запустите в терминале следующую команду:

sudo apt-get install dansguardian



Конфигурационные файлы DansGuardian находятся в папке
/etc/dansguardian



Обратите внимание на следующие строки в конфигурационном файле:
language = 'russian'

filterip = x.x.x.x

filterport = 8080

proxyip = 127.0.0.1

proxyport = 3128

#contentscanner = '/etc/dansguardian/contentscanners/clamav.conf'



Строка "language" определяет язык страницы с ошибкой, которую покажет DansGuardian при блокировке веб-содержимого, выбираем

language = 'russian-1251'

Затем  настройте шаблон отображаемой страницы:
sudo nano /etc/dansguardian/languages/russian-1251/template.html

Следуйте инструкциям, приведенным в файле template.html для того, чтобы указать название вашей компании и поменять текст сообщения под свои нужды.

В строках "filterip" и "filterport" указывается IP-адрес и порт прокси-сервера, соответственно. Установите значение параметра filterip равным IP-адресу вашего сервера в локальной сети, а filterport равным тому номеру порта, который вам нужен для вашего прокси; хорошее значение по-умолчанию - 8080.



Важно: если вы хотите иметь доступ к этому прокси через SSH, расположенный на этом же сервере, добавьте еще одну строку "filterip" и укажите в ней адрес 127.0.0.1 для того, чтобы убедиться в том, что DansGuardian будет также использовать localhost для ожидания запросов
на подключение.

Параметр "proxyip" указывает адрес прокси-сервера Squid, а параметр "proxyport" указывает порт, на котором он работает. Если вы следуете данной инструкции, оставьте значение этого параметра неизменным - 127.0.0.1, или, другими словами, адрес локальной машины. Аналогично, если для Squid вы использовали порт по-умолчанию, как предложено выше,
оставьте значение параметра proxyport равным 3128.

Файл /etc/dansguardian/dansguardian.conf уже содержит строку "contentscanner" в конце. Раскомментируйте ее, чтобы сообщить DansGuardian о необходимости использовать ClamAV для проверки запрошенных через HTTP файлов.

Для завершения настройки, закомментируйте или удалите следующую строку:

UNCONFIGURED - Please remove this line after configuration
Это необходимо для того, чтобы сообщить DansGuardian о том, что мы изменили конфигурацию по-умолчанию. Сохраните файл, а затем выполните команду:
sudo /etc/init.d/dansguardian restart



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

Мы подошли к точке, где вам необходимо сделать действия, указанные ниже, для того, чтобы обезопасить Squid и запретить пользователям работать в обход DansGuardian.
Примечание: не делайте эти шаги, если ваш пакетный фильтр уже настроен
и использует какие-либо другие правила! Эти шаги все спутают. Просто адаптируйте правила своего пакетного фильтра, приняв во внимание следующее:
sudo ufw default DENY
sudo ufw ALLOW 8080
sudo ufw enable
Благодаря этим правилам, вы будете уверены в том, что входящие соединения на порт, отличный от 8080 (порта, на котором работает DansGuardian), будут заблокированы (и пронырливые пользователи не смогут получить доступ к открытому прокси-серверу Squid на порту 3128).
Также вы можете просто заблокировать порт 3128 следующим образом:
sudo ufw DENY 3128
Но мне больше нравится первый способ, так как он делает систему безопаснее в целом.
Папка /etc/dansguardian/lists содержит все файлы, имеющие отношение к фильтрации содержимого страниц. Внимательно прочтите каждый из этих файлов для того, чтобы получить представление о том, как при помощи DansGuardian организовать ограничение трафика по скорости, а также о том, каким образом смягчить или усилить политики доступа, предлагаемые
DansGuardian по-умолчанию. Так как в связке с DansGuardian мы используем ClamAV, следует посмотреть содержимое папки /etc/dansguardian/lists/contentscanners, в которой находятся списки
исключений того, что не следует проверять при помощи этого антивируса.
По-умолчанию, в этих файлах уже указано несколько исключений, так что следует с ними ознакомится, для того, чтобы понять, подходят они вам или нет!

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



Комментариев нет:

Отправить комментарий