VPN pomoću: OpenVPN-a

Izvor: SIS Wiki
Skoči na: orijentacija, traži

Bistrović Monika, Nonković Vanja, Patafta Danka, Petrović Anja

Sadržaj

Uvod

Pokraj tradicionalnih medija za komunikaciju, nalazi se i internet, koji danas postaje najčešće sredstvo komunikacije između ljudi. Iako je do nedavno glavni način prijenosa informacija i komonukacije bio telefon, pošta itd., razvojem interneta dolazi do razvoja različitih tehnologija, a jedna skupina su i tehnologije koje omogućavaju stvaranje sigurnog tunela između sudionika u komunikaciji. Mnoga poduzeća danas djeluju na više lokacija sa više poslovnica, što zahtijeva siguran prijenos podataka i sigurnu komunikaciju između lokacija.

Stoga dolazi do pojave virtualne privatne mreže koja će omogućiti sigurnu komunikaciju bez mogućnosti promjene ili brisanja podataka koji se šalju. VPN ima određene prednosti u odnosu na druge metode, pa je stoga danas jedna od češće korištenih tehnologija za osiguravanje privatnosti prilikom slanja podataka. VPN mreže omogućuju spajanje LAN (engl. Local Area Network) mreža pojedinih lokacija, i stvaranje jedne jedinstvene WAN (engl. Wide Area Network) mreže.

--Monika.bistrovic 18:28, 15. siječnja 2013. (CET)

VPN

VPN (engl. Virtual Private Network) tehnologija predstavlja jedan oblik WAN mreže, odnosno privatnu virtualnu mrežu koja omogućuje mrežno povezivanje lokacija veče udaljenosti. VPN omogućava učinkovitije dijeljenje datoteka, video konferencije te sve ostale usluge koje je moguće provesti preko interneta.

VPN je danas popularan način korištenja javne telekomunikacijske mrežne infrastrukture za povezivanje mreža i sigurno pristupanje mrežama. Pritom se ne mora nužno koristiti VPN, već je moguće i dijeljenje ATM mreže, korištenje privatnih mreža ISP-a itd. Povezivanje mreža i sigurno pristupanje mrežama može se postići na nekoliko načina (šifriranje, dekriptiranje, autentikacijski promet itd.). VPN se često povezuje sa IPSEC-om (engl. IP Security), standardom za uspostavljanje VPN komunikacije na mrežnom sloju. Međutim IPSEC je vrlo kompliciran za uspostavljanje, te se ne može koristiti u svim situacijama. U takvim situacijama koriste se SSL (engl. Secure Sockets Layer) bazirani VPN sustavi. Jedan od njih je i OpenVPN koji se temelji upravo na SSL-u.

VPN najčešće koriste poduzeća sa nekoliko poslovnica, čiji zaposlenici moraju imati pristup svim podacima i programima poduzeća. U takvim slučajevima dolazi do stvaranja privatnog tunela koji će omogućiti sigurnije rukovanje podacima i programima nego što bi se ostvarilo preko javne mreže. VPN zapravo šalje podatke kroz mreže koje mogu biti nesigurne, međutim kroz tunel za komunikaciju i to u kriptiranom obliku.

U usporedbi sa drugim sličnim tehnologijama, VPN daje neke prednosti koje se posebno ističu kod bežičnog lokalnog umrežavanja. VPN stoga osigurava smanjenje troškova i skalabilnost mreže. Smanjenje troškova javlja se zbog toga što nema potrebe za vodovima koji će povezivati različite lokacije (npr. telefonska veza, internet veza). Skalabilnost mreže pak se postiže lakom dostupnošću VPN mreži, posebno na udaljenim i međunarodnima lokacijama gdje VPN nudi kvalitetnu uslugu i doseg.

Sam naziv privatne virtualne mreže govori da je ona virtualna i privatna. Virtualna znači da se ne radi o izravnim fizičkim mrežama između sudionika komunikacije, već samo virtualna veza koju osigurava VPN softver preko javne internet veze. VPN mreža je također privatna, što znači da samo članovi poduzeća povezani sa VPN softverom mogu pristupati podacima.

--Monika.bistrovic 16:06, 15. siječnja 2013. (CET)

Karakteristike VPN-a

VPN mreža djeluje kako bi zaštitila podatke koji se prenose između dvije mreže sa zajedničke infrastrukture između njih. Da bi VPN mreža bila učinkovita mora zadovoljiti sljedećih nekoliko ciljeva:

1. Povjerljivost podataka – zaštita podataka od neovlaštenog pristupa i promjene

2. Integritet podataka – jamstvo da sadržaj poruke nije mijenjan nakon slanja a prije primitka

3. Neosporavanje pošiljatelja – sprečavanje pošiljatelja da tvrdi da je poruka poslana, a zapravo nije

4. Autentičnost – poruka je poslana od strane autentičnog izvora i primljena od strane autentičnog odredišta

5. Enkripcija podataka – potrebno je odrediti vrstu enkripcije koja se koristi, a ukoliko se ne koristi VPN mreža neće biti učinkovita

6. Vrijeme provedeno u korištenju VPN tehnologije – neke VPN mreže imaju vremensko ograničenje njihova korištenja. Da bi mreža bila učinkovita mora omogućiti pristup korisnicima bilo kada, bilo gdje i neograničeno dugo

7. Cijena VPN usluge mora biti pristupačna

8. Dostupnost podataka - podaci moraju uvijek biti dostupni korisnicima

VPN mreža biti će učinkovita, ako se ostvare prethodno navedeni ciljevi uz pomoć softvera, hardvera, internetskih usluga te definirane sigurnosne politike. Sigurnosna politika definira odgovornosti, procedure i način upravljanja VPN mrežom kod nepredvidljivih situacija. Također ona mora odgovoriti na pitanja poput: Tko ima pristup serveru kada je glavni administrator nedostupan? Kako su zaštićeni kablovi? Kako je zaštićena WLAN mreža?

--Monika.bistrovic 16:24, 15. siječnja 2013. (CET)

Podjela VPN mreža

Razlikuju se dvije vrste VPN mreža: Site-to-Site i Remote access VPN mreže. Iako postoje dvije vrste VPN mreža njihovo podešavanje vrlo je slično pošto je potrebno instalirati istu aplikaciju. Ovisno o složenosti mreže koja se želi implementirati, ovisi i složenost podešavanja i instalacije.

--Monika.bistrovic 16:24, 15. siječnja 2013. (CET)

Remote access VPN

Remote access VPN ili mreža udaljenog pristupa je vrsta VPN mreže koja se najčešće koristi za sigurno povezivanje individualnih korisnika sa udaljenom računalnom mrežom. Ona omogućava siguran pristup korporativnim resursima uspostavom kriptiranog tunela preko interneta. Zahvaljujući sve većem razvoju interneta, poduzeća su u mogućnosti ekonomično i sigurno proširiti doseg svoje mreže bilo kome, bilo gdje i bilo kada. Pritom, korisnici mog pristupiti resursima mreže kao da su direktno priključeni na nju.

Primjer Remote access VPN [1]

Ovakav tip privatne mreže može koristiti na primjer poduzeće sa velikim brojem prodavača na terenu. Postoje dvije komponente potrebne za remote access VPN mrežu. Prva je server za pristupanje mreži, a druga instaliran softver na računalu korisnika. Server za pristupanje mreži traži od korisnika valjane podatke za prijavu, na temelju kojih server vrši autentikaciju.

Neke od osnovnih prednosti ovog tipa VPN mreže su sigurna komnikacija s pravima pristupa individualnim korisnicima (zaposlenicima, dobavljačima, partnerima), poboljšanje produktivnosti proširenjem korporativne mreže, smanjenje troškova komnikacije i povećanje fleksibilnosti. [4]

Primjer Remote access mreže dan je na slici desno.

--Monika.bistrovic 16:24, 15. siječnja 2013. (CET)

Site-to-Site VPN

Site-to-Site VPN ili mreža između lokacija je vrsta VPN mreže koja podrazumijeva povezivanje lokacija i računala koji zahtijevaju konstantan pristup određenoj lokaciji i obrnuto. Ovdje se veza uspostavlja preko javne mreže, poput interneta. Site-to-Site proširuje mrežu poduzeća kreiranjem računalnih resursa na jednoj lokaciji koji su dostupni i korisnicima na drugim lokacijama. Ovaj tip privatne mreže najčešće koriste poduzeća sa podružnicama na nekoliko različitih lokacija.

Primjer Site-to-Site mreže dan je na slici desno.

Primjer Site-to-Site [2]

Site-to-Site mreža može se pojaviti u jednom od dva oblika:

1. Intranet mreža – koristi se kada poduzeće ima jednu ili više udaljenih lokacija koje se žele pridružiti mreži poduzeća. U tom slučaju koristi se intranet VPN za povezivanje pojedinačnih LAN mreža u jednu zajedničku WAN mrežu.

2. Ekstranet mreža – koristi se kada se poduzeće želi povezati sa poslovnim partnerima, dobavljačima, kupcima itd. Ovdje se također povezuju pojedinačne LAN mreže. Prednost ovog tipa mreže je što omogućuje poduzećima siguran rad kroz zajedničko mrežno okruženje, ali sprječava pristup odvojenim intranet mrežama. U idealnim slučajevima, ekstranet mreža ne zahtijeva instalaciju VPN klijent softvera na svakom računalu, za razliku od remote access mreža gdje to nije moguće

--Monika.bistrovic 16:24, 15. siječnja 2013. (CET)

Koncepti mreže - protokoli i slojevi

U računalnim mrežama, protokoli definiraju način razmjene podataka. Postoji OSI model (Open Systems Interconnection), koji klasificira protokole u sedam slojeva. To su:

1. Fizički sloj, koji podrazumijeva slanje i primanje putem hardvera.

2. Podatkovni sloj, koji podrazumijeva izravnu komunikaciju između mrežnih uređaja unutar istog medija.

3. Mrežni sloj, koji podrazumijeva usmjeravanje, adresiranje, rukovanje pogreškama, itd.

4. Transportni sloj, koji podrazumijeva oporavak od „end-to-end“ pogreške i kontrolu protoka.

5. Sloj sesije, koji podrazumijeva uspostavu veza i sesija između aplikacija.

6. Prezentacijski sloj, koji podrazumijeva osiguravanje usluga za prevođenje značenja razmijenjenih podataka (te usluge mogu biti kompresija podataka, enkripcija, opis podataka) [Kurose, Ross, 2010, str. 54]

7. Aplikacijski sloj, koji podrazumijeva aplikacijski specifične protokole.

Ovi slojevi su poredani hijerarhijski. To znači da samo ako svi slojevi, od prvog do šestog, uspješno komuniciraju, se može postići razmjena podataka na posljednjem sloju.


Drugačiji pristup je korišten kod Interneta, koji se temelji na Internet protokolu (IP). IP paketi sadrže zaglavlja sa metainformacijama i podatke. Slojevi IP modela su:

1. Sloj veze, koji podrazumijeva OSI slojeve 1 i 2.

2. Mrežni sloj, koji se sastoji od mrežnog sloja OSI modela.

3. Transportni sloj, koji se sastoji od protokola poput TCP i UDP.

4. Aplikacijski sloj, koji podrazumijeva OSI slojeve 5 do 7. Protokoli u prethodnom sloju su osnova za protokole u ovom sloju, kao što su HTTP, FTP, itd.


Mrežni paket sastoji se od dva dijela: zaglavlja i podataka. Zaglavlje sadrži metapodatke o pošiljatelju, primatelju, i administrativne informacije za prijenos. Paketi se u Ethernet mrežama zovu okviri, a u kontekstu Internet protokola IP paketi. VPN softver uzima cijele pakete (sa zaglavljem i podacima), te ih „pakira“ u drugi paket. Pritom su svi podaci koji uključuju metapodatke (primatelj, pošiljatelj) kriptirani. Novi paketi se označuju novim zaglavljima koja sadrže metapodatke o VPN-u. Svi VPN softver sustavi razlikuju se samo u posebnom načinu pakiranja i kriptiranja podataka. [Feilner, 2006, str. 11]

--Vanonkovi 14:38, 19. siječnja 2013. (CET)

Tuneliranje

VPN tehnologija se često naziva tuneliranje. Baš kao što zidovi u tunelu štite promet u tunelu od planine, tako su i podaci u VPN vezama zaštićeni od Interneta. Slika desno prikazuje postupak tuneliranja. (Izvor: [Feilner, 2006, str. 12])

Prikaz tuneliranja


Postupak se odvija na sljedeći način. Na lokaciji A VPN softver kriptira podatke, šalje ih kroz tunel, te na lokaciji B dekriptira podatke. Podaci pritom mogu samo putovati do krajnje točke tunela. Informacije o tunelu, kao što su adrese krajnjih točaka, podaci i metode enkripcije te originalni paket se pakiraju zajedno u novi paket. Originalni paket je kriptiran, tako da je čitljiv samo onima koji imaju odgovarajući ključ. Novo zaglavlje sadrži adrese pošiljatelja i primatelja, kao i ostalih metapodataka koji su potrebni za cijeli postupak. Također, pri slanju podataka kroz tunel, količina podataka raste kod procesa „pakiranja“. To se naziva „overhead“, te označava metapodatke koje stvara svaki od slojeva pri ostvarivanju prijenosa, a koji se dodaju na korisne podatke.

--Vanonkovi 19:05, 15. siječnja 2013. (CET)

Protokoli na OSI slojevima

Tuneliranje se može događati na skoro svim slojevima OSI modela. Predložen standard za tuneliranje je GRE (General Routing Encapsulation) – to bi se moglo prevesti kao Enkapsulacija općeg usmjeravanja. Koncept GRE standarda je sljedeći. Zaglavlje protokola i zaglavlje isporuke dodaju se originalnom paketu, te se pakiraju u novi paket bez enkripcije. Zbog te jednostavnosti, ovaj model nudi mnoge mogućnosti, te se može reći da mu je najveća prednost upravo transparentnost. Za Linux sustav postoje mnoge implementacije GRE tuneliranja.

Protokoli na OSI sloju 2

Prednost enkapsuliranja paketa na ovom protokolu je ta, što tunel može prenositi pakete koji ne pripadaju IP protokolu. Pretpostavka je da se na sloju 2 pomoću VPN tehnologija mogu tunelirati bilo kakvi paketi. Razlikujemo četiri protokola koji se koriste na sloju 2.

Point to Point Tunneling Protocol

To je mrežni protokol koji osigurava siguran transfer podataka od udaljenog klijenta do privatnog servera poduzeća, kreiranjem VPN-a kroz TCP/IP podatkovne mreže. [TechNet, Microsoft] PPTP je produžetak Point-to-Point protokola, definiranog od strane IETF (Internet Engineering Task Force).PPTP vrši enkapsulaciju PPP paketa u IP datagramima za prijenos preko Interneta ili nekih drugih javnih mreža, a može se koristiti i u privatnim LAN-LAN mrežama. Sastavni je dio svih novijih Microsoft operacijskih sustava. PPTP sadrži podršku za VPN pomoću javne telefonske mreže (PSTN). PPTP pojednostavljuje i smanjuje troškove implementacije rješenja za udaljene ili mobilne korisnike jer pruža sigurnu i kriptiranu komunikaciju javnim linijama i Internetom. U svaku PPTP implementaciju su uključena tri računala – PPTP klijent, server s pristupom mreži i PPTP server. PPTP koristi GRE za enkapsulaciju, te može tunelirati IP, IPX (Internetwork Packet Exchange – protokol mrežnog sloja OSI modela) i ostale pakete kroz Internet. Glavni nedostatak je ograničenje da može postojati samo jedan tunel između komunikacijskih partnera u realnom vremenu. [Feilner, 2006, str. 13]


Layer 2 Forwarding Protocol

L2F protokol je protokol za tuneliranje neovisan o mediju, razvijen od strane Cisco System kompanije. Tunel stvara virtualnu point-to-point vezu između partnera u komunikaciji. Ovaj protokol tunelira okvire podatkovnog sloja u protokolima poput PPP ili SLIP (Serial Line Internet Protocol), čime omogućuje stvaranje VPN-a kroz javnu mrežu kao što je Internet. L2F se koristi i za provjeru autentičnosti korisnika pomoću RADIUS-a (Remote Authentication Dial-In User Service), dinamičku alokaciju adresa i kvalitetu usluge. Ovaj protokol ima mnoge značajke jednake PPTP protokolu, ali ima veliku prednost u tome što podržava više tunela. L2F

Layer 2 Tunneling Protocol

L2T protokol je prihvaćen kao industrijski standard, te je danas u širokoj upotrebi. Ovaj protokol je zapravo kombinacija najboljih karakteristika dva prethodna protokola – PPTP i L2FP. Može se reći da on služi kao proširenje za PPP, koji je pak važan dio VPN-a. tradicionalne dial-up mrežne usluge podržavaju samo registrirane IP adrese, što ograničava vrste aplikacija koje se implementiraju putem VPN-a. [CISCO] Kod L2T protokola to nije slučaj, već on podržava i neregistrirane, privatno postavljene IP adrese te veliki broj protokola. Zbog toga se mogu koristiti i Internet, i modemi, pristupni serveri itd. L2TP ima iste karakteristike kao i L2FP, ali i neke dodatne. Prednosti koje nudi su:

• Kontrola protoka

• AVP skrivanje

• Provjera autentičnosti tunela je opcionalna

L2T protokol ne sadrži vlastite sigurnosne mehanizme (tajnost, enkripciju), no često se implementira zajedno za IPsec VPN-om kako bi se taj nedostatak uklonio.

Protokoli na OSI sloju 3

Protokoli na ovom sloju vezani su uz IPsec tehnologiju, koja se može definirati kao skup protokola, standarda i mehanizama. Ova tehnologija je veoma kompleksna zbog širokog raspona definicija, specifikacija i protokola, što joj je i veliki nedostatak.

Na početku je IPsec razvijen kao standard Internet sigurnosti na sloju 3. [Feilner, 2006, str. 14] Može se koristiti za enkapsulaciju prometa na aplikacijskom sloju, ali ne i na mrežnom sloju. Jedan od nedostataka je što se mrežne adrese mogu prevesti samo uz ograničenja, a mrežni okviri i poruke prijenosa ne mogu biti prebačeni. S druge strane, IPsec koristi razne metode sigurnosti kao što su mehanizmi enkripcije, protokoli provjere autentičnosti itd.

Glavna prednost IPsec-a je to što se može svugdje koristiti, na skoro svim platformama, i kompatibilan je gotovo sa svime. Postoje dvije glavne metode IPsec-a:

1. Tunnel Mode. Ova metoda radi na sljedećem principu: cijeli IP paketi se enkapsuliraju u novi paket te se šalju na krajnju točku tunela. Tamo se taj paket otpakira uz pomoć VPN softvera, te se proslijeđuje primatelju. Velika prednost te metode je što na taj način svi metapodaci ostaju zaštićeni.

2. Transport Mode. U ovoj metodi se samo korisni podaci kriptiraju i enkapsuliraju. Taj način ima i svoje prednosti i nedostatke. Prednost je ta što je „overhead“ (objašnjen u ranijim poglavljima) mnogo manji nego što je u prvoj metodi. Nedostatak je što, ukoliko dođe do napada, vrlo lako se mogu izvući metapodaci te doznati sudionici komunikacije.

Protokoli na OSI sloju 4

VPN tuneli također mogu djelovati na aplikacijskom sloju, pri čemu se koriste SSL (Secure Sockets Layer) i TLS (Transport Layer Security). SSL je protokol koji služi za siguran prijenos privatnih podataka putem Interneta (u preglednicima, e-pošti itd.) SSL protokol koristi asimetričnu kriptografiju kojom se razmjenjuju ključevi – javni ključ je poznat svima a privatni je poznat samo primatelju poruke. TLS je protokol kojim se osigurava privatnost u komunikaciji, tj. vodi računa o tome da poruke u komunikacijskom kanalu ne budu prisluškivane ili mijenjane od neke treće strane. TLS se može smatrati sljedbenikom SSL-a, te ovaj protokol također koristi metode enkripcije u svom djelovanju. Korisnik može pristupiti VPN mreži koristeći vezu između klijenta i VPN servera, kao što to rade web preglednici sa svojim serverima. Korištenjem tih sigurnih veza koju omogućuje preglednik, korisnici mogu spojiti mrežne diskove i pristupiti uslugama udaljene mreže. [Feilner, 2006, str. 15] Pomoću enkripcije prometa korištenjem SSL/TLS mehanizama postiže se sigurnost, pa se može reći da je taj postupak veoma pouzdan.

OpenVPN se može opisati kao novo VPN rješenje koje implementira veze sloja 2 i sloja 3, te koristi SSL/TLS za enkripciju. Isto tako kombiniraju se gotovo sve važne značajke prije spomenutih VPN rješenja.

--Vanonkovi 19:05, 15. siječnja 2013. (CET)

OpenVPN

"OpenVPN je programski paket otvorenog koda koji se koristi za implementiranje virtualnih privatnih mreža." [5]

OpenVPN je najčešće korišteni protokol za osiguravanje transakcija na internetu, poput e-bankarstava ili e-kupnje, a najnovija inačica koja se može koristiti izdana je u prosincu 2011. godine. OpenVPN je jednostavan za učenje, razumijevanje i implementaciju.

Neke od osnovnih prednosti OpenVPN-a su sljedeće:

1. OpenVPN moguće je implementirati na svim operativnim sustavima

2. Tuneliranje bilo koje IP podmreže ili virtualnog Ethernet adaptera kroz jedan UDP ili TCP port. Tuneliranje podrazumijeva izradu sigurnog "tunela" (veze) za slanje podataka između dvije lokacije.

3. Omogućava se integritet podataka i autentikacija korisnika (dokazivanje identiteta)

4. Jednostavna instalacija i konfiguracija, prihvatljiva cijena

5. Sigurni tunel gradi se uz pomoć statičkih, unaprijed dijeljenih ključeva

6. Za šifriranje, autentikaciju i certificiranje OpenVPN sigurnih veza koristi se OpenSSL. 7. Podrška dinamičkim IP adresama 8. Kompatibilnost sa SSL/TLS, RSA certifikatima, TUN/TAP virtualnim uređajima

OpenVPN koristi već navedene sigurnosne protokole SSL i TSL, koji omogućavaju uspostavljanje komunikacije između određenih točaka virtualne mreže. OpenVPN zapravo djeluje slično kao i Ipsec protokol, međutim kod OpenVPN-a je potrebno posebno podešavanje klijenata, a veza se uspostavljanje putem interneta od strane klijenta. Klijent i server moraju imati instalirane jednake aplikacije kako bi se omogućilo stvaranje privatnog tunela, pa je OpenVPN zapravo P2P (engl. peer-to-peer) aplikacija.

OpenVPN moguće je realizirati na različitim operacijskim sustavima: Windows XP, Linux, Mac OS X, OpenBSD, FreeBSD i NetBSD.

Primjer OpenVPN mreže [3]

Primjer OpenVPN mreže dan je na slici lijevo. Slika prikazuje spajanje različitih računala na OpenVPN server. Na slici je vidljivo da se računala mogu spojiti na nekoliko načina. Prvi je direktno spajanje na OpenVPN server, drugi je spajanje računala preko switch-a na OpenVPN server, i treća preko ADSL-a.

--Monika.bistrovic 18:23, 12. siječnja 2013. (CET)


 

 

 

 


Platforme

Preuzeto ovdje
OpenVPN je dostupan za Solaris, Linux, OpenBSD, FreeBSD, NetBSD, QNX, Mac OS X i Windows 2000/XP/Vista/7. Dok većina mobilnih telefona (iOS, Palm OS, itd.) ne podržavaju OpenVPN, dostupan je za za Maemo, Windows Mobile, jailbroken iOS i rootani Android.
--Danka Patafta 16:19, 15. siječnja 2013. (CET)

 

 

 

 

 

 

 

Karakteristike OpenVPN-a

Prednosti i slabosti

Glavne prednosti su:

Glavne slabosti OpenVPN su neusklađenost s IPsec-om i nedostatak općeg znanja o njegovim značajkama.

--Danka Patafta 17:03, 15. siječnja 2013. (CET)

Osnovni sigurnosni koncepti OpenVPN-a

Kao dva osnovna sigurnosna koncepta OpenVPN-a navode se enkripcija i zaštita integriteta podataka. Za zaštitu integriteta podataka koriste se tzv. hash funkcije.

OpenVPN koristi HMAC (engl. Keyed-Hash Message Authentication Code) funkciju koja omogućava autentifikaciju paketa. HMAC je dio MAC (engl. Message Authentication Code) funkcije. HMAC je razvijen 1996. godine od strane Mihira Bellare, Rana Canettija i Huga Krawczyka te „koristi sigurnosni ključ i standardne kriptografske funkcije sažimanja.“ [6] OpenVPN omogućava zaštitu kanala komunikacije od mogućih pasivnih i aktivnih napada. Pasivni napad je prisluškivanje kanala kroz koji se provodi komunikacija, a aktivni kada se sam napadač ubacuje u kanal, te mijenja, briše itd. podatke koji se trenutno nalaze u komunikacijskom kanalu. Navedene probleme rješava enkripcija koja koristi algoritme (simetrične i asimetrične) za pretvaranje teksta u kriptirani oblik. U tom slučaju samo računalo s odgovarajućim dekoderom može pročitati i koristiti primljeni tekst. Enkripcija se stoga može koristiti prilikom razmjene datoteke, e-mailova i slično putem interneta. Da bi se kriptiranje moglo sprovesti, potrebno je poznavanje ključa za šifriranje koji govori na koji način je moguće (de)šifriranje teksta.

Kod simetričnih algoritama koristi se jednak tajni ključ i za kriptiranje i dekriptiranje podataka. U tom slučaju, i pošiljatelj i primatelj moraju biti poznati sa tajnim ključem. Kod asimetričnih algoritama pak postoje dva ključa: tajni i javni ključ. Tajni ključ posjeduje pošiljatelj, i on smije biti poznat samo njemu, dok javni ključ smiju znati svi sa kojima se obavlja komunikacija.

Parametri koji se mogu postaviti prilikom kriptiranja nazivaju se parametrima enkripcije. Ima ih velik broj, a neki od njih su sljedeći: [Feilner, 2006, str. 156]

1. secret – označava datoteku sa statičkim ključem

2. cipher – definira algoritam koji će se koristiti za enkripciju paketa

3. keysize – specificira veličinu ključa u bitovima

4. cert – datoteka certifikata

5. key – datoteka ključa

6. no-replay – onemogućava OpenVPN zaštitu protiv mogućih napada

7. crl-verify – lista opoziva

Za kriptiranje podataka najčešće se koristi OpenSSL biblioteka funkcija pri čemu se koriste statički ključevi. Statičke ključeve moraju posjedovati svi sudionici, se kako bi se postigla tajnost komunikacije. Međutim upotreba statičkog ključa ipak se ne preporuča jer se on ne može mijenjati, odnosno uvijek je isti, njegova distribucija obavlja se kroz loše medije te nema mogućnosti autentikacije korisnika koji sudjeluju u komunikaciji. OpenVPN za kriptiranje podataka najčešće koristi Blowfish algoritam. Blowfish algoritam postoji od 1993. godine te se koristi za šifriranje. Njegova prednost je ta što je besplatan, pa je stoga vrlo često korišten. Blowfish ima promijenjivu vrijednost ključa (od 32 do 448 bita).

Kao što je već navedeno OpenVPN koristi OpenSSL programski paket za implementaciju SSL i TLS sigurnosnih protokola. SSL protokol razvijen je 1994. godine, s ciljem razmjene podataka između sudionika komunikacije bez da oni budu vidljivi i dešifrirani. Na temelju njega kasnije je razvijen TLS protokol kao IETF (engl. Internet Engineering Task Force) standard. Da bi se OpenSSL mogao efikasno koristi mora sadržavati SSL biblioteku za korištenje SSL i TLS sigurnosnih protokola te crypto biblioteku koja se sastoji od potrebnih algoritama za kriptiranje (simetrični i asimetrični algoritmi, certifikati te hash funkcije).

--Monika.bistrovic 16:02, 15. siječnja 2013. (CET)

Arhitektura

Autentikacija

Autentikacija korisnika je omogućena korištenjem tajnog (statičkog) ključa, certifikata ili provjerom korisničkog imena i pristupne lozinke. OpenVPN podržava dvosmjernu autentičnost na temelju certifikata, što znači da klijent mora ovjeriti certifikat poslužitelja i poslužitelj mora ovjeriti certifikat klijenta prije nego što je uspostavljeno međusobno povjerenje.

--Danka Patafta 16:43, 15. siječnja 2013. (CET)

Izrada certifikata i ključeva
Modifikacije u notepad-u
Ja sam odabrala princip autentikacije na temelju statičnog ključa i certifikata. Ovdje ću opisati korake koje je potrebno poduzeti kako bi se izradili certifikati i ključevi. Prije izrade certifikata moramo napraviti neke pripremne korake. Najprije moramo pokrenuti command prompt sa administrativnim ovlastima. Upisujemo cmd i enter. Dolazimo do easy-rsa foldera sa slijedećom naredbom: cd C:\Program Files\OpenVPN\easy-rsa, ako ste instalirali OpenVPN na C disk, ako ne, onda vam je putanja drugačija.
Izrada certifikata i ključeva-popis naredbi
Zatim moramo pokrenuti batch datoteku kako bi kopirali konfiguracijske datoteke, a to radimo naredbom init-config. Nakon toga moramo izmijeniti vars datoteku i to određene dijelove te datoteke, tako da ju otvaramo notepadom, to možemo napraviti ovako: notepad vars.bat. Izmjene su vidljive na priloženoj slici. Nakon toga moramo pokrenuti još dvije naredbe: vars i clean-all. Tek sada počinje izrada certifikata. Pokrećemo naredbu build-ca kojom stvaramo glavni certifikat i ključ tzv. certifikacijskog autoriteta. Konačni rezultat su datoteke ca.cert i ca.key. ca.key je privatni CA ključ i mora se čuvati na sigurnom računalu. Nakon toga generiramo certifikat i ključ za server i klijente (ja imam samo jednog klijenta). Naredbe su: build-key-server server i build key client (ja sam stavila build key danka-komp). Nakon toga generiramo Diffie Hellman protokol: build-dh. protokol omogućuje korisnicima razmjenu tajnog ključa preko nesigurnog medija bez prethodno dogovorenih tajni.

--Danka Patafta 16:43, 15. siječnja 2013. (CET)

 

 

 

Umrežavanje

Dapatafta Networking.PNG
Podaci koji se razmjenjuju usmjeravaju se na UDP port 1194. Moguće je koristiti i TCP, ali je UDP jednostavniji, nema provjeru razmjene podataka, te je pogodan za komunikacije gdje su greške dozvoljene (npr. prijenos videa). U radu koristi virtualna mrežna sučelja korištenjem TUN ili TAP upravljačkih programa. TUN sučelje predstavlja virtualnu mrežnu karticu, odnosno koristi se kao virtualno point-to-point sučelje poput modema ili DSL veze. VPN klijent je u stanju kriptirati sav odlazni promet bez potrebe za ikakvim promjenama na postojećim programima stvarajući virtualno mrežno sučelje i prisiljavajući sve programe da mu prosljeđuju svoje podatke. Međutim, tako realizirani uređaj neće podatke usmjeravati na fizički sloj (komunikacijsku liniju), nego prema programu koji primljene pakete čita i piše u oba smjera. TAP sučelje se koristi za složenije mrežne topologije, kao virtualni Ethernet adapter. Ovaj način rada se zove premošćivanje. OpenVPN "sluša" TUN/TAP uređaj, preuzima promet, kriptira ga i šalje ga na drugim VPN "partnerima", gdje drugi OpenVPN proces prima te podatke, dekriptira ih, te ih predaje virtualnom mrežnom uređaju.
Dopuštenja u firewall-u

--Danka Patafta 16:48, 15. siječnja 2013. (CET)

OpenVPN i Firewall
Propuštanje prometa na UDP port
Firewall je router koji usmjerava samo odabrane podatke s Interneta. Pravila firewalla definiraju kako postupati s određenim podacima i prometom. Firewall može biti uređaj ili softver na osobnim računalima, poslužiteljima, ili na drugim uređajima. Kod konfiguracije OpenVPN-a potrebno je posložiti i postavke firewalla tako da postavimo pravila propuštanja prometa na UDP port-u 1194 u oba smjera, dopuštenja za openvpn.exe, openvpn-gui.exe i TAP virtualni adapter. Dodala sam slike koje prikazuju moje postavke Windows Firewalla za omogućavanje OpenVPN-a. Nakon što ste instalirali i konfiguirali OpenVPN, vjerojatno nećete moći uspostaviti konekciju niti servera niti klijenta ukoliko ne posložite postavke firewall-a. Definitivno se ne preporuča isključivanje firewall-a, stoga mu dodajte navedena pravila. Ove postavke treba definirati i na klijentu i na serveru.

--Danka Patafta 16:43, 15. siječnja 2013. (CET)

 

Tuneliranje prometa

server
klijent
Kod tuneliranja prometa nisam htjela postavljati čitav postupak (tutorial), jer ih postoji na Internetu jako puno, a i prošle je godine kolega izradio jako dobar tutorial koji se može pronaći ovdje. Tako da sam se odlučila samo ukratko objasniti što sam radila, i navesti probleme s kojima sam se susrela u nadi da će pomoći nekome tko će imati iste greške. Ja sam koristila tutorial od kolege u kombinaciji s ovim tutorialom. Konfiguracija se sastoji od nekoliko koraka:
  1. Instalacija - klasična i vrlo jednostavna. Ja sam odabrala instalaciju OpenVPN-a koji se može skinuti ovdje. Ovaj paket sadrži OpenVPN Softver plus grafičko sučelje. Ovaj paket najčešće se koristi ukoliko je OpenVPN klijent desktpo ili laptop računalo zaposlenika koji radi kod kuće i samo se privremeno spaja na VPN. Tada će Windows korisnik htjeti jednostavno korišenje i sučelje kojem može pristupati na standaran način. Ukoliko želimo standardnu komunikaciju klijenta sa VPN tunelom, dovoljan je originalan VPN softver.
  2. Pripremni koraci i izrada certifikata i ključeva – objasnila sam u jednom od prethodnih koraka postupak, pa da se ne ponavljam
  3. Stvaranje konfiguracijskih file-ova za servera i klijenta. Priložila sam svoje konfiguracijske file-ove, iako se s instalacijom dobe primjeri koji se onda mogu modificirati.
  4. Kopiranje konfiguracijskih file-ova na odgovarajuća mjesta na serveru i klijentu. Definitivno ne slati nikakve ključeve ili certifikate preko mreže. Ja sam koristila usb.
  5. Pokretanje OpenVPN-a – vjerojatno vam neće funkcionirati spajanje, jer treba još puno posla da OpenVPN profunkcionira.

U nastavku ću objasniti što se morate poduzeti kako bi vam spajanje bilo uspješno. Također ću spomenuti greške koje su mi se javljale i kako sam ih riješila.

  • Postavke firewalla
    • Ovo sam također već objašnjavala u jednom poglavlju ranije, pa zato sad neću opet.
  • Dijeljenje veze servera s klijentima
    • Potrebno je omogućiti dijeljenje veze u Windowsima. To je potrebno kako bi server mogao dati pristup klijentima koji se na njega spajaju. Koraci su prilično jednostavni Control Panel->Network and Internet->Network Sharing Center. Tamo odabirete onu mrežu pomoću koje se spajate na internet i pod Properties->Sharing potrebno je uključiti "Allow other network users to connect through this computer's Internet connection". Još treba samo odabrati iz padajućeg izbornika mrežu koja pripada TAP virtualnom mrežnom adapteru i to je to.
  • Pokretanje OpenVPN-a kao servisa
    • Ako to uključimo, OpenVPN može biti pokretan odmah kod podizanja računala i može raditi u ne-administrativnom načinu rada. Potrebno je otvoriti services.msc. Tada dobijemo popis servisa koji postoje. Potrebno je pronaći Routing and remote Access servis i pod Properties->General->Startup type izmijeniti u Automatic i naknadno odabrati opciju Start. Nakon toga otvaramo uređivač registra i u navigatoru nađemo HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters. Vrijednost IPEnableRouter treba izmijeniti na 1. Kada je vrijednost ovog unosa 1, sustav usmjerava IP pakete prema svim mrežama na koje je povezana.
  • Prosljeđivanje UDP prometa
    • U preglednik treba upisati lokalnu adresu Web sučelja usmjerivača (moja je 192.168.1.1). Nakon logiranja, potrebno je pronaći gdje možete mijenjati pravila za prosljeđivanje prometa. To ovisi o uređaju, ali uvijek možete to progooglati. Dakle, tamo sam dodala pravilo za prosljeđivanje UDP prometa na port-u 1194 prema mojem računalu. Ovdje nemojte napraviti pogrešku koju sam ja napravila (ako imate dinamičku IP adresu), a to je upisivanje IP adrese u ovo polje (koju možete saznati upisivanjem naredbe ipconfig u Command Prompt-u, pod IPv4 address), jer se ona mijenja svaka 24h, pa vam se idući dan klijent neće moći spojiti na Open VPN. Stoga, ukoliko client log javlja TLS Error, vjerojatno ste krivo definirali prosljeđivanje prometa.

OpenVPN na Android 4.0.

Dapatafta1and.png
Screenshot 2013-01-20-22-15-45.png
Screenshot 2013-01-20-22-17-02.png
Screenshot 2013-01-20-22-18-09.png
Screenshot 2013-01-20-22-33-29.png
Z spajanje sam koristila Sony Erricson Xperia Arc S, koji ima Android 4.0. Koristila sam vlastite konfiguracijske datoteke iz prethodnih koraka, odnosno dodala sam certifikat i ključ za mobitel kao novi klijent. Postupak neću detaljno opisivati jer je prilično jednostavan, jer ima grafičko sučelje. Dakle prvo treba importati konfiguracijski file. Nakon toga se ulazi u etidiranje što pokazuje slika desno. Potrebno je učitati na Basic opciji certifikate i ključ. Na Routing opciji treba staviti IPV4: Use default Route. Na Advanced opciji ne označiti Enable Custom Options. Tada je setup gotov i možete se spojiti.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


--Danka Patafta 08:04, 19. siječnja 2013. (CET)

Viscosity i OpenVPN

Instalacija
Viscosity predstavlja OpenVPN klijent za Windowse i Mac. Dizajniran je za Mac OS X (10.5, 10,6, 10,7 i 10,8) i Windows (XP, Vista, 7 i 8). Omogućuje potpuno konfiguriranje OpenVPN veze klijenta kroz intuitivno sučelje, bez potrebe za znanjem složenih naredbi. Ima opciju importiranja gotovih OpenVPN konfiguracija (certifikata, ključeva i klijentske konfiguracije). Kao što je već spomenuto, omogućuje korisniku spajanje na VPN poslužitelj i uspostavljanje VPN veze. Viscosity osigurava jasno i intuitivno korisničko sučelje za stvaranje, uređivanje i upravljanje VPN veze, i vrlo je dobar za početnike. Podržava OpenVPN protokol i može se povezati s bilo VPN poslužiteljem koji podržava OpenVPN, uključujući gotovo sve popularne i besplatne te komercijalne VPN usluge. Viscosity omogućuje konfiguriranje kroz GUI, bez potrebe za znanjem programiranja ili OpenVPN konfiguracijske sintakse. Napredni korisnici i dalje imaju punu ručnu kontrolu i mogućnost konfiguracije po želji. Viscosity i OpenVPN osiguravaju sigurno spajanje s udaljene lokacije, zaštitu prometa prilikom korištenja javnih ili bežičnih mreža i tuneliranje kroz restriktivne firewalle i proxy servere kako bi računalo imalo puni Internet pristup. Nedostatak je što je to trial verzija koja traje 30 dana i kasnije se plaća.

 

General‎
Dodavanje klijenta
Uspješno povezivanje
U nastavu ću opisati instalaciju i konfiguraciju. Dakle kao što je bilo spomenuto, ovo je puno jednostavnije nego OpenVPN GUI, iako server svejedno treba izraditi, ali greške koje se mogu pojaviti sa klijentove strane, lakše se mogu razriješiti kroz ovo sučelje. Dakle instalacija je jednostavna, nakon downloada samo pokrenemo instalaciju i pratimo wizard. Na kraju moramo dobiti sliku koju sam postavila s lijeve strane na početku. Nakon toga otvorimo Viscosity desnom tipkom miša i Preferences. Na drugoj slici lijevo vidi se kako treba kliknuti na mali plus lijevo dolje za odavanje novog klijenta ili ako želimo importati postojeće konfiguracije ukoliko ih imamo. Ja sam ih već izradila prije, pa sam ih samo importala. Nako što odaberemo izradu novog klijenta ili ga importamo može slagati postavke. Prvi tab omogućuje upis osnovnih informacija poput naziva klijenta, TUN/TAP, adrese servera i UDP porta. Drugi tab je za autentikaciju, treba učitati certifikat i ključ. Treći tab omogućuje neke dodatne opcije. U četvrtom tabu određujemo hoćemo li sav promet slati kroz OpenVPN mrežu. I ostaje nam ješ tab za postave proxy-a i napredne postavke. Desno je dodana jedna slike postavka. Cilj je naravno na kraju uspostaviti uspješnu konekciju i dobiti ono što je prikazano na slici lijevo.

--Danka Patafta 20:50, 20. siječnja 2013. (CET)

 

 


Uspostavljanje OpenVPN-a na Android uređaju

Napomena: Ovaj postupak namijenjen je za Android uređaje na kojima je omogućen superuser (root). U ovom postupku, koristit ćemo OpenVPN aplikacije. Kako bi mogli koristiti OpenVPN aplikacije, na uređaju mora biti root-an, te nam treba instaliran busybox za kojeg je poželjno da bude ažuriran na posljednju inačicu.

Početni zahtjevi:

-SuperUser

-BusyBox

Obje aplikacije mogu se pronaći na Google Play store, te su potpuno besplatne. Dakako postoje i plaćene verzije koje korisnici mogu opcionalno koristiti. U ovom slučaju, besplatne verzije su dovoljne.

Postupak:

1. Korak

Busybox na Google Play store

Instalirati BusyBox aplikaciju te nadograditi BusyBox podatke na zadnju verziju. U ovom slučaju to je 1.20.2. Važno je da podatke instaliramo u /system/xbin.

Pod odabirom inačice, odaberemo 1.20.2


2. Korak

Kada je BusyBox instaliran i spreman, potrebno je s GooglePlay store-a skinuti OpenVPN installer i OpenVPN settings aplikacije.

Dovoljno je upisati openvpn u tražilicu
Prva dva rezultata kod pretraživanja su aplikacije koje trebamo

3. Korak

Sada bi trebali imati instalirane slijedeće aplikacije:

Instalirane OpenVPN aplikacije

Zatim pokrenemo OpenVPN installer te instaliramo Binary. Preporučeno je instalirati binary u /system/xbin. Ukoliko nam se pojavi zeleni kružić s bijelim križićem kao na idućoj slici, znat ćemo da je sve u redu, te da je binary instaliran.

Instalacija aplikacije

4. Korak

Kada imamo instaliran OpenVPN pokrećemo OpenVPN Settings aplikaciju te definiramo putanju do lokacije gdje su nam konfiguracijske datoteke vpn-a. Konfiguracijske datoteke se stvaraju na računalu, a način je objašnjen u prijašnjim poglavljima, kod kolegice Danke. Preporučeno je koristiti putanju /sdcard/openvpn.

Konfiguracija

5. Korak

Kada smo završili s prethodnim korakom, sve što nam preostaje jest omogućiti opciju OpenVPN čime povezujemo klijenta sa VPN-om.

Povezivanje klijenta sa VPN-om


OpenVPN je program koji stvara virtualnu privatnu mrežu. Virtualna privatna mreža spaja lokalne mreže putem interneta u virtualnu lokalnu mrežu te na taj način omogućava sigurno slanje podataka između određenih mreža. Podaci unutar virtualne mreže se kriptiraju, što znači ako se bilo koji paket podataka koji putuje kroz internet presretne, isti se ne može pročitati bez ključa.

Osim ovih aplikacija koje nam omogućuju korištenje VPN-a postoje i aplikacije koje ne zahtjevaju root, ali te aplikacije su uglavnom rezervirane za VPN servise koji se plaćaju, te za novije Android uređaje (4.x). Primjer je izveden na Samsung uređaju s Android OS 2.3.6 verzijom. Također, korištenje ove aplikacije izvedivo je i na ostalim inačicama Android OS-a, ali također zahtjeva root uređaja.

--Vanonkovi 15:07, 20. siječnja 2013. (CET)

Usporedba OpenVPN i IPsec VPN

Iako je IPsec de facto standard, postoje mnogi argumenti za korištenje OpenVPN-a. [Feilner, 2006, str. 35]

OpenVPN

+ Prilično jednostavna, dobro strukturirana tehnologija jednostavne konfiguracije

+ Koristi standardizirane tehnologije enkripcije

+ Može se brzo naučiti

+ Standardizirano mrežno sučelje i paketi

+ Softver može biti pokrenut u korisničkom okruženju

+ Zahtijeva samo jedan port u vatrozidu

+ Brzina koja može dostići do 20 Mbps

+ Oblikovanje prometa

+ Korištenje SSL/TLS standardnog protokola

+ Uspješno korištenje DynDNS-a

+ Korištenje NAT-a


IPsec VPN

- Kompleksna tehnologija i konfiguracija

- Potrebne administratorske ovlasti

- Različite implementacije mogu biti nekompatibilne

- Potrebno više portova i protokola u vatrozidu

- Prisutni sigurnosni problemi

- Prisutni problemi sa dinamičkim adresama obje strane


Iz ovoga možemo vidjeti da OpenVPN ima uistinu mnoge prednosti u odnosu na IPsec, počevši od jednostavnosti učenja i korištenja pa sve do brzine i uspješnog korištenja dodatnih tehnologija (NAT, DynDNS...). Iako je OpenVPN još uvijek novija tehnologija u razvoju, polako je počela dobivati prevlast nad tehnologijom koja se ranije smatrala standardnom, tj. IPsec VPN-om.

--Vanonkovi 20:20, 15. siječnja 2013. (CET)


Opcije OpenVPN-a

Opcije OpenVPN-a moguće je smjestiti u naredbeni redak ili u konfiguracijsku datoteku, s tim da ispred opcija naredbenog retka pišemo '--', dok kod smještanja opcija u konfiguracijsku datoteku možemo izostaviti taj prefiks[8].

--help prikaz opcija

--config file učitaj dodatne konfiguracijske opcije iz datoteke gdje svaki redak odgovara opciji naredbenog retka, ali bez '--'

--Anpetrovi 09:33, 20. siječnja 2013. (CET)

Opcije tuneliranja

Kako opcija tuneliranja ima stvarno mnogo, ovdje su navedene neke od njih [8]:

--mode m postavlja OpenVPN glavnim modalitetom

--proto-force p prolazeći kroz profile za spajanje, uzmi u obzir samo one koji koriste protokol p ('tcp'|'udp')

--float dozvoli udaljenom korisniku da promijeni IP adresu i/ili broj porta

--port port TCP/UDP broj porta za lokalni i udaljeni

--lport port TCP/UDP broj porta za povezivanje

--rport port TCP/UDP broj porta za udaljeni

--bind poveži na lokalnu adresu i port

--nobind nemoj povezati na lokalnu adresu i port

--dev tunX | tapX | null TUN/TAP virtualni mrežni uređaj (X može biti izostavljen za dinamički uređaj)

--lladdr address specificira adresu podatkovnog sloja, znanu kao MAC adresa

--ifconfig l rn postavlja TUN/TAP parametre adaptera

--route network/IP [netmask] [gateway] [metric] dodaje rutu tablici ruta nakon uspostavljanja veze

--route-metric m specificira zadanu mjeru m za upotrebu s --route

--route-delay [n] [w] odgađa n sekundi (zadano=0) nakon uspostavljanja veze, prije dodavanja ruta

--route-noexec ne dodavaj ili odstranjuj rute automatski

--inactive n [bytes] uzrokuje izlaz iz OpenVPN-a nakon n sekundi neaktivnosti na TUN/TAP uređaju

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

Modalitet servera

Ovaj modalitet dizajniran je za skalabilnost i trebao bi moći podržati stotine, čak tisuće klijenata na dovoljno brzom hardveru. Mora se koristiti SSL/TLS autentikacija. Neke od opcija modaliteta servera su [8]:

--server network netmask pomoćnik dizajniran da pojednostavi konfiguraciju OpenVPN modaliteta servera

--push option vrati opciju konfiguracijske datoteke natrag klijentu za udaljeno izvršavanje

--disable onesposobi povezivanje pojedinog klijenta(bazirano na zajedničkom imenu)

--iroute network [netmask] generiraj internu rutu za specifičnog klijenta

--duplicate-cn dozvoli više klijenata s istim zajedničkim imenom da se istovremeno povežu

--tmp-dir dir specificiraj imenik dir za privremene datoteke

--hash-size r v postavi veličinu prave adrese hash tablice na r i virtualnu adresu tablice na v

--tcp-queue-limit n maksimalan broj izlaznih paketa na čekanju prije TCP-a

--max-clients n ograniči poslužitelj na maksimalno n istovremenih klijenata

--max-routes-per-client n dozvoli maksimalno n internih ruta po klijentu

--connect-freq n sec dozvoli maksimalno n novih povezivanja klijenata po sekundi sec

--auth-user-pass-verify script method zatraži klijenta da da korisničko ime/lozinku za autentikaciju

--opt-verify klijenti čije opcije povezivanja nisu kompatibilne s onima s poslužitelja, bit će isključeni

--auth-user-pass-optional dozvoli povezivanje klijentima koji nisu specificirali korisničko ime/lozinku

--client-cert-not-required ne traži se klijentov certifikat, klijent će biti autenticiran korištenjem korisničkog imena/lozinke

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

Modalitet klijenta

Koristi se kod povezivanja na OpenVPN poslužitelj. Neke od opcija modaliteta klijenta su [8]:

--client pomoćnik dizajniran da pojednostavi konfiguraciju OpenVPN modaliteta klijenta

--pull ova opcija mora biti korištena za klijenta koji se povezuje na multi-client poslužitelj

--auth-user-pass [up] autenticiraj s poslužiteljem koristeći korisničko ime/lozinku

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

Opcije za šifriranje kanala s podacima

--secret file [direction] omogućava šifrirani modalitet statičkog ključa

--auth alg autenticira pakete s HMAC-om, koristeći algoritam alg za pregled poruka

--cipher alg šifrira pakete s algoritmom za šifriranje alg

--keysize n veličina šifriranog ključa u bitovima

--no-replay onesposobljava zaštitu OpenVPN-a protiv ponavljajućih napada [8]

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

Opcije modaliteta TLS-a

TLS modalitet najjači je mod za kriptiranje OpenVPN-a u sigurnosti i fleksibilnosti. Uspostavlja kontrolu i kanale za prijenos podataka koji su multipleksirani preko pojedinačnog TCP/UDP porta. OpenVPN inicira TLS sesiju preko kontrolnog kanala i koristi ga za razmjenu šifriranog i HMAC ključeva da zaštiti kanal za prijenos podataka. Neke od opcija [8]:

--tls-server omogućava TLS i preuzima ulogu poslužitelja za vrijeme rukovanja TLS-om

--tls-client omogućava TLS i preuzima ulogu klijenta za vrijeme rukovanja TLS-om

--capath dir imenik koji sadrži povjerljive certifikate

--tls-auth file [direction] dodaje dodatni sloj HMAC autentikacije na vrh TLS kontrolnog kanala za zaštitu od DoS napada

--tls-export-cert directory certifikati koje koriste klijenti prilikom spajanja spremaju se u ovaj imenik

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

Podaci SSL biblioteke

--show-ciphers (samostalna) pokazuje sve šifrirane algoritme za korištenje s opcijom --cipher

--show-digests (samostalna) pokazuje sve algoritme za pregled poruka, za korištenje s opcijom --auth

--show-tls (samostalna) pokazuje sve TLS šifre (TLS korišten kao kontrolni kanal), koje će biti sortirane od najvišeg prioriteta (najsigurnije) do najmanjeg [8]

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

Generiranje slučajnog ključa

Korištene samo za non-TLS statički ključ u šifriranom modalitetu [8].

--genkey (samostalna) generira slučajni ključ za korištenje kao dijeljena tajna, za korištenje s opcijom --secret

--secret file zapisuje ključ u datoteku

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

TUN/TAP

Opcije su dostupne s linux-om 2.4.7+. Obuhvaćaju samostalan modalitet OpenVPN-a koji može biti korišten za kreiranje i brisanje izdržljivih tunela [8].

--mktun (samostalna) kreira izdržljiv tunel na platformama koje ih podržavaju, kao npr. Linux

--rmtun (samostalna) briše izdržljiv tunel

--dev tunX | tapX TUN/TAP uređaj

--user user korisnik po slobodnom izboru neka bude vlasnik ovog tunela

--group group grupa po slobodnom izboru neka bude vlasnik ovog tunela

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

Posebne opcije Windows-a

--route-method m govori koju metodu m koristiti za dodavanje ruta Windowsima

--tap-sleep n uzrokuje spavanje OpenVPN-a n sekundi odmah nakon što je stanje adaptera TAP-Win32 postavljeno na 'povezano'

--dhcp-renew pita Windowse da obnove zakup TAP adaptera prilikom pokretanja

--dhcp-release pita Windowse da otpuste zakup TAP adaptera prilikom gašenja

--pause-exit ostavlja poruku "press any key to continue" na konzoli prije izlaza iz programa OpenVPN

--show-adapters (samostalna) prikazuje slobodne TAP-Win32 adaptere koji mogu biti odabrani korištenjem opcije --dev-node

--allow-nonadmin [TAP-adapter] (samostalna) postavlja TAP-adapter da dozvoljava pristup iz ne-administrativnih računa

--show-valid-subnets (samostalna) prikazuje važeće podmreže za --dev tun imitaciju

--show-net (samostalna) prikazuje OpenVPN-ov pogled na sistemsku tablicu usmjeravanja i popis mrežnih adaptera [8]

--Anpetrovi 10:16, 20. siječnja 2013. (CET)

Upravljanje sučeljem OpenVPN-a

Upravljanje sučeljem OpenVPN-a omogućuje OpenVPN-u da bude administrativno kontroliran iz vanjskog programa kroz TCP utičnicu. Sučelje je posebno dizajnirano za GUI developere i one koji bi htjeli programatski ili udaljeno kontrolirati OpenVPN. Upravljanje sučeljem implementirano je korištenjem klijent/server TCP povezivanja, gdje će OpenVPN slušati na predviđenoj IP adresi i portu za dolazećim upravljanjem povezivanja klijenata. Povezivanjem na upravljački port, korištenjem naredbe 'help', prikazana je lista svih naredbi. Neke od njih su [9]:

COMMAND -- echo

Dopušta GUI specifične parametre da budu ili ugrađeni u OpenVPN konfiguracijsku datoteku ili gurnuti na OpenVPN klijenta iz poslužitelja.

COMMAND -- exit, quit

Zatvara upravljačku sesiju i rezimira slušanje na upravljačkom portu za povezivanje od drugih klijenata.

COMMAND -- help

Ispis kratkog pregleda naredbi.

COMMAND -- kill

U modalitetu poslužitelja, ubija pojedinu instancu klijenta.

COMMAND -- log

Pokazuje OpenVPN log datoteku.

COMMAND -- mute

Mijenja OpenVPN --mute parametar, koji se koristi da stiša ponavljajuće poruke iz iste kategorije poruka.

COMMAND -- password and username

Naredba lozinka koristi se da propusti lozinke OpenVPN-u.

COMMAND -- version

Prikazuje trenutni OpenVPN i verzije upravljanja sučeljem.

--Anpetrovi 09:33, 20. siječnja 2013. (CET)

Zaključak

VPN mreže predstavljaju virtualnu privatnu mreža koja omogućava sigurnu komunikaciju i siguran prijenos podataka izmeđ različitih lokacija i računala. Stoga, VPN i najčešće koriste poduzeća sa više poslovnica, kako bi svi zaposlenici mogli imati pristup svim podacima i programima potrebnima za rad. VPN mreže moguće je podijeliti na Remote access mreže (mreže udaljenog pristupa) i Site-to-Site mreže (meže između lokacija).

OpenVPN jedan je od oblika virtualne privatne mreže, koji koristi SSL i TSL protokole za uspostavljanje komunikacije između različitih točaka virtualne mreže. OpenVPN očituje se u mnogim prednostima u odnosu na druge slične tehnologije, a neke od njih su mogućnost implementacije na svim operacijskim sustavima, tuneliranje, integritet podataka, autentikacija korisnika, ...

Kod OpenVPN-a vrlo su bitni pojmovi enkripcije, autentikacije i umrežavanja. Enkripcija omogućuje pretvaranje teksta kriptirani oblik, koji se može dekriptirati samo uz pomoć prikladnog ključa za kriptiranje. Autentikacija služi za provjeru identiteta korisnika korištenjem tajnog ključa, certifikata ili provjerom korisničkog imena i pristupne lozinke.

--Monika.bistrovic 13:55, 20. siječnja 2013. (CET)

Literatura

1. OpenVPN 101: introduction to OpenVPN. Dostupno 15.01.2013. na: http://openvpn.net/papers/openvpn-101.pdf

2. Nacionalni CERT (2010.): OpenVPN. Dostupno 15.01.2013. na: http://www.cert.hr/sites/default/files/NCERT-PUBDOC-2010-04-298.pdf

3. Urem F. (2007.). Open source VPN. Dostupno 15.01.2013. na: http://www.vus.hr/uploads/file/zbornik/rad_frane_urem.pdf

4. Feilner, M. (2006). OpenVPN: Building and Integrating Virtual Private Networks. Packt, Birmingham.

5. Morgan D. (2007.): VPN Architectures. Dostupno 15.01.2013. na: http://homepage.smc.edu/morgan_david/linux/architectures-n.pdf

6. Top Five Characteristics of the Best VPN Services. Dostupno 15.01.2013. na: http://articles.pubarticles.com/top-five-characteristics-of-the-best-vpn-services-1328346192,680081.html

7. TechNet, Microsoft: Understanding PPTP (Windows NT 4.0). Dostupno 18.1.2013. na: http://technet.microsoft.com/library/cc768084.aspx

8. OpenVPN 2.2. Dostupno 20.01.2013. na: http://openvpn.net/index.php/open-source/documentation/manuals/427-openvpn-22.html#lbAQ

9. Management Interface. Dostupno 20.01.2013. na: http://openvpn.net/index.php/open-source/documentation/miscellaneous/79-management-interface.html

10. Tyson J., Crawford S. (2013.). How VPNs Work. Dostupno 18.01.2013. na: http://computer.howstuffworks.com/vpn3.htm

11. CISCO (2013.). Remote-Access VPNs: Business Productivity, Deployment, and Security Considerations. Dostupno 20.01.2013. na: http://www.cisco.com/en/US/prod/collateral/vpndevc/ps6032/ps6094/ps6120/prod_white_paper0900aecd804fb79a.html

12. CISCO (2013). Layer 2 Tunneling Protocol. Dostupno 19.1.2013. na http://www.cisco.com/en/US/docs/ios/12_0t/12_0t1/feature/guide/l2tpT.html

13. L2F: Layer 2 Forwarding Protocol. Dostupno 19.1.2013. na http://www.javvin.com/protocolL2F.html

14. Kurose, J., Ross, K. (2010). Computer Networking: A Top-Down Approach, Fifth edition. Addison-Wesley.

Osobni alati
Imenski prostori
Inačice
Radnje
Orijentacija
Traka s alatima