Iptables
Iptables je paketový filter. Stejně jako u většiny paketových filtrů je i zde filtrace paketů založena na
- Typu protokolu - TCP, UDP, ICMP
- Zdrojová adresa - počítač odesílající data
- Cílová adresa - počítač přijímající data
- Další členění protokolu - např. příznak "SYN" u TCP, nebo typ ICMP (echo-request, echo-reply, ...)
Kromě výše uvedených kritérií umožňuje firewall iptables filtraci založenou na stavu, tj. může fungovat také jako stavový firewall.
Podrobnosti o projektu jsou uvedeny na stránkách http://www.netfilter.org/.
Získání instalačního balíčku
Instalace
Firewall iptables je snadno dostupný (balíček iptables v APT) a snadno konfigurovatelný. Případně lze instalační balíček také získat na stránkách projektu http://www.netfilter.org/.
Konfigurace
Konfigurace pracovních stanic se může lišit podle potřeb uživatelů. Následující přehled příkazů umožní snadno vytvořit konfiguraci šitou na míru.
Před přidáváním pravidel zrušte stávající konfiguraci firewallu (např. v OS Debian GNU/Linux pomocí příkazu /etc/init.d/iptables clear).
Základní konfigurace umožňující pouze komunikaci na adrese 127.x.x.x (loopback), komunikaci iniciovanou pracovní stanicí, komunikaci příbuznou (tj. již navázané spojení se domluví na komunikaci na jiném portu) a odpověď na ICMP. Ostatní příchozí provoz bude blokován a příslušné pakety zahozeny (DROP).
iptables -P INPUT DROP iptables -N BASE iptables -A INPUT -j BASE iptables -A BASE -i lo -s 127.0.0.0/255.0.0.0 -j ACCEPT iptables -A BASE -m state --state RELATED,ESTABLISHED -j ACCEPT iptables -A BASE -p tcp -m tcp --dport 113 -j REJECT --reject-with icmp-port-unreachable iptables -A BASE -p icmp -j ACCEPT
Potřebujete-li používat ssh (port 22), k příkazům ještě přibudou následující příkazy. Pro přístup ze stroje, který je mimo doménu ZČU, je ssh blokováno a je potřeba využít veřejných serverů (eryx).
iptables -N SHELL iptables -A INPUT -s 147.228.0.0/255.255.0.0 -j SHELL iptables -A SHELL -p tcp -m tcp --dport 22 -j ACCEPT
Pro přístup k AFS je třeba přidat příkazy:
iptables -N OPENAFS iptables -A INPUT -j OPENAFS iptables -A OPENAFS --proto udp --dport 7000:7010 -j ACCEPT iptables -A OPENAFS --proto udp --sport 7000:7010 -j ACCEPT
Pro podporu protokolu ftp je třeba mít v jádře zajištěnou podporu modulem ip_conntrack_ftp (v OS Debian GNU/Linux pomocí příkazu modprobe ip_conntrack_ftp.
Nakonec je nutné výslednou konfiguraci uložit (např. v OS Debian GNU/Linux pomocí příkazu/etc/init.d/iptables save active).