ipchains - povoleni DNS dotazu
Brano Zarnovican
zarnovican na pobox.sk
Čtvrtek Duben 6 14:40:59 CEST 2000
> - dotazy budou mirene jen z vnitrni (vnejsi) site na server, takze
> IMHO neni potreba pro DNS nastavovat forwarding (?)
> - povolim vstup techto paketu z vnitrni site a z vnejsi site
> - to by melo stacit (??)
>
> ipchains -A bad-if -p tcp --dport domain -j ACCEPT
> ipchains -A bad-if -p udp --dport domain -j ACCEPT
> ipchains -A good-if -p tcp --dport domain -j ACCEPT
> ipchains -A good-if -p udp --dport domain -j ACCEPT
Podla toho examplu v HOWTO su 'bad-if' a 'good-if' v 'input' retazi.
Predpokladam, ze 'output' mate povoleny na vsetko.
Tymi styrmi pravidlami povolite prijem dotazov z oboch sieti.
Odpovede idu cez 'output'.
Ked vsak server nieco nema v cache-i tak je to ON kto posiela
dotazy von (dport:domain,sport:???). Dotaz cez output odide,
ale odpoved (sport:domain,dport:???) uz cez input pravidla
neprelezie.
Bolo by vsak zasadnou chybou dat tam pravidla typu:
ipchains -A bad-if -p tcp --sport domain -j ACCEPT
ipchains -A bad-if -p udp --sport domain -j ACCEPT
Nechali by ste si nechranene vsetky porty. Utocnikovi by stacilo
si len dat source port 53.
U TCP sa to riesi:
ipchains -A bad-if -p tcp ! -y --sport domain -j ACCEPT
Bohuzial ale vacsina DNS ide cez UDP a tam sa take nieco neda.
Jedine co mozte je skusit odhadnut to ???. Zalogujte si zopar
odpovedi a zistite z akeho intervalu OS vybera src port,
pripadne si prestudujete procfs.txt a zistite, ze 'ip_local_port_range'
je asi presne na to.
ipchains -A bad-if -p udp --sport domain --dport 1024:4999 -j ACCEPT
Druha moznost je, ze nakonfigurujete svoj DNS server tak, ze sa bude
pytat vzdy toho isteho servera (u providera), ten mu to rekurzivne
vyriesi a odpoved bude teda prichadzat vzdy z tej istej IP adresy.
BranoZ
Další informace o konferenci Linux