|
1. Progam tcpwarp
Program na filtrovanie ptistupu na sietove sluzby spustane cez inetd.
2. Kompilacia
Na kompilaciu je potrebna kniznica libmmm, dostupna na
http://fornax.elf.stuba.sk/~marek/prog/
Jednoducho zadajte prikaz
make all
3. Instalacia
Prekopirujte program tcpwrap ku svojim spustitelnym programo. Naprikad:
cp -a tcpwrap /usr/sbin/
Vytvorte adresar /etc/tcpwrap. Zadanim prikazu:
mkdir /etc/tcpwrap
V subore /etc/inetd.conf zmodifikujte riadky tych sluzieb, ktore chcete
filtrovat tak aby bol spustany program tcpwrap a ako parameter dostal
meno programu zabezpecujuceho danu sluzbu. Obycajne staci nahradit spustanie
/usr/sbin/tcpd za /usr/sbin/tcpwrap. Riadok pre sluzbu telnet bude vyzerat
napriklad takto:
telnet stream tcp nowait root /usr/sbin/tcpwrap in.telnetd
POROZ!!! Tcpwrap nepouzivajte na sluzbu auth, ani na sluzbu inad inym
protokolom ako tcp.
4. Konfiguracia - Pouzivanie
Vsetky konfiguracne subory su v adresary /etc/tcpwrap. Pre kazdu sluzbu
existuje subor /etc/tcpwrap/serv.meno_programu. Napriklad pre telnet je to
subor /etc/tcpwrap/serv.in.telnetd . Ak tento subor neexistuje pouzije
sa namiesto neho /etc/tcpwrap/serv.default . Ak sa podla tohto suboru
nerozhodne o povoleni/nepovoleni pristupu pouzije sa aj subor
/etc/tcpwrap/serv.all .
Subory serv.* obsahuju zoznamy povolenych a nepovolenych adries, ktore sa
vyhodnocuju v poradi v akom su napisane.
Riadky maju jeden z nasledujucich formatov:
ALLOW: [ ...]
DENY: [ ...]
USERALLOW: [ ...]
USERDENY: [ ...]
TEXTALLOW:
TEXTDENY:
EXEC: [ ...]
Riadky ALLOW/DENY povoluju/zakazuju pristup z adries .
je domenove meno. V pripade, ze host nema domenove meno, pouzije sa
namiesto neho .ipdrasa (naprikald .127.0.0.1).
V je mozne pouzit znak '*' vo vyzname ziaden, alebo hocikolko
lubovolnych znakov. Znak '?' ma vyznam jeden lubovolny znak.
Je mozne pouzit aj hranate zatvorky na vymenovanie povolenyh znakov
a okruhle zatvorky na vymenovanie povolenych retazcov oddelenych ciarkami.
Ak je za zaciatkom hranatej alebo okruhlej zatvorky znak '!', tak vymenovane
znaky, alebo retazce sa v mene vzdialeneho stroja nemaju nachadzat.
Riadky USERALLOW/USERDENY povoluju/zakazuju pristup vzdialenych pouzivatelov
. Aj tu je mozne pouzit znaky * ? [] ().
Riadky TEXTALLOW/TEXTDENY nastavuju meno suboru, ktory sa vypise v pripade
povolenia/zamietnutia pristupu. TEXTALLOW neodporucam pouzivat!
Riadky EXEC zmenia program ktory sa vykona v pripade povolenia sluzby.
Obycajne sa vykonava program, ktory je napisany v subore /etc/inetd.conf .
Ak sa pocas vyhodnocovania serv. suboru najde riadok povolujuci pristup,
prerusi sa vyhodnocovanie, vypise sa subor TEXTALLOW, ak je nastaveny
a spusti sa program danej sluzby. Predtym sa este nastavy enviromentovska
premenna REMOTE_HOST na meno vzdialeneho stroja a REMOTE_NAME na meno
vzdialeneho pouzivatela.
Ak sa pocas vyhodnocovania serv. suboru najde riadok zakazujuci pristup,
prerusi sa vyhodnocovanie, vypise sa subor TEXTDENY, ak je nastaveny
a ukonci sa spojenie.
Ak sa pristup v celom subore danej sluzby, ani v subore serv.all nepovoli ani
nezakaze, tak je pristup povoleny!
5. Zaver
Prajem spokojne pouzivanie tohto programu. Tento program nieje odolny voci
podvrhom s DNS menami a IP adresami! Pouzitie len na vlastne riziko!
Tento program uspesne dlhodobo bezi na servery fornax.elf.stuba.sk.
6. Autor
Marek Zelem
http://fornax.elf.stuba.sk/~marek/
e-mail: marek@fornax.elf.stuba.sk
Ak máte nejaké otázky alebo návrhy, pošlite mi ich na adresu marek@terminus.sk
| |