|
|
|
Расширяем функциональность Dansguardian.

Не так давно, пытаясь подключить в Dansguardian возможность обхода заблокированных страниц по паролю, наткнулся на очень интересную WIKI по DANSGUARDIAN, правда на английском, но всё-таки с её помощью я разрешил свою задачу :)
http://contentfilter.futuragts.com
У любого коммерческого фильтра, есть возможность просмотра заблокированного сайта, введя специальный пароль.
Конечно, такой фильтр как Dansguardian тоже имеет такую функцию, но к сожалению она не используется сразу.
Для чего это может быть полезно?
Например, когда Dansguardian по ошибке заблокировал материал, а он нужен прямо сейчас, а времени заходить на сервер и править конфиги нет. Или например, все видео-форматы заблокированы, а вам надо скачать например видео с экспериментом по физике.
Приведённый ниже материал является примером, того как можно задействовать такую функцию. Именно примером, так как всего лишь демонстрирует принцип, а используемый скрипт может содержать уязвимости.
Скрипт взят с WIKI http://contentfilter.futuragts.com , он присоединен к статье.
Итак приступим.
Скачаем два файла, прикреплённые к статье, и переименуем их в templates.html и passwords.cgi.
Теперь скопируем templates.html в /usr/share/dansguardian/languages/russian-1251, заменив оригинальный файл.
Отличие от оригинального заключается в добавленной форме html.
Скрипт passwords.cgi копируем в каталог для скриптов на веб-сервере, у меня по умолчанию /var/www/cgi-bin
Теперь в templates.html находим строку
FORM id="myform" action="http://192.168.4.1/cgi-bin/passwords.cgi" method="post"
и заменяем адрес расположения скрипта http://192.168.4.1/cgi-bin/passwords.cgi на свой.
Теперь откроем passwords.cgi
здесь задаем:
пароль
my %passwordlist = ( "ВАШ ПАРОЛЬ", "admin");
ключевую фразу
my $magic = 'ВАША ФРАЗА или ПРОСТО НАБОР СИМВОЛОВ';
адрес веб-страницы, которая будет выводиться при неправильном пароле
my $invalidurl = "АДРЕС СТРАНИЦЫ";
Пока все, переходим к настройке Dansguardian.
Открываем dansguardian.conf
Изменяем опции, как показано ниже:
reportinglevel=3
т. е. использовать HTML-шаблон для формирования страницы запрета.
language='russian-1251'
чтобы использовать наш измененный шаблон
Сохраняем.
Переходим к конфигурационному файлу соответствующей группы, по-умолчанию всего одна.
Открываем dansguardianf1.conf
Изменяем опции, как показано ниже:
bypass = -1
разрешаем работу с внешней программой для генерации ссылок для обхода фильтра.
bypasskey ='ВАША КЛЮЧЕВАЯ ФРАЗА'
вводим ключевую фразу, которую вводили в passwords.cgi
Сохраняем и закрываем.
Перезапускаем Dansguardian.
Пробуем зайти на отключенный Dansguardian ресурс, в появишемся окне вводим пароль, указанный в passwords.cgi и либо получаем доступ, либо попадем на страницу с сообщением о неверном пароле.
Конечно это только базовое применение, функциональность скрипта и такого подхода можно значительно расширить, добавив контроль над именами пользователей, и URL в скрипте.
Если что-то не работает проверьте права доступа на скрипт, он должен быть исполняемым, и принадлежать к группе и владельцу, под которыми работает сам веб-сервер.
CGI-скрипт написан на PERL, поэтому проверьте наличие соответствующих модулей для вашего веб-сервера.
И еще раз просмотрите соответствующие конфигурационные файлы.
Всем, кто читает мои материалы огромное СПАСИБО, за проявленный Вами интерес к ним.
| Прикрепленный файл | Размер |
|---|---|
| template.html_.txt | 2.79 кб |
| passwords.cgi_.txt | 1.17 кб |
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии


Последние комментарии
3 часа 56 минут назад
23 часа 33 минуты назад
4 дня 22 часа назад
5 дней 22 часа назад
6 дней 37 минут назад
2 недели 2 дня назад
2 недели 3 дня назад
2 недели 3 дня назад
2 недели 3 дня назад
3 недели 4 дня назад