VPN
VPN (Virtual Private Networking) ir tehnoloģija kas ļauj pieslēgties attālinātam serverim un nodibināt ar to virtuālu tīklu. Caur šo tīklu var piekļūt savam darba vietas tīklam un strādāt ar tajā novietotajiem serveriem it kā pats atrastos tur, var saslēgt divus ģeogrāfiski attālinātus ofisu tīklus vienā kopējā utt.
OpenVPN priekšrocība ir iespēja pašam nodefinēt datu kanālu. Piemēram:
- PPTP VPN datu kontrole notiek caur TCP/1723 portu un dati tiek sūtīti caur GRE protokolu. Ja mana lokālā tīkla administrators nobloķē kādu no šiem portiem, tad savienojumu nodibināt nav iespējams. OpenVPN konfigurācijā var norādīt protokolu - TCP vai UDP un izvēlēties portu. Ja ņem klasisko, 80. portu tad šim VPN pavisam noteikti varēs piekļūt.
VPN datu savienojuma kodēšana - ar OpenVPN var kodēt datu savienojumu ar dažādiem kriptēšanas algoritmiem (jā, arī ar citiem VPN serveriem to var). Piemēram:
- Pieslēdzoties pie atvērta, nedroša (open, unsecured) wireless tīkla, citi tīkla dalībnieki var izspiegot datu plūsmu un uzzināt sensitīvus lietotāja datus (jo Tava antena raida radiosignālus bezvadu tīkla pieejas punktam un tas savukārt atpakaļ un šīs pārraides ar speciālu programmatūru var noklausīties trešā persona). Pieslēdzoties pie VPN, visi tālākie savienojumi notiek caur vienu datu kanālu kurš ir kodēts, sākot ar klientu un beidzot ar serveri.
VPN dod iespēju apiet lokālā tīkla administratora uzstādītos tīkla ierobežojumus, piemēram:
- Lokālajā tiklā nav iespējams klausīties interneta radio, jo ir bloķēts (piemēram) 8000 ports. Pieslēdzoties VPN mēs virtuāli nokļūstam citā vietā un ja attālinātajā tīklā nav liegts 8000 ports tad caur šo savienojumu varu klausīties interneta radio.
VPN dod iespēju apiet lokālā tīkla administratora padziļinātos ierobežojumus, piemēram:
- Jaunākajās tīkla maršrutētāju [rūteru] (router) versijās iespējams skenēt cauri ejošo datu plūsmu un liegt p2p savienojumus. Tautas valodā - lokālā tīkla administrators var bloķēt DC++ un torrent. Izmantojot VPN kurš kriptē datu savienojumu, iespējams apiet šo serveri un turpināt izmantot p2p (ja vien attālinātajā tīklā tas nav bloķēts)
Vārdsakot - VPN dod dažādus plusus pat parastam lietotājam. Mīnuss ir tāds ka dati neiet pa taisno uz Internet serveriem, bet gan caur VPN serveri un tikai tad uz
Internet serveriem. Šādas aizkavēšanās ir vājā vieta spēlējot tiešsaistes spēles utt. Būtībā viss atkarīgs no tā cik "tālu" (delay) atrodas VPN serveris.
Uzstādīšana
Uzstādīšanas process - Linux vidē, uz Ubuntu server.
1. instalēšana
2. sertifikātu ģenerēšana
cd /etc/openvpn/examples/easy-rsa/
vi ./vars
(izlabojam attiecīgo informāciju)
CN Jānorāda visos viens un tas pats!
./clean-all
./build-ca
Paroli vajag norādīt. Pēc tam viņu vajadzēs ģenerējot jaunus klientu sertifikātus.
Lietotāja atslēgas izveide. Var izvēlēties - norādīt paroli vai nē
- ar paroli
- bez paroles
openvpn --genkey --secret ta.key
Jānokopē keys/ca.crt uz /etc/openvpn/keys/ca.crt ,keys/dh1024.pem uz /etc/openvpn/keys/dh1024.pem , keys/server.crt uz /etc/openvpn/keys/server.cert un keys/server.key uz /etc/openvpn/keys/server.key
Tad jānokopē klientam (ar scp vai kā savādāk) keys/ca.crt, keys/user.crt un keys/user.key. Šie faili jāuzmana jo ar tiem var pieslēgties pie VPN.
Servera konfigurācijas fails /etc/openvpn/server.conf
dev tun
#dev tap
up ./office.up
tls-server
dh keys/dh1024.pem
ca keys/ca.crt
cert keys/server.crt
key keys/server.key
port 1194
# default - udp
#proto tcp-server
# ja vajag - papildus kompresija datiem
#comp-lzo
verb 3
#VPN DHCP Pool
server 10.10.14.0 255.255.255.0
push "route 0.0.0.0 0.0.0.0 10.10.14.1"
push "redirect-gateway"
#Ifconfig-pool-persist client-addresses.txt
#lietotaajiem var pieskjirt statiskas adreses, noraadot failaa:
#User1,10.10.14.111
# ljauj klientiem kas piesleedzas vpn sazinaaties savaa starpaa
client-to-client
keepalive 10 120
# var noraadiit savienojuma kripteeshanas algoritmu
#Cipher AES-128-CBC
/etc/openvpn/office.up saturs:
route add -net 10.10.14.0 netmask 255.255.255.0 gw $5
Tagad serveris ir gatavs, var startēt servisu
Linux Ubuntu klients
Pieslēgties šim VPN iespējams 2 veidos - ar urķēšanos pa konsoli vai izmantojot NetworkManager veidni (aplet)
Konsoles variants:
Kopēt no servera failus: ca.crt uz /etc/openvpn/keys/ca.crt, user.crt uz /etc/openvpn/keys/user.crt un user.key uz /etc/openvpn/keys/user.key
klienta konfigurācijas fails /etc/openvpn/client.conf
#dev tap
remote vpnserveris.com
tls-client
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/user.crt
key /etc/openvpn/keys/user.key
port 1863
#proto tcp-client
; comp-lzo
verb 3
Savienojumu var startēt ar komandu
un apstādināt ar
NetworkManager applet variants:
Uzstādīt VPN papildiespēju
Tālāk: Kreisais taustiņš uz NetworkManager ikonas (pie pulksteņa) -> "VPN savienojumi -> Konfigurēt VPN"
Tad poga "Pievienot"
Tad "Uz priekšu"
Pieslēgties pie "OpenVPN Client"
Tad, jaunajā logā jāievada:
Connection Name: savienojuma nosaukums, piemēram openvpn tunelis
Gateway addres: OpenVPN servera adrese
Gateway port: standartā 1194, bet ja serverim ir uzstādīts cits, tad arī šeit jāmaina
CA File: jānorāda ca.crt fails
Certificate: jānorāda user.crt
Key: jānorāda user.key
Optional sadaļā ieķeksējam TCP gadijumā ja serverim uzstādīts tcp protokols. augstākminētajā konfigurācijā ir nevis TCP bet UDP, attiecīgi var izvēlēties arī LZO kompresiju utt
Pēc tam jāspiež uz pogas "Uz priekšu", tad "Pielietot".
Kad serveris veiksmīgi pievienots, nospiežot kreiso peles taustiņu uz NetworkManager apleta ikonas, var izvēlēties "VPN savienojumi -> openvpn tunelis".
Ja pēc pāris sekundēm pie ikonas parādas atslēdziņa, tad tas nozīmē ka klients ir veiksmīgi pieslēdzies serverim un atrodas virtuālajā tīklā
MacOS X klients
Jāizmanto dmg paka no http://www.tunnelblick.net/