Настройка файрвола IPFW.
1. Создаем файл конфигурации:
>> touch /etc/ipfw.conf
2. Включаем автозапуск сервера IPFW, добавляем в файл /etc/rc.conf:
>> echo firewall_enable="YES" >> /etc/rc.conf
>> echo firewall_script="/etc/ipfw.conf" >> /etc/rc.conf
3.Прописываем настройки в файле /etc/ipfw.conf:
#########################
# FreeBSD firewall script
#########################
ipfw -q -f flush # Сброс всех правил.
# Установки по умолчанию
cmd="ipfw -q add" # префикс для создания правил
#################################################################
# Нет ограничений на интерфейсе Loopback
#################################################################
$cmd 00010 allow all from any to any via lo0
#################################################################
# Разрешить пакет, если он был ранее добавлен в "динамическую"
# таблицу при помощи выражения allow keep-state
#################################################################
$cmd 00015 check-state
#################################################################
# Правила для входящего и исходящего трафика на внешнем
# интерфейсе.
#################################################################
# Запрещаем весь входящий трафик с не маршрутизируемых сетей
$cmd 00100 deny all from 127.0.0.0/8 to any in via re1 #loopback
$cmd 00101 deny all from 0.0.0.0/8 to any in via re1 #loopback
# Разрешить трафик DNS
$cmd 00210 allow tcp from any to 192.168.0.1 53 out via re1 setup keep-state # исходящий
$cmd 00211 allow udp from any to 192.168.0.1 53 out via re1 keep-state # исходящий
# Разрешить трафик NTP
$cmd 00220 allow udp from any to any 123 out via re1 keep-state # исходящий
#$cmd 00221 allow udp from any to me 123 in via re1 keep-state # входящий
# Разрешаем трафик ICMP
$cmd 00230 allow icmp from any to any out via re1 keep-state # исходящий
$cmd 00231 allow icmp from any to me in via re1 keep-state # входящий
# Разрешаем трафик SSH
$cmd 00240 allow tcp from any to any 22 out via re1 setup keep-state # исходящий
$cmd 00241 allow tcp from any to me 22 in via re1 setup limit src-addr 2 # входящий (лимит)
# Разрешаем трафик для 'root' (make install & CVSUP)
$cmd 00300 allow tcp from me to any out via re1 setup keep-state uid root # исходящий
# Запрещаем и заносим в журнал остальной трафик.
$cmd 00890 deny log all from any to any out via re1
$cmd 00891 deny log all from any to any in via re1
# Запрещаем и заносим в журнал все пакеты для дальнейшего анализа
$cmd 00999 deny log all from any to any
Команды сервиса
• Запуск, перезагрузка, остановка службы
>> /etc/rc.d/ipfw start / restart / stop