четверг, 1 августа 2013 г.

FreeBSD 9. Перенаправление трафика squid. Часть 4

Эта заметка является четвертой частью из цикла заметок о настройке сервера на FreeBSD 9.
Третья часть тут.
В этой заметке описана настройка программы squidGuard.
Тут, вполне ясно описана настройка прокси-сервера squid в FreeBSD 9, если же и этого становится мало, то на помощь придет squidGuard.
По сути, он является редиректором трафика и ограничителем по url'ам.
Где это может понадобиться?
Там, где нужно отгородить юзера от нежелательного контента.
Установка:
# cd /usr/ports/www/squidguard/
# make install clean

Настройка:
# ee /usr/local/etc/squid/squidGuard.conf

# путь к базе данных и логам
dbhome /var/db/squidGuard
logdir /var/log

# определение рабочего времени
time workhours { weekly mtwhfa 08:00 - 18:00 }

# адреса админа и юзеров в сети
source admins { ip 192.168.0.10 }
source users { ip 192.168.0.0/24 }

# подмена файлов своими (музыка и видео, с youtube например)
rewrite media {
        s@.*\.mp3$@http://192.168.0.10/replace/my.mp3@r
        s@.*\.avi$@http://192.168.0.10/replace/my.avi@r
        s@.*\.flv$@http://192.168.0.10/replace/my.flv@r
}

# БД "плохих" сайтов
dest badsites {
        domainlist badsites/domains
        urllist badsites/urls 
}

# работа правил для админа и юзеров
acl {                                                            
        admins { pass any }
        users within workhours {
                pass !badsites any
                redirect http://example.com
                rewrite media
        }
        else { pass none }
        default { pass none } 
}

Теперь нужно создать эту самую базу данных "плохих" сайтов:
# mkdir /var/db/squidGuard/badsites
# ee /var/db/squidGuard/badsites/urls
vk.com/mudakofffff
youtube.com/watch?v=kuhj-JLNJU9

# ee /var/db/squidGuard/badsites/domains
vk.com
odnoklassniki.ru
youtube.com  

Применение новых настроек squid и squidGuard:
# vi /usr/local/etc/squid/squid.conf
url_rewrite_program /usr/local/bin/squidGuard
url_rewrite_children 4

# chown -R squid:squid /var/db/squidGuard/badsites
# squidGuard -C all
# squid -k reconfigure

UPD: 06.08.2013
Часть 5 тут.

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