1. Пересобираем ядро с такими опциям:
options IPFIREWALL
options IPFIREWALL_DEFAULT_TO_ACCEPT (если указать - будет разрешено всё)
options IPFIREWALL_VERBOSE (логирование)
options IPFIREWALL_VERBOSE_LIMIT=1000
options IPFIREWALL_FORWARD
options DUMMYNET (шейпер)
options IPDIVERT (nat)
2. в rc.conf
gateway_enable="YES" (выступаем в качестве шлюза)
firewall_enable="YES"
firewall_logging="YES" (логи /var/log/security)
firewall_script="/etc/firewall.conf" (создаем - там будут хранится наши правила)
natd_enable="YES"
natd_interface="em0" (внешний)
natd_flags=""
dummynet_enable="YES"
3. Чтобы пустить клиента в интернет нужно прописать у него ip (если нет dhcp сервера), шлюз и dns-сервер провайдера (если нет своего).
4. Правила. Синтаксис такой:
ipfw команда № действие [log] протоколы адрес [параметры]
команда: add, delete, flush(сброс всех правил)
действие: allow, deny
протоколы: all, ip, tcp, udp
адрес: from [not] адрес/маска[порт] to адрес/маска[порт] [via интерфейс]
порт: порт, порт-порт(диапазон)
параметры: in (входящий пакет), out (исходящий пакет) (по отношению к ОС)
пример: ipfw add 100 allow ip from 10.0.0.1/24 to any
options IPFIREWALL
options IPFIREWALL_DEFAULT_TO_ACCEPT (если указать - будет разрешено всё)
options IPFIREWALL_VERBOSE (логирование)
options IPFIREWALL_VERBOSE_LIMIT=1000
options IPFIREWALL_FORWARD
options DUMMYNET (шейпер)
options IPDIVERT (nat)
2. в rc.conf
gateway_enable="YES" (выступаем в качестве шлюза)
firewall_enable="YES"
firewall_logging="YES" (логи /var/log/security)
firewall_script="/etc/firewall.conf" (создаем - там будут хранится наши правила)
natd_enable="YES"
natd_interface="em0" (внешний)
natd_flags=""
dummynet_enable="YES"
3. Чтобы пустить клиента в интернет нужно прописать у него ip (если нет dhcp сервера), шлюз и dns-сервер провайдера (если нет своего).
4. Правила. Синтаксис такой:
ipfw команда № действие [log] протоколы адрес [параметры]
команда: add, delete, flush(сброс всех правил)
действие: allow, deny
протоколы: all, ip, tcp, udp
адрес: from [not] адрес/маска[порт] to адрес/маска[порт] [via интерфейс]
порт: порт, порт-порт(диапазон)
параметры: in (входящий пакет), out (исходящий пакет) (по отношению к ОС)
пример: ipfw add 100 allow ip from 10.0.0.1/24 to any
Комментариев нет:
Отправить комментарий