Каталог статей
Приветствую Вас, Гость · Вход · RSS
Меню сайта


Категории раздела
FreeBSD [4]
Актуально для 7.1 RELEASE


Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Главная » Статьи » FreeBSD

Установка Packet Filter + Pftop + Expiretable

1. Установка Packet Filter


Необходимо собрать ядро с указанием следующих устройств

    options         ALTQ
    device          pf
    device          pflog
    device          pfsync



Затем добавляем необходимые строки в файл rc.conf

#ee /etc/rc.conf

    pf_enable="YES"                    # Enable PF (load module if required)
    pf_rules="/etc/pf.conf"            # rules definition file for pf
    pf_flags=""                             # additional flags for pfctl startup
    pflog_enable="YES"                # start pflogd(8)
    pflog_logfile="/var/log/pflog"   # where pflogd should store the logfile
    pflog_flags=""                        # additional flags for pflogd startup



Теперь немного информации, для работы с данным пакетным фильтром:

/etc/pf.conf            файл конфигурации

#pfctl-e             Запуск фильтра
#pfctl-d             Остановка фильтра

Работа с правилами:
#pfctl -f  /etc/pf.conf        загрузить pf.conf
#pfctl -nf /etc/pf.conf       анализировать файл, но не загружать
#pfctl -Nf /etc/pf.conf       загрузить только правила NAT из файла
#pfctl -Rf /etc/pf.conf       загрузить только правила фильтрации
#pfctl -sn                        показать текущие правила NAT  
#pfctl -sr                         показать текущие правила фильтрации
#pfctl -ss                         показать текущее состояние таблиц
#pfctl -si                          показать статистику правил и состояние счетчиков
#pfctl -sa                         показать все

Работа с таблицами:
#pfctl -t table -T show       показать содержимое таблицы где table - имя таблицы

Редактирование таблиц на лету:
#pfctl -t blockedips -T add     192.168.1.1    добавить в таблицу
#pfctl -t blockedips -T delete  192.168.1.1    удалить из таблицы


2. Установка Expiretable


Эта утилита, написанная Henrik Gustafsson, просматривает таблицу и удаляет (”истекшие”) записи старше указанного времени.

#cd /usr/ports/sysutils/expiretable
#make && make install clean



Теперь добавим это правило в основной crontab (etc/crontab)

#ee /etc/crontab

    */5    *    *    *    *    user    /usr/local/sbin/expiretable -t 3600 *table_name_here*

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


3. Установка Pftop


Для более удобного мониторинга работы фильтра можно воспользоваться программой pftop

#cd /usr/ports/sysutils/pftop
#make && make install clean



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

#pftop

Она работает аналогично встроенной программе "top" и отображает состояние в реальном времени



На этом все, PF установлен и готов к настройке фильтрации.
P.S. На форуме есть примеры рабочих конфигураций с описанием синтаксиса, пользуемся поиском.
Категория: FreeBSD | Добавил: sowl (07.07.2009)
Просмотров: 3838 | Рейтинг: 4.0/2 |
Всего комментариев: 0
Copyright Sowltech © Сайт управляется системой uCoz