Shorewall
Shorewall je sada skriptov ktoré na základe zrozumiteľných konfiguračných súborov nakonfigurujú vstavaný linuxový firewall tzv. netfilter.
Obsah
Definovanie zón
Konfigurácia zón je v súbore /etc/shorewall/zones.
Definuje názvy jednotlivých zón z pohľadu firewallu a ich typy.
fw firewall net ipv4 lan ipv4
Definovanie interfejsov
Konfigurácia interfejsov je v súbore /etc/shorewall/interfaces
Príklad priraďuje názvy zón ku konkrétnym interfejsom (net->ppp0,...) a základne pravidla
net ppp0 detect dhcp,routefilter,tcpflags,logmartians,nosmurfs lan eth0 192.168.10.255 dhcp
Politika firewallu
Konfigurácia politiky sa nachádza v súbore /etc/shorewall/policy
Príklad zobrazuje jednoduchý firewall (dve sieťovky). Z uvedeného vyplýva, ze pakety z firewallu (fw) môžu ísť všetkými smermi.
Pakety prichádzajúce do interfejsov z internetu (net) a z LAN (lan) sú zahodené a je o tom zapísany log.
Obyčajne sa zakáže všetko a povolí len to čo potrebujeme.
fw all ACCEPT net all DROP info lan all DROP info
Nastavenie maškarády
Veľmi často je potrebne zamaskovať LAN (lan) a verejnú IP interfejsu ppp0 (net) (uvedene vzhľadom na príklad).
Maškaráda sa definuje v súbore /etc/shorewall/masq.
V prvom stĺpci je interfejs vonkajšej sieťovky, v druhom interfejs na ktorý je pripojená LAN.
ppp0 eth1 ppp0 eth0
Definovanie pravidiel
Pravidla o narábaní s paketmi sa definujú v súbore /etc/shorewall/rules.
Príklady:
## kompletne povolenie PINGOV vsetkymi smermi ACCEPT all all icmp ## povolenie pristupu z LAN do internetu na porty tcp 80 a 443 (povolenie http a https) ACCEPT lan net tcp 80,443 ## povolenie pristupu z LAN na konkretny postovy server ACCEPT lan net:10.45.65.200 tcp 465,995 ## povolenie SSH iba jednej IP z LAN na iba jeden server ACCEPT lan:192.168.10.5 net:195.65.25.22 tcp 22 ## povolenie pristupu z internetu na web server beziaci na firewalle ACCEPT net $FW tcp 80 ## povolenie pristupu z internetu na IP kameru v LAN DNAT net lan:192.168.10.155 tcp 80
ACCOUNTING
Nastavenia accounting sú definovane v konfiguračnom súbore /etc/shorewall/accounting
Výstup z jednotlivých počítadiel získame príkazom:
shorewall[-lite] show -x accounting
Príklad nastavenia accountingu v prípade webu (http, https)
#ACTION CHAIN SOURCE DESTINATION PROTOCOL DEST SOURCE # PORT PORT web:COUNT - eth0 eth1 tcp 80 web:COUNT - eth1 eth0 tcp - 80 web:COUNT - eth0 eth1 tcp 443 web:COUNT - eth1 eth0 tcp - 443 DONE web
príkaz na výpis počítadiel
shorewall show web