Linux i mrežni servisi

U trenutku kad smo računalo uspjeli spojiti na mrežu i obaviti sve što smo planirali, vrijedi spomenuti pokoji detalj koji će nam učiniti to iskustvo lakšim, bržim i korisnijim, ali i sigurnijim, ovisno o onome što očekujemo od računala. U jednom trenutku ono će možda postati centar mrežne povezanosti u domu ili uredu i od njega će se očekivati da ostalim računalima pruži dodatne usluge ili omogući izlaz na Internet preko zajedničkog modema. Većina tih funkcionalnosti već je ugrađena ili dolazi na instalacijskim CD-ima, pa samo treba pronaći načina uključiti ih i podesiti.

Sigurnost

Prvo što pomislimo prilikom izlaska na Internet zaštita je računala od uljeza i napadača. Iako ne toliko izraženo kao kod nekih drugih operacijskih sustava, i ovdje moramo skinuti i instalirati posljednje zakrpe. Srećom, novije distribucije postavljaju neku vrstu nadzornog programa koji upozorava na postojanje novijih zakrpa ili ih i sam skida. Na onima koje to nemaju, morat ćemo sami (apt-get update; apt-get upgrade ili yum update, ovisno o distribuciji). Preporučljivo je to raditi periodički. Osim toga, ako izlazimo na Internet s javnom IP adresom jedan od najbitnijih principa zaštite onemogućavanje je servisa koji primaju zahtjeve s Interneta, a slučajno su instalirani. To je bitno jer ako se u nekom trenutku pronađe sigurnosni problem na tom servisu, nećemo ni znati što nam se dogodilo jer ni ne znamo za njega. Prvo trebamo saznati koji su procesi pokrenuti, odnosno "osluškuju" vanjske pristupe. To možemo otkriti naredbom "nmap localhost" ili "netstat -tuple". Onemogućavanje servisa može se obaviti ili u grafičkom sučelju nekih distribucija (Suse, Red Hat) ili u npr. Debianu naredbom "update-rc.d -f imeservisa remove".
Firewall kao takav praktički ni nije nužno imati pokrenutog, pogotovo ako smo već zatvorili sve servise, no kako je već ionako ugrađen u kernel, ne treba ništa dodatno instalirati već samo postaviti s nekoliko pravila. Neke distribucije već prilikom instalacije nude elementarni ali sasvim dovoljan firewall čija je namjena zatvoriti sve portove, a propustiti samo one koje mu dozvolimo (one koje želimo otvoriti svijetu). Postoje također i brojna grafička sučelja, koja nisu ništa više nego zamjena za poznavanje sintakse naredbe iptables.

Ubrzavanje Interneta

Kako bi se ubrzalo dohvaćanje stranica s Interneta, na Linux računalo moguće je instalirati proxy servis. On je postavljen između Interneta i browsera i sprema kopiju stranice koja prelazi preko njega. Ako neko drugo računalo ponovno pokuša dohvatiti tu stranicu, proxy će ju izvući iz diska ili memorije i odmah ju poslati. Time se naravno štedi vrijeme i mrežni promet. Prednost čak i kod jednog računala nasuprot vlastitog cachea od browsera je što svi browseri mogu koristiti iste spremljene stranice. Squid kao najpoznatiji proxy za Linux (postoji i za druge platforme, a nalazi se čak i u malim uređajima) ima vrlo napredne mogućnosti filtriranja, razne liste koje mogu prepoznati reklame ili imati tzv. roditeljske filtre za neprikladne sadržaje. Također ubrzava i čuva DNS zahtjeve koji bi inače mogli na početku dohvaćanja neke stranice stvoriti pokoju sekundu zastoja. U njega se mogu ugraditi i dodatni programi koji mu povećavaju funkcionalnost, uglavnom kao još naprednije filtriranje sadržaja. U posljednje vrijeme proxy serveri postali su manje efikasni jer je sve više dinamički generiranih sadržaja i raznih portala koji se jako često mijenjaju pa se tako nema što spremati osim statičnih slika.
Još jedan način ubrzavanja pristupa Internetu je i pokretanje lokalnog DNS servisa, odnosno onog koji će spremati zahtjeve za prepoznavanje domena i kod ponovnog upita trenutno ih dohvaćajući iz memorije. On radi na sličan način kao i proxy: neki lokalni program njega pita za informaciju o nekoj IP adresi, a on pak pošalje upit prema DNS serverima od ISP-a, odnosno onima koji su mu upisani u konfiguraciji. Na ovaj se način može uštedjeti do par desetinki sekunde po stranici, a ako ona ima i veći broj reklama na drugim domenama, ta se vremena zbrajaju. Programi koji obavljaju tu funkciju su Pdnsd i Dnsmasq. Njihova konfiguracija se uglavnom svodi na dodavanje IP-eva vanjskih DNS-ova u konfiguraciju. Pdnsd ima prednost da sprema podatke na disk, pa će oni ostati sačuvani i poslije restarta sustava. Mana ovakvih programa može biti nedostupnost stranica ako njihovi vlasnici promijene IP adrese servera, a lokalno ostane zapamćena stara informacija. No zato svaka domena ima određeno vrijeme nakon što podaci postanu zastarjeli, pa se oni moraju ponovno dohvaćati.
Točno vrijeme zgodna je funkcionalnost računala, a postojanjem veze na Internet možemo ga dovesti do visoke razine točnosti (desetinke sekunde i manje). U tu svrhu potrebno je postaviti posebne programe koji će se redovito spajati na za to predviđene servere i vrijeme koje tamo pokupe usklađivati sa sistemskim satom u Linuxu. Protokol koji se koristi naziva se Network time protocol (NTP) pa se i program za to naziva ntp. Podešavanje je jednostavno, a najbitniji je podatak o dostupnim NTP serverima. Nama je najbliži zg1.ntp.carnet.hr, a često se spominje i univerzalni time.nist.gov, gdje se koristi cezijev atomski sat za izuzetnu preciznost. Osim ntp-a, postoji i chrony program, koji je pogodniji za povremene veze prema Internetu, jer on prati trendove kašnjenja sistemskog sata pa mu stalna veza nije toliko potrebna.

E-mail filtriranje

Iako postoji nekoliko iznimno kvalitetnih e-mail preglednika za Linux u grafičkom sučelju koji su dovoljno napredni da bi bili autonomni, prednosti raznih open source programa su brojne. Većina distribucija dolazi s instaliranim i pokrenutim e-mail servisom (Postfix, Sendmail, Exim) koji inicijalno služi da bi se razne poruke sustava slale administratoru, primjerice dnevni pregledi log zapisa ili rezultati pokretanja nekih naredbi. Uz malo podešavanja ti servisi mogu služiti kao prolazna točka za e-mailove između nas i ostatka Interneta. Kod slanja, ako trenutno nismo online, e-mailovi će se stavljati u red čekanja dok se ne spojimo. Ako ne želimo ovisiti o SMTP serveru našeg pružatelja Internet usluga, možemo ih čak izravno slati prema primatelju (makar će to povećati šanse da ga se označi kao spam).
Još se veće mogućnosti pružaju kod primanja pošte. Iako vjerojatno nećemo posluživati vlastitu domenu (barem dok nepromjenjive IP adrese ne budu češće kod naših ISP-ova ili dinamički DNS-ovi pouzdaniji) možemo skidati poštu s vanjskih servera i izlagati ju raznim kontrolama. Program za skidanje pošte s POP3 ili IMAP servera naziva se fetchmail ili alternativno getmail. Oni će predati skinute e-mailove na obradu lokalnom e-mail servisu, koji pak može imati u sebi integriranu provjeru od spama i virusa. Primjerice, unutar Postfixa i sličnih može se ugraditi Amavis, koji objedinjuje razne antispam (SpamAssassin i Dspam) i antivirusne programe (ClamAV). Kad smo sigurni da su poruke "čiste" možemo ih još propustiti kroz procmail za inteligentno sortiranje po sandučićima, brisanje, promjenu naslova, zaglavlja i slično. Iako su ovo redom vrlo kompleksni programi, postoje detaljne upute kako ih složiti upravo u ovoj ili sličnim kombinacijama, a vrijeme uloženo u to brzo će se isplatiti kraćim vremenom brisanja spamova i boljom organizacijom.

Lokalni server

Kad se lokalna mreža počne širiti s drugim klijentskim računalima, Linux se može nametnuti sa svojim serverskim funkcijama. On može pružati i drugim računalima u mreži gorespomenute informacije o točnom vremenu, lokalno spremljenim domenama i web stranicama i to uz minimalnu potrošnju njegovih resursa. Često korištena mogućnost Linuxa je i dijeljenje datoteka za Windows klijente, čime se zamjenjuje dosta skupa infrastruktura i nezanemariva cijena licenci (tzv. CAL-ova). Za to se koristi popularan skup programa Samba, koje je vrlo relativno jednostavno podesiti (konfiguracijska datoteka ima dobro opisane pojedine stavke), a postoji i web sučelje. Uz podosta truda na Sambi je moguće složiti i domenski kontroler za Windowse (Primary Domain Controller - PDC) i stvoriti napredni mali uredski server. Linux desktop može dobro funkcionirati i kao klijent Microsoft infrastrukture, pa se tako može autorizirati na PDC-u ili novijem Active Directoryju i bez problema pristupati mrežno dijeljenim direktorijima odnosno diskovima. Već smo spomenuli napredne mrežne funkcije Linuxa, ali moramo još jednom naglasiti kako on jednostavno briljira u ulozi mrežnog routera i firewalla. Osim što može dijeliti Internet kao klasični router, može predstavljati i DHCP server kako bi računala automatski dobila IP adrese i sve bitne postavke. Firewall funkcije posebno su napredne, pa se s njima mogu izvoditi svakakva ograničavanja, preusmjeravanja i zaustavljanja, što je primjerice posebno bitno kad korisnici prerevno iskorištavaju mrežne resurse korištenjem P2P protokola, ali i primjerice u slučaju kad se neko računalo zarazi virusom pa počne slati ogromne količine spam e-mailova. Ograničavanje prometa je korisna funkcionalnost, u kojoj se nekom prometu (recimo http) može dati prioritet u brzini i odzivu, a drugog, poput P2P-a ili ftp-a ograničiti kako ne bi blokirao vezu ljudi koji nešto i korisno rade.

Ivan Capan