Serveri turve
Serveri Turve
Sisukord
- 1 Sissejuhatus
- 2 Serveri kaitse
- 2.1 Looduslikud jõud
- 2.2 Hea uuenevusega Operatsioonisüsteem
- 2.3 Turva-listid
- 2.4 Snort ja IPS/IDS lahendused
- 2.5 Tulemüürid
- 2.6 SSH Ründed
- 2.7 mod_security
- 2.8 Sisevõrk (backnet)
- 2.9 Aktiivne ja passiivne monitoorimine
- 2.10 Kasutajad
- 2.11 Mandatory Access Control ja GRSecurity
- 2.12 Teenuste ja võrguühenduste jälgimise piiramine
- 2.13 Lisaõigused
- 2.14 Süsteemifailide õigused
- 2.15 CHROOT
- 2.16 Jail
- 2.17 mpm_itk
- 2.18 ARP mürgitamine
- 2.19 Failisüsteemi õiguste piiramine
- 2.20 Krüpteering
- 2.21 parooliga logimise keelamine (logimine ainult võtmega)
- 2.22 Konfiguratsioon ja rakendused
- 2.23 Ennetamine
- 2.24 Varundamine
- 2.25 GRUBi parooliga kaitsmine
- 3 Kasutatud materjal
Sissejuhatus
Ajal mil alustasin tutvumist Linuxi/Unixi maailmaga, oli tegemist tunduvalt ohutuma ja sõbralikuma keskkonnaga. Viiruste ja rämpsposti levik polnud veel praegust jõudu saavutanud ning tulemüüri peeti müstiliseks uueks leiutiseks. Postiserverid suhtlesid omavahel muretult, ilma erinevate viiruste ja spämmitõrje deemoniteta. Tollal sai kooli serverites jälgida sisseloginud kasutajaid finger käsuga ning vajadusel nendega ka talk käsu abil vestelda. Serverite paroolid vedelesid märkmepaberile kritseldatult administraatori klaviatuuri all.
Need ajad on kahjuks lootusetult möödas ning interneti kuritegevusest on saanud sadade miljonite dollariline suurune äri. Igapäevaselt suunatakse serverite vastu loendamatul arvul rünnakuid. Paroolide õngitsemise katsed, portide pommitamised, DoS rünnakud jms. sündmused, milledega puutub kokku praktiliselt iga serverihaldur. Serverid on omamoodi digitaalsed varahoidjad, milledes peituva informatsiooni (enamasti ka tundliku) vastu paljud huvi tunnevad. Alates ülemaailmsetest häkkerite organisatsioonidest ja lõpetades asutuste endi töötajatega. Seega tuleb tundliku informatsiooni kaitsta nii välis- kui ka sisevaenlaste eest. Liiga suurte õigustega ning mitte piisavate teadmistega kasutaja suudab sageli teha suuremat kahju kui mõni miljonitest arvutitest koosnev botnet (nuhkvaraga nakatunud arvutid, mis moodustavad ühtse võrgu).
Mõni hetk tagasi oli aktuaalne teema VISA pangakaartidega, milledelt suuri summasid broneeritakse. Näitena toodud loos ei kopeeritud pangakaardi andmed, vaid murti sisse e-poe sisuhaldusesse ning varastati vajalik informatsioon. Serveritele ligipääsuks piisab ju interneti ühenduse olemasolust. Võrku ühendatud arvutite, ning ka mobiilsete seadmete osakaal aina kasvab. Tõsi küll, serveri ründel kasutatakse siiski pigem kiire püsiühendusega arvuteid või siis nuhkvaraga nakatunud arvutivõrke. Tuleb seejuures rõhutada, et 100% turvalist süsteemi pole võimalik ehitada. Piisavalt sihikindel ning laialdaste teadmistega ründaja jõuab tõenäoliselt alati eesmärgile. Samas aga on võimalik rakendada turvameetmeid, mis pidurdavad ka kõige osavamaid ning hoiavad süsteemist eemal kõik vähem motiveeritud ning rumalamad häkkerid.
Töötava süsteemi turvalisena hoidmine nõuab pidevat inimtööd. Vaja on jälgida turvauuenduste nimekirju ning end kursis hoida kasutatud tarkvara suurimate aktuaalsete turvaprobleemidega. Tähelepanuta ei tohiks ka jätta igapäevaseid serveri raporteid! Turvarisk võib pidada ka serveri liigset keerukust. Süsteem, mis koosneb paljudest erinevatest tarkvaralistest komponentidest, on haldajatele ka keerukam hallata. Näiteks jooksutatakse väikeses asutuses tihti mitut serverit (erinevate teenuste tarbeks), kuigi piisaks vaid ühest masinast. Ühtlasi kasutatakse keerulisi rakendusi lihtsamate ülesannete täitmiseks. Tihti on selleks olemas lihtsamad ja mõistlikumad alternatiivid, mille konfigureerimine ja käigus hoidmine palju lihtsam - seega ka turvalisem.
Serveri kaitse
Spekulandid ütlevad, et välised ohud serverile (häkkerid, kräkkerid, botnetid jms) on vaid 10%. Ülejäänud 90% on masina enda kasutajad, loodusõnnetused (elektrikatkestused, kettarikked, üleujutused) ja administraatori hooletusest juhtunud apsakad.
Looduslikud jõud
Elekter on tuntud probleemide allikas ning Eesti tingimustes esineb nii üle- kui alapingeid ja voolukatkestusi. Reeglina garanteeritakse elektri kättesaadavus mingites piirides, ütleme 97% ajast ja teatavate lubatud pingekõikumiste raames. Arvuteid võivad mõjutada ka muud häired elektrivõrgus: kõrvalekalded sinusoidsest lainekujust, häired sageduses, äkilised ülepinged (äike). Seetõttu on soovitatav seadmeruume ja seadmeid varustada katkematu toitepinge allikatega (UPS), elektrigeneraatorite jms. seadmetega, mis kaitsevad tehnikat elektrivoolu probleemide eest.
Sagedasti paigutatakse serveriruum just nimelt kedrikorrusele. Mitmeski mõttes on see väga halb mõte. Keldrites on suhteliselt palju niiskust, ning veetoru lõhkemise oht ka suurem kui mujal. Varumeetmed tuleb kasutusele võtta, kui tõesti keldrikorrus ainule mõeldav asukoht IT ruumiks. Serveriruumi tuleks ka paigutada tulekustutus-süsteemid. Kuna tulekustuteid on mitmesuguseid, siis oleks soovitatav elektroonikaseadmete kustutamiseks kasutada CO2 sisaldusega balloone, mis ei tee otsest kahju riistvarale.
Hea uuenevusega Operatsioonisüsteem
Serveriks tuleks valida hea uuenevusega operatsioonisüsteem, millele tehakse turvavigade avastamisel kiirelt ka turvapaigad. Geniaalseid häkkereid on paraku vähe ning suurem hävitustöö tehakse nende "häkkerite" poolt, kes kasutavad ära teiste leitud turvaauke või ka kolmandate loodud programmikesi. Sama reegel kehtib ka kasutatava tarkvara juures. Soovituslik on kasutada enam levinud ja laiema kasutajatoega tarkvara, nagu näiteks Apache, Bind, OpenSSH jne...
OP süsteemiks sobiks kõige paremini Linuxi/Unixi distributsioon, mis on peale paigaldamist minimaalse tarkvaraga (näiteks Archlinux, Gentoo, Debian, FreeBSD, OpenBSD). Tarkvarad toimivad tänu teistele rakendustele ja moodulitele (programmid ja teegid), mida tuleb samuti turvalisuse huvides uuendada. Kindlasti pole X aknahalduri koht serveris, seega tuleks vältida tööjaamaks mõeldud distributsioonide kasutamist serverina (nagu näiteks Ubuntu, Suse, Mandriva jne.).
Ühtlasi tasuks ettevaatlik olla serveri automaatsete uuendustega. Kuna rakendustel on enamasti sõltuvusi, siis võivad programmi tihti ka katki minna (mõni rakendus nõuab vanemat versiooni sõltuvusest, mida olude sunnil siiski uuendati).
Turva-listid
Nagu sissejuhatuses mainitud, tuleks turvalisuse huvides jälgida turvaliste, kus käib elav arutelu turvavigade avastamiste ja lappimiste ümber. Näiteks saab uurida, mis tarkvarad on olnud ebaturvalised:
http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=proftpd
http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=vsftpd
http://cve.mitre.org/cgi-bin/cvekey.cgi?keyword=pureftpd
Snort ja IPS/IDS lahendused
Turvalisuse spetsialistid soovitatavad kasutada IPS (Intrusion Prevention System) lahendusi, nagu näiteks Snort. Rakendus peab logi kõikvõimalikest rünnakukatsetest serveri vastu, kuid ei tea õnnestumiste/ebaõnnestumiste kohta midagi öelda. Seega suudab Snort genereerida palju infot, millest kasuliku info väljanoppimine võib osutuda vaevarikkaks. Selliste lahenduste rakendamisel tuleb aga olla ettevaatlik, sest suures võrgus (paljude masinaid) võib Snort pigem eksitada. Küll aga on tegu tõhusa vahendina leidmaks sisevõrgus viirustega nakatunud masinaid.
Märksa kasulikuma tulemuse annab IDS süsteemide juurutamine, nagu näiteks SnortInline. Tegemist on lahendusega, mis peale rünnakukatse tuvastamist selle katse enne serverini jõudmist reaalselt ka blokeerib. Paraku on aga reeglite loomine nii IPS kui IDS süsteemidele keerukas ning ajakulukas töö. Ühest küljest on vaja luua pädevad reegleid, mis logiksid vaid asjakohast infot, teisalt aga ei tohi reegel kasutajaid häirida, ega sulgeda põhjuseta kahtlaseid ühendusi.
Cert on algatanud kogunisti projekti S4A, mis kujutab endast võrguliikluse analüsaatorit ja ründeprofiilide baasil loodud lahendust, mis koondab Riigi Infosüsteemide Arenduskeskuse (RIA) kätte reaalajas pildi igas võrgus aset leidvatest avastatud turvarikkest. Sedasi saab RIA infoturbeintsidentide käsitlemise osakond CERT vastava võrgu administraatorit probleemidest operatiivselt teavitada.
Tulemüürid
Ka tulemüüril on serveris väga oluline roll. Tema ülesandeks on piirata ja blokeerida kõiksuguseid soovimatuid ühendusi. Tulemüüri seadistamiseks on enamasti kaks võimalust:
1. lubada kõik ühendused, keelata valitud 2. keelata kõik ühendused, lubada valitud
Teine meetod tagab rohkem turvalisust, sest tulemüüri reeglid on rangemad. Tänapäeval on levinud Linuxi/Unixi maailmas kaks tulemüüri (iptables ja pf). Iptables on keerulise süntaksiga, mistõttu on tema seadistamisel vigade tekkimise tõenäosus suurem. Tegu on kasutu tulemüüriga, kui ta oma eesmärki valesti täidab või ei toimi sootuks üldse. PF on populaarsem just oma konfigureerimisvõimaluste ja lihtsuse pärast.
Iptable’i kahjuks räägib ka asjaolu, et tabelite/nimekirjade kasutamine on väga keeruliselt lahendatud. IP aadresside nimekirjast ahelate loomine muudab tulemüüri aeglaseks. Kui tabelid on mahukad, siis oleks otstarbekas lahendus IPSet nimekirjade kasutuselevõtt, mis tuleb eraldi lisana paigaldada.
SSH Ründed
Serverid on pidevalt rünnakute all. Üks tüüpiline SSH paroolide ära arvamise rünne:
Nov 19 00:00:20 kurelaane sshd[86169]: Failed unknown for illegal user bonnie from 193.225.84.1 port 45881 ssh2 Nov 19 00:04:45 kurelaane sshd[86231]: Failed unknown for illegal user boot from 222.122.45.110 port 58914 ssh2 Nov 19 00:07:32 kurelaane sshd[86279]: Failed unknown for illegal user boootz from 24.111.1.78 port 35300 ssh2 Nov 19 00:09:49 kurelaane sshd[86309]: Failed unknown for illegal user boru from 62.183.105.164 port 48719 ssh2 Nov 19 00:12:30 kurelaane sshd[86370]: Failed unknown for illegal user boss from 72.252.248.111 port 52331 ssh2 Nov 19 00:13:00 kurelaane sshd[86374]: Failed unknown for illegal user boston from 210.51.25.156 port 34069 ssh2
Selle vastu aitab tulemüürist liiga sagedate sisselogijate IP aadressi blokeerimine. FreeBSDs on see võimalik puhtalt packet filteri (pf) vahenditega. Sama poliitikat võib rakendada ka veebiserverite, andmebaasiserverite jms teenuste puhul.
mod_security
Üks häkkimise viise on ohtlike programmide sikutamine serverisse. Selleks on vajalik serverist teha GET päring, mis programmi alla tõmbab. Ka seda on võimalik piirata. ModSecurity näol on tegemist veebiteenuse tulemüüriga (Web Application Firewall - WAF) ja IDS/IPS lahendusega, mis filtreerib veebilehtedele tehtavaid päringuid ja püüab tõkestada sedasi rünnakuid serverile.
Sisevõrk (backnet)
Suurema serveripargi puhul soovitatakse eraldada sisevõrk välisvõrgust, et kõik serverid poleks internetist nähtavad ning avaliku IP küljes. Sisevõrgus saab kasutada kohtvõrgu aadresse (nagu 192.168.0.0/8 või 10.0.0.0/8), kus toimub serverite omavaheline suhtlus (näiteks veebiserveri ja andmebaasiserver). Samuti võiksid sinna ühendatud olla kaughaldusmoodulid. Mitte mingil juhul ei tohiks sisevõrk olla ühendatud kuidagi reaalse võrguga (ka mitte üle NATi).
Isegi kui serverite ees asetseb juba võimas filtreeriv tulemüür ei tee paha omada ka lisaks kõigil masinatel oma personaalseid tulemüüre. See välistaks asjaolu, et ründaja kes on juba esimesest tulemüürist mööda pääsenud võiks vabalt möllata selle taguses võrgus.
Teine lahendus on kasutada kavalamaid võrgu jagamisseadmeid, ning määrata igale serverile oma VLAN. See muudab aga kogu seadistuse suure masinapargi puhul liiga keerukaks.
Aktiivne ja passiivne monitoorimine
Nagiosi nimeline rakendus võimaldab jälgida teenuste ning serverite kättesaadavust. Ühtlasi toetab ta mitmesuguseid levinud teenuseid (SMTP, IMAP, HTTP, FTP, DNS) ning võimaldab seirata ka serveri "sisemist" infot (nagu koormus, kettamaht, protsesside arv jms) ning saata välja teavitusi probleemide avastamise korral. Tänu mallidele on seadistamine ülimalt lihtne. Esmalt saab defineerida üldmalli, mida seejärel teistes seadistustes direktiivina kasutada. Sedasi on konfiguratsioon kergemini loetav ja muudetav.
Nagiosile on kirjutatud mitmeid lisasid, mis teevad halduri või administraatori elu tunduvalt lihtsamaks. Nagu näiteks mailgraph, snmp plugin.
Serveritest joonistab kõikvõimalikke graafikuid Munin. Tegu on monitoorimise tarkvaraga, mis teenuste tööst ja süsteemi parameetritest graafikuid genereerib. Tegu on jällegi lihtsalt seadistatava ja paindliku rakendusega. Üks Munini suurimaid eeliseid teiste ees on suur lisamoodulite kogu. Graafikute genereerimine toimub läbi RRDTool rakenduse. Munin on master-node arhitektuuriga. Ehk siis - master (server) käivitub teatud intervalli (vaikimisi iga viie minuti) tagant ja ühendub node’idega ning küsib neilt vastavalt konfiguratsioonile infot. Andmed salvestatakse serverisse, millede alusel omakorda graafikafailid genereeritakse.
Kasutajad
Nii uskumatu kui see ka poleks, on üheks olulisemaiks ohufaktor serveris kasutajad. Kasutajatele ei teadvustata endale, kui oluline on oma identiteeti kaitsta. Lihtsamalt öeldes, peaks kasutaja valima turvalise parooli, mida mitte mingil juhul paberile ei märgita ja teistega ei jagata. Tihtipeale ollakse aga veendunud, et parooliks piisab märkidejadast “123456789” või ka “qwerty”. Paroolis ei tohiks kindlasti kasutada kasutajaga seostuvaid andmeid (isikukood, telefoninumber, aadress, nimi, auto numbrimärk, laste nimed jne). Liiga pikka parooli on samas raske meelde jätta, mille üles märkimisel on võib see kergesti kaotsi minna. Paroolide nõrkuse kontrollimiseks saab süsteemihaldur nii mõnegi meetodi kasutusele võtta: määrata reeglid, mis ei luba kasutajal sisestada liiga lihtsat parooli (nõuded: miinimum pikkus, suured tähed ja numbrid või ka kirjavahemärgid) ning vajadusel kontrollida oma süsteemi paroole john the ripper’i nimelise rakenduse abil, et leida nõrgad paroolid.
Serveri superkasutaja (root) parooli ei tohiks kellegagi jagada. Kui mõni kasutaja vajab rohkem õiguseid (näiteks mõne deemoni töö peatamiseks või taaskäivitamiseks), on targem jagada kasutajale vastavad õigused SUDO tarkvara abil. Serverile tuleb ka kasuks, kui süsteemi ei saa otse siseneda root kasutaja ja parooliga, vaid ainult läbi serveris oleva kasutaja (kes on määratud ka wheel gruppi). FreeBSD serverites on see sedasi juba vaikimisi. Linuxis tuleb see aga soovi korral seadistada.
Mandatory Access Control ja GRSecurity
Mandatory Access Control (mandatoorne pääsupoliitika) ja GRSecurity on head vahendid kasutaja õiguste piiramiseks. Sedasi on võimalik välistada, et kasutajad pääseksid ligi serveri kriitilistele teenustele. GRSecurity lubab määrata minimaalse toimingute konfiguratsiooni, mida kasutajatel ja teenustel serveris teha lubatakse. Sel juhul otsustab lubamise ja keelamise üle operatsioonisüsteemi tuum ise.
Teenuste ja võrguühenduste jälgimise piiramine
Unixi/Linuxi süsteemide probleemiks võiks nimetada asjaolu, et seal salastatakse vaikimisi väheseid toiminguid. Iga kasutaja saab näiteks “ps aux” käsuga vaadata kõiki töös olevaid protsesse, või siis “sockstat -4” ja “netstat -anto” käskudega uurida teenuseid ning nende loodud võrguühendusi. Mooduli mac_seeotheruids rakendamisel saab selliseid võimalusi piirata.
Lisaõigused
Unixite ja Linuxite maailmas kehtivad kaustadele ja failidele omad reeglid. Neid defineeritakse kolme grupi alusel (omanik, grupp ja kõik ülejäänud) binaararvuna. Iga grupp koosneb kolmest õigusest: lugemine (read), kirjutamine (write), käivitamine (execute). Binaararv 0 annaks 0 õigust, samas 7 kõik õigused.
Kui nendest jääb väheseks, siis on ka lisavõimalused. POSIX (Portable Operating System Interface for Unix ) on IEEE poolt sätestatud standardite kogum, mis määrab ära aplikatsioonide programmeerimise liidese (application programming interface) (API) koos käsurea (shell) ja utiliitide liidestega kõikide Unix/Linux operatsiooni süsteemidega ühilduva tarkvaraga. POSIX standardeid toetavad Unix suguvõsa süsteemid omavad lihtsat kuid võimsat failisüsteemi õiguste mudelit: iga failisüsteemi objekt on seotud kolme komplekti õigustega, mis määravad ligipääsu objekti omanikule, omavale rühmale ja teistele. Iga komplekt võib sisaldada lugemise (R), kirjutamise (W) ja käivitamise (X) õigust. See skeem kasutab ainult 9 bitti iga objekti jaoks. Lisaks neile kasutatakse erijuhtudel ka Set User Id, Set Group Id, ja Sticky bitte.
Kui tahetakse objektile seada keerulisemad ja mitmekesisemad õigused võetakse appi ACL (Access Control List), mis on nimekiri ühe objektiga seotud õigustest. Selle abil saab kindlale kasutajale ja grupile teha juurde lisaõigusi.
Süsteemifailide õigused
Ka serverile oluliste failide ja kaustade õiguseid ei tohiks tähelepanuta jätta. Kui kasutajad saavad serveris ringi kolada, võivad nad peale sattuda ka delikaatsetele konfiguratsioonifailidele. Aegajalt võib neis ka mõnda parooli kohata, mida teatud teenus teiste masinatega suhtlemiseks vajab.
CHROOT
Paljud ründed saavad teoks tänu sellele, et ründajad saavad rakenduse üle kontrolli ning sunnivad seda süsteemiga manipuleerima. Chroot aga lukustab protsessi juur- failisüsteemis mingisse kindlasse kausta, ning sealt see ilma administraatori loata välja tulla ei saa. Mõned teenused (tinydns, dnscache, vsftpd) sisaldavad juba enda sees chrootimise võimalust.
Jail
Jail on põhimõtteliselt virtuaalmasin, mille sees olevad programmid ja kasutajad väljaspool asuvat reaalset süsteemi ei näe. Sellisest võimalusest on eelkõige kasu erinevate kriitiliste rakenduste eraldamiseks põhisüsteemist.
Apache on laialt levinud veebiserveri teenus, millele võiks luua eraldi "virtuaalset juurkataloogi", mis peab sisaldama kõiki programmi tööks vaja minevaid faile. Sellist struktuuri luua on üsnagi tülikas: käivita programm, loe veateateid, kopeeri puuduvaid faile, alusta algusest. Uuenduste paigaldamisel kordub kõik taas.
Jaile kasutatakse laialt ka virtuaalserverite puhul, kus kliendile antakse oma osa ja seal võib ta superkasutaja (root) õigustega tegutseda, ilma et see ohustaks reaalse süsteemi turvalisust. Jail erineb põhisüsteemist selle poolest, et ta on eelnimetatu limiteeritud osa. Näiteks pole võimalik lisada uusi IP aadresse võrgu liidestele, nagu la luua uusi võrguseadmeid. Jaili tuum on sama, mis põhisüsteemil.
FreeBSD jailid omavad peamiselt kolme eesmärki:
* Virtualiseerimine : Iga jail on virtuaalne keskkond mis omab tema enda faile, protsesse, kasutajaid ning administraatori kasutajaid. Seejuures on töötav keskkond (peaaegu) eristamatult sarnane reaalsel raual käivitatud operatsioonisüsteemiga. * Turvalisus : Iga jail on eraldatud teistest andes sedaviisi lisa turvalisuse kihi. * Delegeerimise lihtsus: Administraatoritel on lihtne ja valutu delegeerida erinevaid ülesandeid, mis vajavad administraatori õigusi, samas ilma kogu süsteemi kontrolli jagamata.
mpm_itk
Tegu on mooduliga, mis jooksutab igat veebirakendust kasutaja õigustes. Kui kasutajal pole luba võõrasse kausta kolama minna, siis ei saa seda teha ka veebirakendus. Kunagi olid populaarsed PHP skriptid, mis suutsid mööda kaustapuud liikuda teiste kasutajate kodukataloogi ning seal olevate failide sisu kuvada.
PHP_käivitamine_kasutaja_õigustes#MPM-ITK
ARP mürgitamine
ARP tabelite mürgitamine on üks viis info õngitsemiseks. Sisevõrgus käivitatakse arvutis programm, mis sunnib kogu võrguliikluse läbima seda sama masinat. Paljud ühendused on sisevõrgus krüpteerimata, mistõttu saab sedasi kõikvõimalikke paroole, kirjade sisu ning muudki tundlikku informatsiooni. Sellise võimaluse välistamiseks on vaja võrk rangelt seadistada ning jälgida ARP’i mürgitamist arpwatch nimelise rakendusega.
Failisüsteemi õiguste piiramine
Linuxi/Unixi laadsed lubavad partitsioonidele määrata õiguseid, nagu näiteks käivitamise (noexec) luba. Paraku peetakse seda siiski lapselukuks, sest tõelist häkkerit see kaua kinni ei pea. Küll aga on häkkeri jaoks takistus, mis samuti vajab ületamist
Krüpteering
Võimalusel tuleks alati kasutada krüpteeritud ühendusi. Logida serverisse vaid OpenSSH vaheldusel, vaadata veebilehti üle HTTPS protokolli, kasutada IMAPi üle SSL ühenduse jne. Alati ei kasuta serveri tarkvarad krüpteerimist, küll aga enamusel on see konfiguratsioonifailist võimalik sisse lülitada.
Tarkvara jaoks mis ei toeta krüpteerimist võib kasutada Stunnelit või OpenVPN ühendust. Ka tasuks jälgida, et võtmete tugevus oleks vastav. (2011 seisuga on soovituslik kasutada 2048-bitist RSA võtit).
FTP protokolli tuleks vältida oluliste failide kopeerimisel. SCP ei jää mingis mõttes FTP’le alla, küll aga on turvaline.
parooliga logimise keelamine (logimine ainult võtmega)
SSH protokolli peetakse üle maailmselt väga turvaliseks ning seetõttu on ta ka ülimalt populaarne. SSH vahetab esmakordsel klientseadme ja serveri ühendamisel võtmed, mille pahalased saavad pihta panna. Sellise riski välistamiseks viiakse võtmed isiklikult serverini, või siis saadetakse läbi alternatiivsete kanalite, kus need võtmed jalutama ei lähe. Sedasi on järgmised korrad SSH ühenduses totaalselt turvaline.
Konfiguratsioon ja rakendused
Serveris tuleks üle kontrollida hoolikalt mis teenused töötavad ja kõiksugused üleliigsed ära korjata. Teenuste seadistamisel tuleb jälgida, et teenused kuulaksid õigetel võrguseadmetel. Näiteks Samba tohib kuulata vaid sisevõrgu liiklust (võrgukaardi pordist). Kui veebi ja andmebaasiserver asuvad samas masinas, siis tuleks seadistada MySQL kasutama vaid socketeid. Võimaluse korral tuleks teenused tööle laskma ainult kindla kasutaja õigustes. Superkasutaja (root) õigustes käivitatud teenusel on seevastu luba kõiksuguseid muudatusi süsteemis teha (eeldusel, et koodis on viga või rakendus sedasi toimibki). Ühtlasi tuleks vananenud tarkvara tuleks viivitamatult eemaldada.
Ennetamine
Panna ennast ründaja "nahka" ja skaneerida oma serverit väljast poolt nmap või nessus jms. turvaskännerite abil.
Suurtes paljude kasutajate ja veebidega serveris ei tee paha aegajalt viirusetõrjega kettal asuvaid veebifaile skaneerida. Palju pahandust võib sealgi juhtuda, eriti kui kasutaja baas on suur ja kasutusel on mitmeid suuremahulisi veebirakendusi.
Varundamine
Paraku ei saa garanteerida 100%-list turvet, ning arvestada tuleks ka tagajärgedega. Seevastu igaöine varundamine ja korralik varundamispoliitika aitavad peale rünnakut või süsteemi hävingut seda tõhusalt ja kiirelt taastada. Süsteemi töökindluse ja turvalisuse vaatenurgast on varundamise tõhusus ja korraldatus väga olulise väärtusega.
Tark mõte oleks varundada ka logisid, millest võib ründe puhul kasu olla süsteemi ründamisel kasutatud meetodite kohta.
GRUBi parooliga kaitsmine
Paljudel ettevõtetel puudub serveriruum, millele oleks ligipääs ainult volitatud isikutel. Tihti asub see server kontoriruumis, millele on vaba juurdepääs kõikidel töötajatel. Sellisel puhul tasuks GRUBi (GRand Unified Bootloader) parooliga kaitsta. Sedasi pole teatud alglaadimise valikuid ilma parooli sisestamata valitavad (nagu näiteks recovery režiim).
Kasutatud materjal
Riskianalüüs
http://shadowcat.planet.ee/Kooli_asjad/Sys.hald/KONSPEKT-Riskianal%FC%FCs.PDF
FreeBSD jail
http://kuutorvaja.eenet.ee/wiki/FreeBSD_jail
Unofficial FreeBSD Security Checklist / Links / Resources
http://forums.freebsd.org/showthread.php?t=4108
Securing Services
http://www.gentoo.org/doc/en/security/security-handbook.xml?part=1&chap=10
The OpenBSD Packet Filter
GRSecurity
http://www.gentoo.org/proj/en/hardened/grsecurity.xml
mod_chroot
http://www.faqs.org/docs/securing/chap29sec254.html
POSIX õigused (ACL)
https://wiki.itcollege.ee/index.php/POSIX_%C3%B5igused_(ACL)
Kustutid
http://www.tamrex.ee/et/tuleohutus/tooted/tulekustutid/co2-kustutid.html