Инструменты пользователя

Инструменты сайта


wiki:freebsd:ipfw

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
wiki:freebsd:ipfw [2024/01/07 14:51] – [Включение ipfw без пересборки ядра] Dimanwiki:freebsd:ipfw [2024/01/29 14:41] (текущий) Diman
Строка 2: Строка 2:
  
 ===== Включение ipfw без пересборки ядра ===== ===== Включение ipfw без пересборки ядра =====
 +==== Подготовка и настройка ОСи ====
 +
  
 <code bash> <code bash>
Строка 24: Строка 26:
 pkg update && pkg upgrade pkg update && pkg upgrade
  
-pkg install -y mc nano rsync screen tmux bash htop +pkg install -y mc nano rsync  tmux bash htop bind-tools
  
 # replace bash for root # replace bash for root
Строка 33: Строка 35:
  
 </code> </code>
 +
 +==== Включение ipfw ====
 +
 +<code bash>
 +
 +echo '# IPFW
 +ipfw_load="YES"
 +ipfw_nat_load="YES"
 +firewall_logif="YES"
 +# PIPE + dummynet
 +ipdivert_load="YES"
 +dummynet_load="YES"
 +ng_pipe_load="YES"
 +# SETFIB
 +net.fibs="4"' >> /boot/loader.conf
 +
 +</code>
 +
 +==== Работающий в первый же запуск скрипт ipfw ====
 +
 +<code bash>
 +echo '#!/usr/local/bin/bash
 + 
 +cmd="/sbin/ipfw -q"
 +$cmd -f flush
 + 
 +$cmd disable one_pass
 +$cmd add allow all from any to any via lo0
 +$cmd add deny all from any to 127.0.0.0/8
 +$cmd add deny all from 127.0.0.0/8 to any
 +$cmd add deny all from any to any frag
 +
 +# ssh
 +$cmd table admin create missing
 +$cmd table admin add 10.1.1.0/24
 +$cmd table admin add 192.168.10.0/24
 + 
 +$cmd add check-state
 +#$cmd add allow tcp from any to any established
 +$cmd add allow all from any to any out keep-state
 +
 +$cmd add allow ip from "table(admin)" to me 22
 + 
 +# Ping
 +$cmd add allow icmp from "table(admin)" to me in icmptype 8
 +$cmd add allow icmp from me to "table(admin)" out icmptype 0,8
 + 
 +$cmd add allow all from any to any
 +$cmd add deny log all from any to any' > /etc/ipfw.script
 +
 +sysrc firewall_enable="YES"
 +sysrc firewall_script="/etc/ipfw.script"
 +sysrc firewall_logging="YES"
 +
 +</code>
 +
 +==== NTPd ====
 +
 +<code bash>
 +# ntpd
 +echo '# NTP
 +
 +server ntp.ix.ru iburst maxpoll 9 prefer
 +server ntp2.aas.ru iburst maxpoll 9
 +server 0.freebsd.pool.ntp.org iburst maxpoll 9
 +server 1.freebsd.pool.ntp.org iburst maxpoll 9
 +
 +restrict default ignore
 +
 +restrict 127.0.0.1
 +restrict ntp.ix.ru
 +restrict ntp2.aas.ru
 +restrict 0.freebsd.pool.ntp.org
 +interface ignore wildcard
 +interface listen igb0
 +
 +logfile /var/log/ntp.log
 +driftfile /var/db/ntp.drift
 +' > /etc/ntp.conf
 +
 +touch /var/db/ntp.drift
 +touch /var/log/ntp.log
 +
 +sysrc ntpd_enable="YES"
 +sysrc ntpdate_enable="YES"
 +sysrc ntpdate_hosts="127.0.0.1"
 +sysrc ntpd_sync_on_start="NO"
 +
 +service ntpd start
 +
 +</code>
 +
 +==== Включение NAT ====
 +
 +
 +<code bash>
 +
 +sysrc gateway_enable="YES"
 +
 +</code>
 +
  
 ===== fw ===== ===== fw =====
wiki/freebsd/ipfw.1704628280.txt.gz · Последнее изменение: 2024/01/07 14:51 — Diman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki