FAQ? Myty o tcpd/hosts.{allow,deny}
uhlar na fantomas.sk
uhlar na fantomas.sk
Pátek Únor 22 10:48:26 CET 2002
Mam pocit ze je stale dost ludi ktori nevedia ako tcp wrappery funguju a su
medzi nimi rozsirene 2 myty:
1. tcp wrappery funguju len pre sluzby pustane cez inetd (xinetd)
2. tcp wrappery spolahlivo zabrania pristupu z dotycnych pocitacov.
...je zaujimave ze asi nikto si nemysli naraz oboje :)
Takze vysvetlenie:
TCP wrappery su funkcie v kniznici libwrap. Pouzivaju ako konfiguraciu
subory hosts.allow a hosts.deny (takmer vzdy) v adresari /etc/ (vacsinou).
Pouzivane byvaju tak ze po kazdom nadviazani spojenia na server tento zavola
funkciu, ktora mu vrati odpoved, ci je spojenie povolene alebo zakazane.
V pripade ze je spojenie zakazane, ho server zvykne zavriet. To vysvetluje,
ze ak sa niekam pripojite, spojenie sa otvori a hned zavrie.
Kazdy program, ktory prijima sietove spojenia, moze obsahovat podporu tychto
kniznic, a ak ju ma, je mozne konfigurovat ho v dotycnych suboroch.
Pre programy ktore tieto funkcie nepodporuju a byvaju (mozu byt) spustane
cez inet demon, existuje wrapper tcpd, ktory je zavolany s menom skutocneho
serveru, overi spojenie, a v pripade ze je povolene server spusti. Inac
spojenie zavrie. Niekedy podporuje tcp wrappery samotny inet demon
(inetd/xinetd) a vtedy odpada rezia pri volani wrappera.
Takze mytus cislo 1 nie je pravdivy - programy mozu podporovat tcp wrappery
nativne a nemusia byt spustane cez inetd na to aby ho spustali. Medzi taketo
programy patri napriklas sshd, sendmail, portmapper, proftpd a mnoho inych.
Vzhladom na to ako TCP wrapper funguje, moze fungovat len s niektorymi
serveri. Napriklad taky multiplexujuci squid, ircd, ntpd alebo named by s
nim poriadne lagovali. Takisto ho nezvyknu pouzivat internet servery ako
napriklad apache httpd, pretoze to je viac-menej verejna sluzba a obmedzovat
ju wrappermi ma zmysel len velmi zriedka.
Takze mytus cislo 2 je nepravdivi - tcp wrappery ochrania len niektore
sluzby, niektore sa s nim ochranit nedaju a pre niektore to nema zmysel.
Este by som si dovolil poznamenat ze mnoho ludi pouziva wrappery len na
zakazanie alebo povolenie spojenia, pricom nevedia ze wrappery dokazu
- spustit miesto seba iny proces
- spustit iny proces na pozadi
- logovat mnoho informacii o klientskej stanici (ip, dns meno, remote userid
cez sluzbbu identd a ine)
- nastavit prostredie
- zmenit UID pouzivatela pod ktorym bezia
- zmenit umask
a ze im staci jeden konfiguracny subor ktorym mozno kontrolovat pristup
ovela detailnejsie ako dva subory.
Pre blizsie informacie si pozrite manualovu stranku hosts_options(5)
P.S. ak som sa zmylil tak ma napravte. A dufam ze budeme moct poslat
pouzivatelov neznalych problematiky do archivu precitat si tento clanok.
--
Matus "fantomas" Uhlar, uhlar na fantomas.sk ; http://www.fantomas.sk/
Warning: I don't wish to receive spam to this address.
Varovanie: Nezelam si na tuto adresu dostavat akukolvek reklamnu postu.
"Two words: Windows survives." - Craig Mundie, Microsoft senior strategist
"So does syphillis. Good thing we have penicillin." - Matthew Alton
Další informace o konferenci Linux