Hlavní navigace

Firewall na dial-upu

Miroslav Petříček

Tento článek volně navazuje na sérii "Stavíme firewall", který vyšel na ROOTu před časem. Dozvíme se v něm, jak a jestli vůbec konfigurovat pakety na osobním počítači, který je k Intenetu připojen příležitostně skrze vytáčenou telefonní linku. Podíváme se také na způsoby, jakými lze filrovací pravidla zavádět.

Základní otázkou je, zda má vůbec smysl zabezpečovat počítač, který není k Internetu připojen stabilně a kde je tedy riziko napadení menší. Jakmile se ale nad tímto problémem zamyslíme hlouběji, zjistíme, že ono riziko je sice menší, ale jenom přesně o tolik, o kolik je připojení k síti kratší. V dnešní době, kdy se namísto cílených útoků na počítače stále více rozmáhají metody, kdy útočník testuje víceméně náhodné rozsahy IP adres na známé chyby, jistě má smysl zabývat se i zabezpečením vašeho osobního počítače.

Na místě je i otázka, nakolik je nezbytné k takovému zabezpečení použít paketový firewall. Přísně vzato, při použití dostatečně důsledných bezpečnostních zásad – tj. budeme sledovat a okamžitě zahlazovat známé bezpečnostní problémy, budeme mít aktivované pouze nezbytně nutné služby, které navíc budou poslouchat jen na potřebných rozhraních atd. – bychom mohli zajistit solidní míru bezpečnosti i bez firewallu. Protože však nikdo z nás, tím méně žádný z našich programů, není stoprocentní a může se stát, že nám něco unikne, je velmi vhodné tyto bezpečnostní zásady doplnit ještě vlastním firewallem. Už proto, že jeho konfigurace není díky iptables nijak zvlášť obtížná a ani nepředstavuje pro náš počítač žádnou zvláštní zátěž.

Co tedy filtrovat na dial-upu?

Odpověď je prostá – všechno. Na dial-upu obvykle neběží žádné služby, které by bylo třeba zpřístupňovat do Internetu. To nám velice usnadní práci, neboť náš firewall nemusí nijak bránit spoofování, syn-floofingu ani dalším technikám, neboť prostě blokujeme (skoro) všechno, co k nám z Internetu přichází:

iptables -A INPUT -P DENY
iptables -A FORWARD -P DENY

Teď aktivujeme stavový firewall a propustíme příchozí pakety, které patří k námi navázaným spojením:

iptables -A INPUT -m --state ESTABLISHED,RELATED -j ACCEPT

Naopak nemá valného významu omezovat datagramy v řetězci OUTPUT (mají svůj původ v našem počítači a nejsou tedy potencionálně nebezpečné).

iptables -A OUTPUT -P ACCEPT

Naše omezení se netýkají lokálního loopbacku, který je pro fungování počítače důležitý, ani rozhraní eth0, jímž se příležitostně připojujeme do podnikové sítě:

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT

Na místě je i otázka, zda filtrovat ICMP pakety. Maximálně paranoidní uživatelé budou v pokušení filtrovat i je, my ostatní budeme propouštět minimálně echo-request/reply, destination unreachable a time exceeded, čistě z úcty k RFC standardům:

iptables -A INPUT -p ICMP -i eth0 --icmp-type 0 -j ACCEPT
iptables -A INPUT -p ICMP -i eth0 --icmp-type 3 -j ACCEPT
iptables -A INPUT -p ICMP -i eth0 --icmp-type 8 -j ACCEPT
iptables -A INPUT -p ICMP -i eth0 --icmp-type 11 -j ACCEPT

Kromě toho je pravděpodobné, že budeme chtít používat pasivní FTP přenosy, proto musíme zajistit, aby se zavedl modul ip_conntrack_ftp (více o problematice FTP se dočtete tady):

modprobe ip_conntrack_ftp

Kompletní skript, vhodný k instalaci, si můžete stáhnout odsud

Zavádění filtrovacích pravidel v distribucích Red Hat

Distribuce RH obsahují rc skript iptables, který dokáže uložit a ve vhodném okamžiku znovu zavést firewallovací pravidla. Používá se snadno. Nejprve zajistíme, aby došlo k vyprázdnění všech řetězců:

service iptables stop

Pak ručně zavedeme filrovací pravidla a uložíme je do souboru /etc/sysconfig/ip­tables:

./dialupfw.sh
service iptables save

Poté zajistíme, aby se skript iptables vykonal při každém zapnutí počítače:

chkconfig iptables on

Pokud vám iptables zobrazí při spouštění nějaká chybová hlášení, ale samotný skript se zdá být v pořádku, je možné, že nemáte dostatečně aktuální verzi balíčku iptables, neboť v některých distribucích byla chyba, která se projevovala právě takto. Nezapomeňme také, že tímto způsobem zajistíme pouze nastavení filtrovacích pravidel, ale nikoliv již další kroky, které eventuálně ve firewallovém skriptu můžeme provádět. Mám tím na mysli zejména zavádění jaderných modulů nebo třeba modifikování parametrů přes /proc/sys.

Mně se osvědčilo zavádět ipt moduly přímo ve skriptu /etc/rc.d/init­.d/iptables. Parametry jádra je vhodné nastavovat pomocí souboru /etc/sysctl.conf, kam stačí jen uvést klíč a hodnotu. Startovací skripty se samy při startu postarají o jejich nastavení.

Tolik tedy k filtrování paketů na dial-upu.

Našli jste v článku chybu?

29. 3. 2002 9:54

Pavel (neregistrovaný)

Ještě si dovolím upřesnit - nameserver musí pro všechny dotazy kromě transferu zóny odpovídat jak na udp/53 tak tcp/53. Pro transfer zony jen tcp/53.
Docela me prevapilo chovani windowsackeho nslookup ktery i pro axfr pouziva UDP, a tedy se mi s snim nepodaril transfer zony...


28. 3. 2002 9:10

Miroslav Petříček (neregistrovaný)

Caching nameserver neni nic jineho nez obycejny DNS nameserver (resolver) s pameti. Pouziva vetsinou 53/UDP a obcas (pro zone-transfers a dlouhe dotazy) 53/TCP.

Vitalia.cz: Proč vás každý zubař posílá na dentální hygienu

Proč vás každý zubař posílá na dentální hygienu

Měšec.cz: Zdravotní a sociální pojištění 2017: Připlatíte

Zdravotní a sociální pojištění 2017: Připlatíte

Vitalia.cz: Vychytané vály a válečky na vánoční cukroví

Vychytané vály a válečky na vánoční cukroví

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

Lupa.cz: Kdo pochopí vtip, může jít do ČT vyvíjet weby

Kdo pochopí vtip, může jít do ČT vyvíjet weby

120na80.cz: Co všechno ovlivňuje ženskou plodnost?

Co všechno ovlivňuje ženskou plodnost?

DigiZone.cz: Flix TV: dva set-top boxy za korunu

Flix TV: dva set-top boxy za korunu

Měšec.cz: mBank cenzuruje, zrušila mFórum

mBank cenzuruje, zrušila mFórum

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?

Lupa.cz: Proč firmy málo chrání data? Chovají se logicky

Proč firmy málo chrání data? Chovají se logicky

Root.cz: Certifikáty zadarmo jsou horší než za peníze?

Certifikáty zadarmo jsou horší než za peníze?

Podnikatel.cz: Chtějte údaje k dani z nemovitostí do mailu

Chtějte údaje k dani z nemovitostí do mailu

Vitalia.cz: Jmenuje se Janina a žije bez cukru

Jmenuje se Janina a žije bez cukru

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí

Podnikatel.cz: Chaos u EET pokračuje. Jsou tu další návrhy

Chaos u EET pokračuje. Jsou tu další návrhy

Měšec.cz: Stavební spoření: alternativa i pro seniory

Stavební spoření: alternativa i pro seniory

Podnikatel.cz: Snížení DPH na 15 % se netýká všech

Snížení DPH na 15 % se netýká všech

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Měšec.cz: Air Bank zruší TOP3 garanci a zdražuje kurzy

Air Bank zruší TOP3 garanci a zdražuje kurzy

Vitalia.cz: Když přijdete o oko, přijdete na rok o řidičák

Když přijdete o oko, přijdete na rok o řidičák