Kohtvõrgu rajamine ja turvamine kasutades vabasid vahendeid
Sissejuhatus
Käesolev õppematerjal käsitleb kohtvõrgu rajamist ning turvamist kasutades Linux-põhiseid operatsioonisüsteemie (Ubuntu, Debian, jms). Tulemüüri vahenditest on kaetud netfilter ja iptables. Sisevõrgu DHCP-serverina ning DNS-vahemäluna on välja toodud dnsmasq. Räägitakse võrguliideste sildamisest bridge-utils abil. Kaughalduse teemas puudutakse põgusalt OpenSSH-d.
Virtuaalprivaatvõrkude teemas kaetakse tunneldamine alamvõrkude vahel kasutades OpenVPN-i TUN-režiimi, virtuaalse kommutaatori loomist OpenVPN-i TAP-režiimi abil ning ka pordi edasisuunamist OpenSSH abil. Erinevates vahendites kasutatava krüptograafilise võimekuse võtab kokku OpenSSL.
Õppematerjalid kättesaadavad siinsamas veebis 1 Creative Commons Attribution 3.0 2 litsentsi all. Materjalid valmisid Euroopa Struktuurifondide toel "Praktiline küberkaitse IT süsteemide administraatoritele" projekti raames 3. Koolituse läbi viimiseks on juhend saadaval 4 käesoleva materjali täiendamine on teretulnud Github vahendusel 5.
Esialgne topoloogia
Alustame minimaalse võrgutopoloogiaga kuhu on lülitatud: Debianipõhine marsruuter (router) vahendab Internetist pakette kohtvõrku ning vastupidi. Ubuntupõhine veebiserver (web server) teenindab võrgurakenduse kasutajaid. Kommutaator (switch) vahendab pakette kohtvõrgu masinate vahel:
Kasutame Debian või Ubuntu põhiseid masinaid, sest mõlema puhul on tegu avatud lähtekoodiga ning vaba tarkvaraga. Debiani näol on tegemist ühe kõige vanema ning küpsema GNU/Linux tarkvara kogumikuga (distribution). Ubuntu puhul on tegemist Debiani edasiarendusega, mis on mitmeid aastaid juba kõige populaarsem valik tavakasutajate seas säilitades seejuures suures osas ühilduvuse Debianiga.
Koodinäited eeldavad, et on paigaldatud võrdlemisi hiline Linux-i tuuma (kernel) väljalase ning iproute2. Debian 7.0 (Wheezy) ning Ubuntu 12.04 LTS (Precise Pangolin) peal on koodinäited ka testitud. Sobiv peaks ka olema mitmesugustele marsruuteri karbitoodetele pakendatud tarkvara OpenWrt, küll aga tuleks tähelepanu pöörata sellele, et näiteks OpenWrt tulemüürireeglid on paigutatud eraldi failidesse, omamoodi süntaksiga.
Enne OpenVPN tunnelite seadistamist tuleks käima saada:
Marsruuteri masin peaks sisevõrgule IP-sid välja jagama DHCP-ga
Marsruuter peaks oskama lahendada domeeninimesid
Töölauamasin peaks aadressi küsima DHCP abil
Veebiserverile anda staatiline IP aadress
Marsruuterisse peaks saama sisse logida paroolita
Välisvõrgust tulles marsruuteri avalikule pordile 80 suunataks paketid edasi veebiserverisse
DNS ja DHCP teenused on nähtavad ainult sisevõrgust
Abiks on järgmine lugemismaterjal:
Võrguteenused ehk OSI mudel
iproute2 ehk Linux-i võrguliideste seadistamine.
Masinale staatilise IP-aadressi seadistamine.
Masinale dünaamilise IP-aadressi seadistamine.
OpenSSH ehk kaughaldus
dnsmasq ehk kaks-ühes DHCP ja DNS server
Linuxilistes on tulemüür realiseeritud kahe komponendina. Kerneli koosseisu kuuluva osa nimeks on netfilter ning Käsurearakendiks on iptables mis manipuleerib kerneli käsutuses olevaid reegleid. Käesoleva materjali valimimisel olid abiks mitmed materjalid. 6 7
Site-to-site tunnel
Kui sisevõrk toimib on aeg seadistada OpenVPN tunnel kahe marsruuteri vahele nii et kahe sisevõrgu vaheline liiklus liigub läbi krüpteeritud tunneli:
Abiks on järgnev:
Kahe alamvõrgu ühendamine kasutades OpenVPN-i ja staatilist võtit.
Sülearvutite ühendamine
Järgmine samm on seadistada teine OpenVPN-i instants pakkuma rändlusteenust sülearvutitele ning paika panna kiirusepiirangud:
Abiks on jällegi mõned lingid:
Sülearvutite ühendamine virtuaalprivaatvõrku kasutades OpenVPN-i ning avalik/privaatne võtmepaare.
Mitme masina ja alamvõrgu ühendamine PeerVPN abil.
tc ehk võrguliikluse kujundamine.
Domeenikontrolleri lisamine
Selles peatükis lisame võrku domeenikontrolleri:
Ruuterisse paigalduseks sobib OpenWrt, aga usinamad võivad ülal näidatud juhendite järgi Debiani ka marsruutima panna.
Domeenikontrolleri ning teenusserverid võib paigaldada ühte füüsilisse masinasse, kuhu võib paigaldada Debiani. Teenusserverite isoleerimiseks võib kasutada konteinereid. Eraldi konteinerisse paigalda Samba4 domeenikontrolleri.
Paigalda eraldi masinasse Windows 8.1 Professional ning Remote Server Administration Tools 8 ja liida masin domeeni ning kasuta Active Directory Users and Computers tarkvara domeeni haldamiseks. Paigalda eraldi masinasse Ubuntu MATE 15.04 seadista Kerberos ning liida tööjaam domeeni.
Failiserveri lisamine
Selles peatükis lisame Samba baasil failiserveri.
Eelnevas sektsioonis paigaldatud domeenikontrolleri masinasse võib eraldi konteinerisse paigaldada Samba4 failiserveri. Täiendavalt võib failiserveris Kerberiseerida OpenSSH.
Pilveserveri lisamine
Lisaks failiserverile võib paigaldada ownCloud pilveserveri eraldi konteinerisse.
Juhtmeta võrgu kontroller
Selles peatükis on lahti seletatud suurema juhtmeta võrgu rajamine kasutades vabasid vahendeid
Lugemismaterjali:
hostapd ehk juhtmeta kuumpunkti rajamine
bridge-utils ehk võrguliideste sildamine
Kokkuvõte
Koolitusel käsitletud marsruutimise ja kiiruse piiramise teemad võtab kokku järgnev joonis:
Misc
nmap ehk võrgu skanneerimine