IPFW в FreeBSD — базовая настройка

Itnull

Команда форума
Администратор
Регистрация
22.05.13
Сообщения
27.890
Реакции
12.481
Веб-сайт
itnull.me

IPFW в FreeBSD — базовая настройка​

IPFW (IP Firewall) — встроенный брандмауэр в FreeBSD. Он работает по принципу правил с номерами, которые проверяются по порядку сверху вниз. Первое совпавшее правило применяется.

1. Включение IPFW​

Отредактируйте /etc/rc.conf:
firewall_enable="YES"
firewall_type="workstation"
После этого перезапустите:
service ipfw start
или просто перезагрузите систему.

2. Проверка текущих правил​

ipfw list
или
ipfw show
Пример вывода:
00100 allow ip from any to any via lo0
65535 deny ip from any to any

3. Очистить правила​

ipfw -q flush
Опция -q отключает лишний вывод.

4. Простая базовая конфигурация firewall​

Минимальный безопасный набор:
ipfw -q flush

ipfw add 100 allow all from any to any via lo0
ipfw add 200 allow tcp from any to any established
ipfw add 300 allow tcp from any to me 22 in
ipfw add 400 allow icmp from any to any
ipfw add 500 allow ip from me to any out
ipfw add 65535 deny ip from any to any

Что делают правила​

RuleОписание
100разрешает loopback
200разрешает established соединения
300разрешает SSH
400разрешает ICMP
500разрешает исходящий трафик
65535блокирует всё остальное

5. Постоянная конфигурация​

Лучше создать файл правил:
/etc/ipfw.rules
Пример:
#!/bin/sh

ipfw -q flush

ipfw add allow all from any to any via lo0
ipfw add allow tcp from any to any established
ipfw add allow tcp from any to me 22 in
ipfw add allow icmp from any to any
ipfw add allow ip from me to any out
ipfw add deny ip from any to any
Сделать исполняемым:
chmod +x /etc/ipfw.rules
В /etc/rc.conf:
firewall_enable="YES"
firewall_script="/etc/ipfw.rules"

6. NAT (если сервер выполняет маршрутизацию)​

В /etc/rc.conf:
gateway_enable="YES"
firewall_nat_enable="YES"
firewall_nat_interface="em0"
Пример правила NAT:
ipfw nat 1 config if em0
ipfw add 100 nat 1 ip from any to any via em0

7. Логирование пакетов​

ipfw add 65000 deny log ip from any to any
Логи можно смотреть:
tcpdump -i ipfw0
или
tail -f /var/log/security

8. Полезные команды​

КомандаНазначение
ipfw listпоказать правила
ipfw addдобавить правило
ipfw delete Nудалить правило
ipfw flushудалить все правила
ipfw showстатистика

✅ Совет: всегда сначала разрешайте lo0 и established, иначе можно случайно заблокировать систему.
 

Создайте аккаунт или войдите в систему, чтобы комментировать

Вы должны быть зарегистрированным, чтобы оставить комментарий

Создать аккаунт

Создайте аккаунт в нашем сообществе.

Войти

У вас уже есть аккаунт? Войдите здесь.

Назад
Сверху Снизу