[ LUGOS ] drobnarije

Matija Grabnar Matija.Grabnar na arnes.si
Pet Okt 2 08:43:04 CEST 1998


> Dve stvari me zanimata:
> 
> 1. Napisal sem kratek programček v c-ju, ki ga zaganjam iz inetd-ja.
>    Za komunikacijo s klientom (ki sem ga s hudimi mukami in precej
>    grdih besed spesnil v javi) uporablja običajne gets() in puts()
>    funkcije in ne kakih socketov. Deluje.
>    Zanima me, kako bi lahko ta programček (server) ugotovil IP naslov
>    klienta. Malo sem brskal po man page-ih, pa brez uspeha.

Ko naredis accept, dobis nazaj strukturo, ki vsebuje tudi IP naslov clienta.
Potem naredis gethostbyaddr od tega IPja in imas ime masine od koder je 
prisel connection.

> 2. Vsega skupaj sem se lotil zato, ker sem moral pričarati nekakšen sistem
>    "prijavljanja" na internet. Neka firma pač želi imeti pregled, kdo je
>    kdaj surfal, in zato se bodo morali uporabniki najprej prijaviti na
>    proxyja, ta bo pač spustil tisti "ipfwadm ..." in na koncu odjaviti,
>    da bo proxy spet zaprl IP naslov.
>    Prva ideja je bila seveda CGI. Najbolj enostavno, vendar lahko potem
>    z ogledom "history" v brskalniku vsak uporabnik vidi še gesla tistih
>    pred njim. Ali se da temu na kak način izogniti?
>    Vpisno polje tipa "password" ne reši nič, razen prikaza na ekran ob
>    vpisu. Klic CGI rutine ostane isti.

Ce je ta proxy Squid (in ce ni, zakaj ni? :-) se ga da pripraviti do tega, da
sam zahteva authentication. Poglej si FAQje in ostalo dokumentacijo na
http://Squid.nlanr.net/

Seveda potem z ipfwadm nastavis sistem tako, da se uporabniki lahko s portom
80 prikljucijo samo na proxy, ven sme pa samo proxyjeva masina.

Poleg tega lahko vidnost parametrov pri CGIjih spremenis, ce spremenis 
metodo posiljnaja podatkov. Ce ju nisem ze spet zamesal, METHOD=POST pokaze
podatke kot del URLja, METHOD=GET pa ne.

-- 
"My name is Not Important. Not to friends. 
    But you can call me mr. Important"  - Not J. Important 
Matija.Grabnar na arnes.si





Dodatne informacije o seznamu Starilist