Računarske mreže se najčešće sastoje od radnih stanica i servera sa instaliranim raznim operativnim sistema. Iako bi upravljanje uniformnim mrežnim sistemom sačinjenim samo od jedne porodice OS-a bilo mnogo lakše za održavanje, u praksi to najčešće nije slučaj. Da bi svi operativni sistemi mogli da, potpuno optimizovano, međusobno razmenjuju fajlove u klijent-server orijentisanoj mreži, najbezbedniji pristup problematici je podizanje više različitih servisa na fajl-serverima, što onda ispunjava sve tehničke potrebe, i što je najbitnije, „želje i pozdrave” korisnika. U ovom tekstu potrudićemo se da pokažemo principe rada i alatke koji se koriste za konfigurisanje Ubuntu servera za optimalno deljenje mrežnih resursa između različitih platformi.Ovaj put nastavljamo priču o fajl-serverima, pokrićemo neke malo ređe spominjane servise, sa užom sferom primene. Pokušaćemo da ukažemo na raznovrsnost programa koji mogu da pruže usluge fajl-servera, da opišemo neke, sa osnovnim konfiguracijama, kao i mogućnostima primene. Mogućnosti Ovaj server možemo graditi na bilo kojoj od tri osnove koje smo opisali u rubrici „Servis” u prethodnim izdanjima. Od servisa koji su nam na raspolaganju za podizanje određene vrste fajl-servera, pored Sambe opisane u prethodnom broju, tu su FTP, NFS, iSCSI i CUPS. Mi ćemo u ovom tekstu detaljnije opisati FTP i NFS, a iSCSI i CUPS samo ukratko opisati zbog ograničenja u prostoru. Šta je iSCSI? Internet Small Computer System Interface, ili skraćeno iSCSI je protokol koji omogućava da SCSI komande budu prenesene putem računarske mreže. On je najčešće implementiran u SAN (Storage Area Network) da bi omogućio serverima da pristupe velikim skladišnim prostorima. iSCSI protokol se prema iSCSI klijentima odnosi kao prema inicijatorima, a prema iSCSI serverima kao prema targetima. Ubuntu server može biti konfigurisan i kao iSCSI inicijator, i kao iSCSI target, u zavisnosti od potreba.Šta je CUPS? Common UNIX Printing System ili skraćeno CUPS je primarni mehanizam koji na Ubuntu OS-u pruža usluge štampanja. Ovaj printing sistem je slobodan softver, dostupan besplatno, a ujedno i portable printing sloj koji je postao novi standard za štampanje na većini Linux distribucija. CUPS upravlja sa print jobs i queues, i omogućava mrežno štampanje korišćenjem Internet Printing Protocol (IPP) standarda. Pored toga ima podršku za veliki broj štampača, od matričnih do lasera. CUPS takođe podržava PostScript Printer Description (PPD) i auto-detekciju mrežnih štampača, a ima i jednostavan web-based alat za konfiguraciju i administraciju. Šta je FTP? File Transfer Protocol (ili skraćeno FTP) je TCP (Transmission Control Protocol) koji služi za preuzimanje fajlova sa računara i/ili servera. U prošlosti se koristio i za slanje, ali pošto ne koristi enkripciju, podaci za prijavu (korisničko ime i pass), kao i fajlovi koji se prenose lako su dostupni za presretanje.
FTP radi po klijent/server modelu, a sama serverska „komponenta” na Linuksu naziva se FTP daemon. To „parče” softvera nepre-stano očekuje FTP upite od strane udaljenih klijenata i kada primi upit, upravlja procesom prijavljivanja i podešava parametre konekcije. Kasnije, u toku trajanja sesije, izvršava sve komande koje pošalje klijent do samog zatvaranja (slično kao konobarica na omiljenom afteru). Načini pristupa FTP-u Pristup jednom FTP serveru može biti ostvaren na dva načina: anonimno ili na osnovu korisničkog imena i lozinke. U anonimnom režimu rada, udaljeni klijenti mogu pristupiti FTP serveru koristeći predefinisane korisničke naloge „anonymous” ili „ftp” i (ponekad) slanjem e-mail adrese kao lozinke. Kada se koristi prijava sa korisničkim imenom i lozinkom, korisnik, naravno, mora imati svoj nalog na serveru. Pristup korisnika folderima i fajlovima na FTP serveru zavisi od prava i privilegija definisanih za specifičan nalog koji je korišćen za pristup serveru. Kao uopšteno pravilo, FTP daemon „sakriva” root folder FTP servera i zamenjuje ga FTP Home folderom. Na taj način skriva ostatak fajl-sistema od mogućnosti zloupotrebe putem udaljenih sesija. Instalacija FTP servisa Iako postoji više različitih verzija FTP servera za Linuks, mi smo se za ovu pokaznu vežbu odlučili za primenu vsftpd, jer je on zvanično podržan za distribuciju Ubuntu Server. Lako ga je instalirati, podesiti i održavati. Napominjemo da je bitno da se ulogujete kao root na server na koji se instalira pre svega, ili je obavezno korišćenje komande sudo pre svih komandi. Za početak uraditi update sistema setom komandi apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y. Zatim možemo instalirati vsftpd komandom apt-get install vsftpd -y. Konfiguracija FTP servisa Što se pristupa tiče, vsftpd predefinisano nije konfigurisan da prima anonimne konekcije i omogućava preuzimanje fajlova. Za podešavanje anonimnog pristupa FTP serveru potrebno je napraviti određene izmene u konfiguracionom fajlu FTP servisa. To se radi komandom vi /etc/vsftpd.conf i izmenom linije koda „anonymous_enable” u „Yes” umesto predefinisanog „No” („anonymous_enable=Yes”). U toku instalacije, napravljen je FTP korisnik čiji se fajlovi smeštaju na putanju /srv/ftp. Ovo je predefinisani direktorijum, koji se može promeniti. Ukoliko postoji potreba da se lokacija promeni, u recimo /ftp/anonymous, potrebno je prvo kreirati željeni folder (ukoliko već ne postoji) i promeniti home direktorijum za tog korisnika. To se može uraditi komandama mkdir /ftp /ftp/anonymous usermod -d /ftp/anonymous ftp Prva komanda pravi folder „ftp” i njegov podfolder „anonymous”, a druga pravi izmenu „home” foldera za korisnika FTP na putanju „/ftp/anonymous”. Nakon toga, potrebno je restartovati vsftpd servis pomoću komande restart vsftpd Naposletku, potrebno je na tu putanju prekopirti sve fajlove i foldere koje želimo da anonimni korisnici FTP servera vide i koriste, bez obzira na to da li je to „/srv/files/ftp” ili „/srv/ftp”. Kada je reč o User Authenticated FTP konfiguraciji, vsftpd je predefinisano podešen da sistemskim korisnicima odobrava pristup i omogućava preuzimanje fajlova. Da bi se omogućilo i slanje fajlova na FTP server, potrebno je napraviti izmenu u konfiguracionom fajlu vi /etc/vsftpd.conf i skinuti komentar (#) sa početka linije „write_enable” („write_enable=YES”). Nakon toga, potrebno je restartovati vsftpd servis komandom restart vsftpd Sada, kada se sistemski korisnici prijave na FTP server, pronaći će se u svom „home” folderu gde će moći da šalju fajlove, preuzimaju fajlove kreiraju foldere, i vrše tome slične akcije. Proba FTP-a Da bismo isprobali novonapravljeni FTP server, ukoliko smo u VM (Virtual Machine), potrebno je prvo prebaciti mrežni adapter VM na režim rada Bridged Adapter (VirtualBox > Settings > Network > Attached to > Bridged Adapter). Zatim je potrebno ulogovati se na server, i ukoliko nije fiksirana adresa, proveriti koju je adresu dobio komandom ifconfig. Mi smo koristili, sada već ustaljenu fiksnu adresu 192.168.254.253. FTP serveru se može pristupiti iz svakog modernog internet brauzera, na bilo kom OS-u, ili iz nekog 3rd Party programa kojih ima prilično mnogo, kao što je recimo FileZilla. Za anonimni pristup se obično koristi internet browser, gde je dovoljno otkucati IP adresu sa prefiksom „ftp://„ (primera radi: „ftp://192.168.254.253”). Za prijavu sa korisničkim imenom i lozinkom najzgodniji su pomenuti 3rd party programčići, od kojih neki verovatno već imate instaliran na računaru, kao što je, recimo, Total Commander. Šta je NFS? Network File System (ili skraćeno NFS) omogućava sistem deljenja foldera i fajlova sa drugima u lokalnoj mreži. Prvenstveno je bio namenjen samo za razmenu fajlova između radnih stanica baziranih na Linuxu/UNIX-u, ali u poslednje vreme dobija veću popularnost i na drugim operativnim sistemima (čak i Windowsu). Uporebom NFS-a, korisnici i programi mogu da pristupe fajlovima na udaljenim serverima (skoro) kao da se nalaze na lokalnom računaru. Neke od najbitnijih prednosti NFS-a, su mogućnost smanjenja potrošnje prostora na disku radnih stanica u mreži, centralizacijom zajedničkih podataka na NFS serveru, nepostojanje potrebe da korisnici imaju zaseban „home” folder na svakoj „mašini” u mreži (što je bitno za mrežna okruženja bazirana na Linuksu) i deljenje raznih vrsta uređaja za skladištenje podataka u mreži (kao što su recimo optički drajvovi ili USB fleš, HDD, SSD...). Instalacija NFS-a Pre svake instalacije preporučujemo apdejt (makar) paketa. S obzirom na to da smo u ovom cugu već radili apdejt pri instalaciji FTP servisa, sada nije potrebno, ali ukoliko budete radili ovo dan ili nekoliko dana nakon FTP-a, preporučujemo apdejt. Za instalaciju NFS servisa potrebno je u terminalu izvršiti komandu apt-get install nfs-kernel-server -y. Konfiguracija NFS servisa Nakon instalacije, a pre starta, potrebno je podesiti servis. To se radi editovanjem konfiguracionog fajla koji se nalazi na putanji „/etc/exports” i upisivanjem foldera koje je potrebno deliti. Folder je naravno potrebno prvo napraviti, ukoliko već ne postoji. Zatim je potrebno editovati NFS konfiguracioni fajl pomoću komande vi /etc/exports i upisati pomenuti folder dodavanjem recimo linije „/home *(rw,sync,no_root_squash)” ispod komentara (# linije koda), čime se deli folder „home” sa određenim privilegijama, gde „*” označava da bilo koji hostname može pristupiti, „rw” znači da je moguće čitati iz i pisati po folderu, „sync” da NFS server neće odgovarati na nove zahteve dok izmene nastale od strane prethodnih zahteva ne budu zapisane na disk, a „no_root_squash” da root korisnici mogu i udaljeno da izvršavaju komande kao superuser. Ova svojstva se mogu konfigurisati i drugačije, gde se „*” menja određenim hostnameom i na taj način ograničava pristup samo tom hostnameu, „rw” sa „ro” čime se daje samo read-only pristup deljenom folderu, „async” umesto „sync” koji radi suprotno od onoga što radi „sync” i „no_root_squash” sa „root_squash” čime se postiže da root korisnici ne mogu da izvršavaju sve komande kao superuser. Zatim je potrebno eksportovati konfiguraciju komandom exportfs -a Nakon konfiguracije, potrebno je servis pokrenuti, što se radi pomoću komande /etc/init.d/nfs-kernel-server start Proba NFS-a Probu NFS-a smo uradili iz desktop verzije Ubuntu Linuks distribucije. Da bi proba uopšte bila moguća, potrebno je prvo instalirati podršku za NFS. To se radi ulaskom u terminal (’Ctrl+Alt+T’), prijavom kao root sudo su i izvršavanjem komande apt-get install nfs-common -y Nakon toga, potrebno je napraviti proizvoljni folder u koji ćemo mauntovati taj mrežni resurs. To se može uraditi pomoću komande mkdir iz terminala ili putem grafičkog interfejsa, a mi smo napravili folder Temp mkdir /home/sk/Temp Nakon toga, potrebno je mountovati mrežni folder pomoću komande mount 192.168.254.253:/home /home/sk/Temp čime dobijamo pristup deljenom NFS folderu „home” u folderu „Temp” koji se nalazi na putanji „/home/sk/Temp” na lokalnom računaru/VM. Moramo napomenuti da se računari moraju nalaziti na istoj mreži (IP opseg i Subnet) da bi sve ovo radilo, tako da pripazite na podešavanja mreže, pogotovo ako su u pitanju virtuelne mašine. • • • U ovom tekstu bavili smo se podizanjem i konfigurisanjem FTP i NFS Fajl-servera na najosnovnijem nivou. Takođe, dali smo osnovni opis preostalih servisa koji mogu biti korisni za poznavanje u pripremama za rad budućih sistem admina i inženjera. U sledećem broju ćemo opisati i podići neke druge vrste servera, radi daljeg vežbanja i eksperimentisanja, a možda čak i uživanja. |