1. 15.05.1993.
Damir Delija
Implementacija sustava verifikacije korisnika na umreženim osobnim računalima
Sadržaj: U ovom radu se opisuju jedno rješenje sustava automatske verifikacije korisnika na
umreženim osobnim računalima pod operacijskim sustavom MSDOS. Daju se prednosti i
nedostaci navedene metode, te njena moguća proširenja, usavršavanja i veza sa standardnim
nadzornim sustavima.
Ključne riječi: verifikacija, sigurnost, mreža, personalno računalo
0. Uvod
Jedan od osnovnih problema vezanih uz osobna računala, posebno pod operacijskim sustavom
MSDOS je potpuni nedostatak sigurnosti računala. U granicama operacijskog sustava
MSDOS nemoguće je postići verifikaciju korisnika i veoma je teško zaštiti podatke od
neovlaštenog pristupa. Problem se još vise potencira pri vezanju računala u mreže naročito
one koje dozvoljavaju usluge dijeljenja diskova. Da bi se izbjegli problemi vezani uz
neovlašteni pristup podacima i neovlašteni ulazak u računalo moguće je primijeniti razne
metode programske i sklopovske zaštite, čija efikasnost i primjena ovisi o traženom stupnju
sigurnosti za računalo i mrežu.
Jedno od mogućih programskih rješenja je primjena sustava verifikacije korisnika sličnog
sustavu operacijskog sustava UNIX, koji se ujedno prirodno nadovezuje na sustav mrežne
verifikacije korisnika ostvaren kroz NIS (engl. Network Information Service) protokol za
usklađivanje datoteka koje opisuju korisnike na umreženim računalima.
1. Verifikacija korisnika
Verifikacija korisnika je ostvarljiva na lokalnom nivou i na globalnom tj. mrežnom nivou.
Lokalna verifikacija korisnika znači postojanje lokalnog procesa koji korisnika na temelju
njegovog imena i verificirane lozinke uvodi u sustav ili ne. Korisnik pri tome automatski biva
smješten u svoje osnovno kazalo i biva pokrenuta njegova inicijala korisnička ljuska kao na
standardnom UNIX sustavu. Ako je potrebno može se izvršiti i verifikacija korisnika na mreži
putem odgovarajućih procesa. To ujedno znači da korisnik može nastaviti rad i u slučaju
ispada mreže na svom lokalnom računalu, posto njegov opis postoji u lokalnim datotekama.
Ne mora se posebno spominjati da je za takav sustav potrebno i imati pouzdanu
administraciju sustava i jedinstven sustav korisničkih imena koji se održava bilo ručno bilo
putem odgovarajućih alata.
2. Slika 1: Primjer sustava datoteka sličan UNIX operacijskom sustavu
Prema navedenom postoje dakle dva stupnja verifikacije:
lokalni na temelju kog korisnik ulazi u lokalo računalo
mrežni na temelju kog korisnik pristupa uslugama mreže i koji automatski svojom
promjeno uzrokuje promjenu lokalnog.
1.1.Realizaija rješenja
Prema preporukama i postojeći de facto standardima za operacijski sustav UNIX za
verifikaciju korisnika mora biti izvedena određena struktura datoteka, kazala i programa na
računalu. Moraju postojati osnovna kazala za svakog korisnika, mora postojati datoteka sa
opisom svih korisnika, komandne ljuske, login programi, te inicijalni programi (slika 1).
Postupak pokretanja računala, pristupa na mrežu, te verifikacije korisnika teče prema
algoritmu prikazanom na slici 2. Pri tome se za operacijski sustav MSDOS moraju izvesti
određene specifične modifikacije datoteka CONFIG.SYS i AUTOEXEC.BAT tako da bi
računalo radilo obavilo navedenu sekvencu. Potrebno je modificirati SHELL varijablu u
datoteci CONFIG.SYS kako bi inicijalni proces postao program koji vrši verifikaciju
korisnika .
pokretanje_računala;
provjera_računala;
pokretanje_mreže;
postupci_održavanja;
Ponavljaj zauvijek
početak
3. unesi korisnikove ime i lozinku;
Ako korisnikovo ime postoji i lozinka je u redu
tada
ako postoji osnovno korisnikovo kazalo
tada
obavi_statistiku_za_korisnika;
ako je mreža aktivna
tada
ako uspije verifikacija na mreži
tada
pokreni osnovnu korisnikovu ljusku;
odjavi_korisnika_sa_mreže
inače
pokreni osnovnu korisnikovu ljusku
obavi_statistiku_za_korisnika;
inače
obavi_statistiku_za_korisnika;
kraj.
Slika 2: Postupak verifikacije korisnika
2.Postupci mrežne verifikacije
Mrežna verifikacija se može izvoditi na vise načina ovisno o tipu mreže, implementaciji
verifikacije na danoj mreži, te o dostupnim programskim alatima.
2.1.Verifikacija putem komandnih procedura za korisničku ljusku
Najjednostavniji način je korištenje komandnih procedura za korisničke ljuske u
neinteraktivnom načinu. Takav pristup ima prednost u tome sto se mrežna verifikacija može
izvesti i za korisnika koji uz verifikaciju zahtijeva aktiviranje specifičnih mrežni usluga, npr.,
pristup diskovima, štampačima i sl. Pri odjavi sa mreže istim načinom se pojedine usluge
odjavljuju slika 2.1, 2.2.
Nedostatak ove metode je u postojanju komandnih procedura koje se mogu neovlašteno čitati
i mijenjati posto na MSDOS-u ne postoji mogućnost efikasne zaštite datoteka.
REM komandna procedura za command.com
REM poziva se sa parametrima /C ime_procedure korisnik lozinka
REM primjer je za SUN PCNFS sustav
REM
REM verificiranje korisnika %1 je korisničko ime %2 je lozinka
NET NAME %1 %2
4. REM
REM pristup mrežnim resursima, diskovima i štampačima
REM
NET USE J: SUN:/usr/tehnika /ms
NET USE I: m33:/usr/HINA /ms
NET USE LPT1: tea:LN03
NET USE LPT2: tea:LN03
Slika 2.1: Tipičan izgled komandne procedure za mrežnu verifikaciju korisnika i pristup
određenim mrežnim resursima.
Moguća je i modifikacija ove metode tako da se komandne procedure za verificiranje na
mreži smjeste na zaštićene mrežne diskove odakle se svaki puta prenose na lokalni stroj ako
postoji razlika između kopija procedure na lokalnom stroju i one na mrežnim diskovima. Za
takav pristup potrebno je modificirati algoritam verifikacije, tj. računalo nekim postupkom
mora prije verifikacije korisnika ostvariti pristup mrežnim resursima gdje su pohranjene
centralne verzije komandnih procedura.
REM komandna procedura za command.com
REM poziva se sa parametrima /C ime_procedure
REM primjer je za SUN PCNFS sustav
REM
REM otpuštanje mrežnih resursa, diskova i štampača
REM
NET USE J: /d
NET USE I: /d
NET USE LPT1: /d
NET USE LPT2: /d
REM
REM odjava korisnika
REM
5. NET LOGOUT
Slika 2.2: Tipična procedura za odjavu korisnika sa mreže i otpuštanje mrežnih resursa.
Prednost ovog postupka leži u tome sto se može realizirati na mrežnom sustavu koji
minimalno ima riješeno dijeljenje diskova, pa nisu potrebni nikakvi posebni alati ni zahvati.
2.2. Verifikacija pristupom mrežnim uslugama
Verifikacija korisnika putem pristupa mrežnim uslugama može se ostvariti upotrebom
postojećih usluga kakav je NIS ili pak ostvarivanjem vlastitih mrežnih usluga za potrebe
verificiranja korisnika.
Oba pristupa zahtijevanju postojanje programskih alata i paketa koji ne dolaze sa standardnim
konfiguracijama mrežnih proširenja MSDOS-a, tj. moraju se imati razvojni paketi. Takav
pristup ima prednosti nad pristupom putem komandnih procedura za korisničku ljusku u tome
sto je moguće implementirati vlastiti dodatni sigurnosni sustav sa složenijim načinom
provjeravanja korisnika i sto je moguć pristup standardnim bazama podataka za verifikaciju
korisnika koje se opet automatski usklađuju sa promjenama na cijelom umreženom sustavu.
Realizacija sustava za verifikaciju korisnika na bazi NIS protokola za računala pod
operacijskim sustavom MSDOS zahtijeva postanje bar jednog NIS pružaoca usluge u mreži i
odgovarajuće programske podrške na osobnom računalu. Pri tome se modifikacija procesa
verifikacije obavlja tako da se umjesto direktnog pristupa podacima na lokalnom stroju
(lokalnim informacijama o korisnicima) koriste pozivi funkcija iz biblioteka za podršku NIS
protokola. Te funkcije /SCO/ pristupaju prvo mrežnom pružaocu NIS usluge i tamo
verificiraju korisnika. Ako pristup mrežnom pružaocu usluge nije moguć tek tada se korisnik
verificira uz pomoć lokalnih podataka.
Razvoj vlastitih protokola za verifikaciju korisnika je veoma složen proces i nije
preporučljivo poduzimati posto navedeni načini verificiranja korisnika omogućuju
jednostavno uklapanje u postojeće sustave.
Vlastiti protokol sigurnosti ima smisla u slučaju da se razvija uz neki drugi vlastiti specifični
protokol ili uslugu. Kao primjer za to se može navesti razvoj mrežne usluge za veoma
specifične potrebe kao sto je npr. izvještajna agencija za koju se razvija sustav za udaljeni
pregled vijesti. U tom slučaju potrebno je definirati mrežnu uslugu koja to omogućuje pa se
definiranje dopunskog načina verifikacije korisnika za tu uslugu ugrađuje u definiciju
protokola te usluge /SCO/, slika 2.3. Treba napomenuti da u tom slučaju novi protokol
verifikacije obuvača i sva ostala računala u sustavu a ne samo osobna računala.
6. Slika 2.3: Veza specifične mrežne usluge i vlastitog protokola verifikacije korisnika
3. Zaključak
Postupci koji su opisani u ovom radu potrebni su za implementaciju verifikacije korisnika na
sustavima umreženih osobnih računala, naročito na onim osobnim računalima na kojima se
može pojaviti vise korisnika. To znači da za tzv. nesigurna osobna računala (engl. nonsecure
personal computers) mora postojati proširenje sustava sigurnosti kako bi se zaštitili i korisnici
i računala i lokalno i u cijelom sustavu. Navedeni postupci su lako uvodljivi i omogućuju
prihvatljiv stupanj sigurnosti za lokalne strojeve i za mrežu.
Osobna računala koja su stvarno osobna tj. za koja postoji samo jedan imenovani korisnik ne
podliježu takvim problemima posto se taj korisnik mora brinuti o računalu, a i aplikacije za
mrežnu podršku su i izrađene za takvu upotrebu osobnih računala, no i na njih su navedeni
postupci također primjenjivi.
Odabir postupka verifikacije korisnika je složen proces vrednovanja i procjene zahtijeva
sustava i usluga na njemu. Ako se odabere pogrešan ili preslab sustav verifikacije korisnika
štete mogu biti nesagledive, pa je zato bolje primijeniti zahtjevniji sustav verifikacije koji će
možda i smanjiti performansu sustava, ali će zadržati nivo sigurnosti sustava.
4. Literatura
/RFC1094/ "NFS: Network File System Protocol Specification", Sun Microsystems, Inc,
March 1989.
/SCO1/ "SCO Network File System (NFS) System Administartor's Guide", Santa Cruz
Operations Inc., 12 March 1991.