Ubuntu Security
Iz projekta Ubuntu-RS Wiki
Sadržaj |
Osnovno
Ovi saveti su generalni i primenljivi na sve operativne sisteme. To je nekoliko jednostavnih koraka koje možete odmah da primenite.
- Koristite snažne lozinke http://en.wikipedia.org/wiki/Password_strength
- U osnovi ne zapisujete svoje lozinke, a ako baš morate držite ih na sigurnom mestu (nemojte ih zalepiti na svoj monitor ili nešto slično tome)
- Ograničite pristup kao root (nemojte se prijavljivati kao root niti pokretati programe). Ubuntu ovo prevazilazi zaključavanjem root naloga i korišćenjem komande sudo.
- Razmislite o kreiranju naloga bez sudo pristupa za svakodnevnu upotrebu.
- Iako se ne prijavljujete na sistem kao root, podesite root šifru. To će vam omogućiti da je vaš računar zaštićen čak iako prilikom podizanja zbog neke greške otvori konzolu za administraciju sa root pristupom. X/K/Ubuntu desktop sistemi podrazumevano u takvim situacijama daju root konzolni pristup bez pitanja za šifru. Podešavanjem root šifre ćete sistem zaštititi od ove neprijatnosti.
- Fizički pristup (fizički pristup = veliki sigurnosni rizik). Fizički pristup omogućava pristup sa root nalogom (na primer sa Live CD-a)
- Ne treba instalirati softver ili dodavati repozitorijume iz neproverenih izvora (pogledati dole pod "socijalni inženjering"). Ovo podrazumeva pokretanje skripti koje modifikuju
/etc/apt/sources.list. Vodite računa da nije neophodno pokretanje najnovijih/poslednjih/velikih na uštb sigurnosti. - Takođe nemojte da pokrećete kod ili da unosite komande u terminal na nesigurnim mestima. Ako niste sigurni koja je komanda najbolja, probajte prvo da uradite pretragu uz pomoć Googla
- Održavajte sistem redovno unapeđenim (update). Unapređenja, pogotovo sigurnosna unapređenja donose najnovije zakrpe za sistem.
- Ukoliko koristite server, bilo bi odgovorno da naučite više o sigurnosti.
Više o socijalnom inženjeringu (tekst na engleskom)
Windows način razmišljanja
Ukoliko dolazite iz radnog okruženja Windows verovatno koristite termine kao što su antivirus, spyware ili firewall. Međutim Linux je drugačiji i ti termini nisu toliko više bitni. O njima ćemo pisati prvima jer se nalaze i među često postavljenim pitanjima (FAQ) na forumu. Na nesreću, ponekad je teško novim korisnicima da prođu kroz Strah, nesigurnost i sumnju (FUD - Fear, uncertainty and doubt) od kojih su neke namerno stvorene od strane antivirus kompanija.
Virusi
Stvar koja je bitna:virusi/crvi koriste pogodnosti koje su nastale usled propusta u kodu. U vreme dok se ovo piše nisu identifikovani virusi za Linux (napisani su neki, ali pod kontrolisan uslovima). Linux proizvodi nisu ništa manje izloženi napadima od drugih OS,mnogi od velikih (i korisnih) Internet sajtova su pokrenuti na *nix sistemima i na toj strani treba tražiti razloge zašto se provaljuje u *nix sisteme. nemojte da pomislite da je Linux zajednica opustena kada su u pitanju virusi ili drugi sigurnosni propusti.Programeri koji razvijaju Linux ne ignorišu postojanje virusa, nego u startu prave OS koji je "Otvoren" i zahvaljujući tome bukvalno izložen hiljadama očiju koji ga kontrolišu.
Ovo je primer šta će biti ukoliko instalirate zlonamerni kod (malware) u Ubuntu
Nemojte da brinete, klikom na ovaj link nećete instalirati ništa.
Uglavnom, Linux anti-virus programi pretra\uju sistem u potraaazi za Windows wirusim koji se ne mogu pokrenuti na Linuxu, osim ukoliko se ne koristi wine(http://os.newsforge.com/article.pl?sid=05/01/25/1430222&from=rss) Anti-virusi su re-aktivni i oni vrše zaštitu samod poznatih virusa. Oni vas mogu jedino zaštiti jedino tek kada Linux virus bude napravljen, a ne pre toga. Pored toga zakrpa će zakrpiti bilo koju rupu u kodu, a takve zakrpe se obično nalaze u security updejtu ( koji su učestaliji u Linuxu od nekih drugih Operativnih Sistema ).
Moj savet vam je da preskočite anti-virus na Ubuntu, a evo i razloga:
- Oni uglavnom tragaju za Windows virusima
- Tu je i visok nivo nesigurnih izveštaja
- Integracija je jako loša
- I na kraju je tu nepostojanje poznatih virusa za Linux( pa u osnovi neće ni biti ništa da se detektuje)
Pokretanje antivirusa može jedino imati smisla, ukoliko se žele zaštiti "windows" korisnici, mada bi bilo najbolje kada bi se korisnici Windowsa sami naučili štititi. Zapravo najčešći potreba za Linux antivirusima jeste kada se nalaze između Windows servera i Windows klijenta.
Napomena: Ima jako puno dokumentovanih slučajeva u Windowsu i Linuxu gde je prepunjavanje memorije (buffer overflow) u antivirusnom programu bilo nosilac napada.
Ukoliko se odlučite da poterate antivirus na Linuxu imate nekoliko mogućnosti
- http://www.avast.com/eng/avast-for-linux-workstation.html
- http://www.pandasoftware.com/download/linux.htm
- http://www.centralcommand.com/linux_server.html
- http://www.f-prot.com/products/home_use/linux/
Firewall
Diskusija o korišćenju firewalla je uglavnom naprasita( dovoljno je pogledati Ubuntu forume ).U osnovi Ubuntu poseduje firewall, iptables, ali on u osnovi nije aktiviran. To je opravdano jer Ubuntuova instalacija ne otvara ni jedan port prema spoljašnosti, pa je firewall suvišan. Uglavnom instalirajući "server software" ipak otvaramo pojedine portove, pa se određeni broj ljudi ipak odluči da poktene firewall kao filter za sve slojeve radi pronalaženja grešaka u konfiguraciji softwera.
Takođe firewall se koristi prilikom administriranja mreže radi prisilnoga nametanja pravila za korisnike. Na primer ukoliko korisnici ne trebaju da koriste primer.com za razgovor, jednostavno se ograniči saobraćaj preko porta koji služi za razgovor. Takođe je jako dobro provemeno proveravati portove koji su otvoreni na sistemu. Za te potrebe se može koristiti komanda "nmap" pokrenuta sa neke druge ma[ine, a mogu se i koristiti i neki od online port skenera :
Obratite pažnju kako se brinete o portovima koji su otvoreni. Zatvoreni portovi ili oni prikriveni su podjednako sigurni i kao takvi su nedostižni su za druge korisnike.
Preporuke za IPtables
- https://help.ubuntu.com/community/IptablesHowTo
- http://www.linuxguruz.com/iptables/howto
- http://iptables-tutorial.frozentux.net/iptables-tutorial.html
"Problem" predstavlja to što nije baš za nove korisnike. Srećom postoji nekoliko rešenja koja će da pomognu početnicima Firestarter ili Guarddog koji su obadvoje GUI interfejs za IPtables.
Browser / Spyware : Java/Flash/Ad-ware/Trackers/Cookies
Za većinu korisnika ovo su najčešće pretnje. Svi mi želimo da koristimo Java/Flash ali sa njima Internet pregledači postaju ranjivi na napade.
Preporučuje se:
- Odbijati sve cookies,a samo za pouzdane sajtove dozvoliti dozvoliti samo za vreme trajanja sesie
- Instalirati NoScript. Potom ponovo zabraniti sve i dodati samo pouzdane sajtove na belu listu.
- Instalirati SafeHistory
- Adblocking. Za ograničavanje pomoćnog sadržaja(treba srediti prethodne dve reči) preporučujem [Adblock Plus] i Adblock Filterset.G Updater jer omogućavaju bolju zaštitu nego što je ona koja je ugrađena u Firefox.
- http://www.mvps.org/winhelp2002/hosts.htm
- Linux script http://hostsfile.mine.nu/downloads/updatehosts.sh.txt
Napomena: NoScript blokira učitavanje Flasha.
Ubuntu način razmišljanja
Dozvole i enkripcija
Osnovni nivo zaštite jesu dozvole. Dozvole se koriste radi podešavanja pristupa, i na taj način štite sistemske i korisničke fajlove.
Pogledajte takođe i umask pri kraju teksta na prethodnom linku. Vrednost umaska može takođe da bude podešena u ~/.bashrc. Da podesite "private home", kao korisnik
chmod 700 $HOME
Enkripcija se koristi kao dodatni nivo zaštite. Jedino ograničenje koje enkripcija ima je kada offered (potrebno je prevesti predhodnu rec) se maunuje cela particija (jednom kada je mauntovana cela particija je assessable/crackable kao bilo koji drugi fajl )
- https://help.ubuntu.com/community/EncryptedFilesystem
- https://help.ubuntu.com/community/EncryptedFilesystemHowto
- http://www.howtoforge.com/truecrypt_data_encryption
Rootkits
Citat iz http://en.wikipedia.org/wiki/Rootkit :
Termin rootkit (takođe je poznat kao root kit) u osnovi se koristi da označi komplet UNIX alata kao što su ps, netstat, w and passwd koji mogu da pažlivo sakriju uljeza da unosi redovne komande, takođe dozvoljavaju uljezu da odžava root pristup ( sa najvećim privilegijama ), a da ga pri tome sistemski administratori nemogu videti.
Ovaj termin nije više rezervisan samo za operativne sisteme zasnovane na UNIX-u
Detekcija Rootkit-a
- Rkhunter
- rkhunter(prevedeni tekst)
- http://wiki.linuxquestions.org/wiki/Rootkit_Hunter
Detekcija upada u sistem
Napomena: Aktiviranjem detekcije provale u sistel like snort (potrebno sređivanje)koji analizira mrežni saobraćaj tražeći znakove napada, mada može prepoznati i potencijalne znakove napada.Postoje dokumentovani primeri of vulnerabilities in snort's preprocessor that granted hackers snort user, or even root user, access to the system!(potrebno sređivanje)
Preporučuje se OSSEC ili Snort
Kako da: http://www.howtoforge.com/intrusion_detection_with_ossec_hids How to Snort
Compiledkernel's Suggested Applications
(potreban je prevod ovoga dela)
Pokretanje servera
Deo podešavanja servera jeste i čitanje/učenje o njegovoj sigurnosti. Uobičajni serveri podrazumevaju NFS, Samba, FTP, SSH, VNC, RDP i HTTP. Ukoliko "How to" po kojem radite nema posebno predstavljenu sigurnost, potrebno je da potražite "Desktops" become "Servers" ako je server vec instaliran.
Osnovna pitanja koja trebate sebi da postavite su
- Коje sve portove i servise podrazumeva taj software?
- Ko će sve moći da kontaktira sa njime?(is it restricted to a range of IP addresses Password protected?)potrebo je prevesti prethodnu recenicu
- Koji nivo pristupa ce imati posetioci na sistemu?(dali se se server pokretati sa korisničkim ili sa root nalogom? Šta može običan korisnik da uradi u najgorem slučaju?)
- Dali server nudi dodatne informacije koje mogu da budu od koristi Hakerima?( dali dozvoljava korisnicima prenošenje lozinki kao čistoga teksta? Dali ima statistički prikaz koji otkrivaulogovane korisnike, IP adrese, mrežnu konfiguraciju ili neke druge potencijalno korisne informacije?)
- Koliko se software pokazao sigurnim u svojoj istoriji? Dali poseduje dugu istoriju ranjivosti i stalnog izdavanja patch-ova? Ili poseduje stabilnu istoriju po pitanju sigurnosti?
Primeri:
Ojačavanje jezgra (kernel)
Ojačavanje jezgra jeste modifikacija Linux kernela dodavanjem sigurnosnih mera. To može da znači: --
Čitanje logova
Naučite kako da čitate sistemske logove i neka vam to postane redovna aktivnost.Ovo bi trebalo da se podrazumeva, vase prvo upoznavanje sa sistemskim logovima ni u kom slucaju ne bi trebalo da bude onda kada posumnjate da je vas sistem kompromitovan jer tada vec moze da bude prekasno. Treba znati da ako neko ima root pristup da može izmeniti log fajlove. Ovo je značajno kada treba biti upozoren na "normalnu" aktivnost.
Postoje moduli koji se nazivaju "logwatch" koji svake noći mogu slati e-mailove sa novim upisima u log.
Kako izvesti ojačavanje jezgra (kernel)
Potreban prevod
Original tutorial je ovde: http://ubuntuforums.org/showthread.php?t=510812

