Fragments ā10.1. OpenVPN tuneļa izveide"
Pareizi izstrÄdÄts VPN tunelis nodroÅ”ina tieÅ”u savienojumu starp attÄliem klientiem un serveri tÄdÄ veidÄ, kas slÄpj datus, kad tie pÄrvietojas nedroÅ”Ä tÄ«klÄ. Nu ko? JÅ«s jau esat redzÄjis daudzus rÄ«kus, kas to var paveikt ar Å”ifrÄÅ”anu. VPN patiesÄ vÄrtÄ«ba ir tÄda, ka, atverot tuneli, jÅ«s varat savienot attÄlos tÄ«klus tÄ, it kÄ tie visi bÅ«tu lokÄli. SavÄ ziÅÄ jÅ«s izmantojat apvedceļu.
Izmantojot Å”o paplaÅ”inÄto tÄ«klu, administratori var veikt savu darbu savos serveros no jebkuras vietas. Bet vÄl svarÄ«gÄk ir tas, ka uzÅÄmums, kura resursi ir sadalÄ«ti vairÄkÄs vietÄs, var padarÄ«t tos visus redzamus un pieejamus visÄm grupÄm, kurÄm tie ir nepiecieÅ”ami, neatkarÄ«gi no to atraÅ”anÄs vietas (10.1. attÄls).
Pats tunelis negarantÄ droŔību. Bet vienu no Å”ifrÄÅ”anas standartiem var iekļaut tÄ«kla struktÅ«rÄ, kas bÅ«tiski paaugstina droŔības lÄ«meni. Tuneļos, kas izveidoti, izmantojot atvÄrtÄ pirmkoda OpenVPN pakotni, tiek izmantota tÄ pati TLS/SSL Å”ifrÄÅ”ana, par kuru jau esat lasÄ«jis. OpenVPN nav vienÄ«gÄ pieejamÄ tunelÄÅ”anas iespÄja, taÄu tÄ ir viena no pazÄ«stamÄkajÄm. Tiek uzskatÄ«ts, ka tas ir nedaudz ÄtrÄks un droÅ”Äks nekÄ alternatÄ«vais Layer 2 tuneļa protokols, kas izmanto IPsec Å”ifrÄÅ”anu.
Vai vÄlaties, lai visi jÅ«su komandÄ droÅ”i sazinÄtos savÄ starpÄ, atrodoties ceÄ¼Ä vai strÄdÄjot dažÄdÄs ÄkÄs? Lai to izdarÄ«tu, jums ir jÄizveido OpenVPN serveris, lai atļautu lietojumprogrammu koplietoÅ”anu un piekļuvi servera lokÄlÄ tÄ«kla videi. Lai tas darbotos, viss, kas jums jÄdara, ir jÄpalaiž divas virtuÄlÄs maŔīnas vai divi konteineri: viens darbojas kÄ serveris/resursdators un otrs kÄ klients. VPN izveide nav vienkÄrÅ”s process, tÄpÄc, iespÄjams, ir vÄrts veltÄ«t dažas minÅ«tes, lai iegÅ«tu kopainu.
10.1.1. OpenVPN servera konfigurÄcija
Pirms sÄkat, es jums sniegÅ”u dažus noderÄ«gus padomus. Ja grasÄties to darÄ«t pats (un es ļoti iesaku to darÄ«t), iespÄjams, strÄdÄsit ar vairÄkiem darbvirsmas terminÄļa logiem, no kuriem katrs ir savienots ar citu iekÄrtu. PastÄv risks, ka kÄdÄ brÄ«dÄ« logÄ ievadÄ«siet nepareizu komandu. Lai no tÄ izvairÄ«tos, varat izmantot komandu hostname, lai komandrindÄ parÄdÄ«to maŔīnas nosaukumu mainÄ«tu uz tÄdu, kas skaidri norÄda jÅ«su atraÅ”anÄs vietu. Kad tas bÅ«s izdarÄ«ts, jums bÅ«s jÄatsakÄs no servera un jÄpiesakÄs vÄlreiz, lai jaunie iestatÄ«jumi stÄtos spÄkÄ. Tas izskatÄs Å”Ädi:
IevÄrojot Å”o pieeju un pieŔķirot atbilstoÅ”u nosaukumu katrai iekÄrtai, ar kuru strÄdÄjat, varat viegli izsekot, kur atrodaties.
PÄc saimniekdatora nosaukuma izmantoÅ”anas, izpildot nÄkamÄs komandas, var rasties kaitinoÅ”i ziÅojumi Nevar atrisinÄt Host OpenVPN-Server. Atjauninot /etc/hosts failu ar atbilstoÅ”u jauno resursdatora nosaukumu, problÄma jÄatrisina.
Servera sagatavoŔana OpenVPN
Lai instalÄtu OpenVPN savÄ serverÄ«, ir nepiecieÅ”amas divas pakotnes: openvpn un easy-rsa (lai pÄrvaldÄ«tu Å”ifrÄÅ”anas atslÄgas Ä£enerÄÅ”anas procesu). CentOS lietotÄjiem, ja nepiecieÅ”ams, vispirms jÄinstalÄ epel-release repozitorijs, kÄ jÅ«s to darÄ«jÄt 2. nodaļÄ. Lai varÄtu pÄrbaudÄ«t piekļuvi servera lietojumprogrammai, varat arÄ« instalÄt Apache tÄ«mekļa serveri (apache2 Ubuntu un httpd uz CentOS).
KamÄr iestatÄt serveri, iesaku aktivizÄt ugunsmÅ«ri, kas bloÄ·Ä visus portus, izÅemot 22 (SSH) un 1194 (OpenVPN noklusÄjuma ports). Å is piemÄrs parÄda, kÄ ufw darbotos Ubuntu, taÄu esmu pÄrliecinÄts, ka jÅ«s joprojÄm atceraties CentOS ugunsmÅ«ra programmu no 9. nodaļas:
# ufw enable
# ufw allow 22
# ufw allow 1194
Lai iespÄjotu iekÅ”Äjo marÅ”rutÄÅ”anu starp servera tÄ«kla saskarnÄm, failÄ /etc/sysctl.conf ir jÄatceļ viena rindiÅa (net.ipv4.ip_forward = 1). Tas ļaus attÄlos klientus pÄc vajadzÄ«bas novirzÄ«t pÄc savienojuma izveides. Lai jaunÄ opcija darbotos, palaidiet sysctl -p:
# nano /etc/sysctl.conf
# sysctl -p
JÅ«su servera vide tagad ir pilnÄ«bÄ konfigurÄta, taÄu ir vÄl viena lieta, kas jÄizdara, pirms esat gatavs: jums bÅ«s jÄveic tÄlÄk norÄdÄ«tÄs darbÄ«bas (mÄs tÄs sÄ«kÄk apskatÄ«sim tÄlÄk).
- ServerÄ« izveidojiet publiskÄs atslÄgas infrastruktÅ«ras (PKI) Å”ifrÄÅ”anas atslÄgu kopu, izmantojot skriptus, kas ir iekļauti pakotnÄ easy-rsa. BÅ«tÄ«bÄ OpenVPN serveris darbojas arÄ« kÄ sava sertifikÄtu iestÄde (CA).
- Sagatavojiet klientam atbilstoÅ”as āāatslÄgas
- KonfigurÄjiet serverim failu server.conf
- Iestatiet savu OpenVPN klientu
- PÄrbaudiet savu VPN
Å ifrÄÅ”anas atslÄgu Ä£enerÄÅ”ana
Lai lietas bÅ«tu vienkÄrÅ”as, galveno infrastruktÅ«ru varat iestatÄ«t tajÄ paÅ”Ä datorÄ, kurÄ darbojas OpenVPN serveris. TomÄr droŔības paraugprakse parasti iesaka ražoÅ”anas izvietoÅ”anai izmantot atseviŔķu CA serveri. Å ifrÄÅ”anas atslÄgas resursu Ä£enerÄÅ”anas un izplatÄ«Å”anas process izmantoÅ”anai OpenVPN ir parÄdÄ«ts attÄlÄ. 10.2.
Kad instalÄjÄt OpenVPN, direktorijs /etc/openvpn/ tika izveidots automÄtiski, taÄu tajÄ vÄl nav nekÄ. Openvpn un easy-rsa pakotnÄs ir iekļauti veidÅu failu piemÄri, kurus varat izmantot kÄ pamatu savai konfigurÄcijai. Lai sÄktu sertifikÄcijas procesu, kopÄjiet easy-rsa veidnes direktoriju no /usr/share/ uz /etc/openvpn un mainiet uz easy-rsa/ direktoriju:
# cp -r /usr/share/easy-rsa/ /etc/openvpn
$ cd /etc/openvpn/easy-rsa
Easy-rsa direktorijÄ tagad bÅ«s daudz skriptu. TabulÄ 10.1 ir uzskaitÄ«ti rÄ«ki, kurus izmantosit atslÄgu izveidei.
IepriekÅ”minÄtajÄm darbÄ«bÄm ir nepiecieÅ”amas root tiesÄ«bas, tÄpÄc jums ir jÄkļūst par root, izmantojot sudo su.
Pirmais fails, ar kuru strÄdÄsit, tiek saukts par vars, un tajÄ ir vides mainÄ«gie, ko easy-rsa izmanto, Ä£enerÄjot atslÄgas. Fails ir jÄrediÄ£Ä, lai izmantotu savas vÄrtÄ«bas, nevis jau esoÅ”Äs noklusÄjuma vÄrtÄ«bas. Å Ädi izskatÄ«sies mans fails (10.1. saraksts).
Uzskaitījums 10.1. Galvenie faila fragmenti /etc/openvpn/easy-rsa/vars
export KEY_COUNTRY="CA"
export KEY_PROVINCE="ON"
export KEY_CITY="Toronto"
export KEY_ORG="Bootstrap IT"
export KEY_EMAIL="[email protected]"
export KEY_OU="IT"
Palaižot vars failu, tÄ vÄrtÄ«bas tiks nodotas Äaulas videi, kur tÄs tiks iekļautas jÅ«su jauno atslÄgu saturÄ. KÄpÄc sudo komanda pati par sevi nedarbojas? Jo pirmajÄ solÄ« mÄs rediÄ£Äjam skriptu ar nosaukumu vars un pÄc tam lietojam to. PiemÄroÅ”ana un nozÄ«mÄ, ka vars fails nodod savas vÄrtÄ«bas Äaulas videi, kur tÄs tiks iekļautas jÅ«su jauno atslÄgu saturÄ.
Noteikti atkÄrtoti palaidiet failu, izmantojot jaunu Äaulu, lai pabeigtu nepabeigto procesu. Kad tas ir izdarÄ«ts, skripts liks jums palaist citu skriptu, notÄ«rot visu, lai noÅemtu jebkÄdu saturu direktorijÄ /etc/openvpn/easy-rsa/keys/:
Protams, nÄkamais solis ir palaist skriptu āclean-allā, kam seko build-ca, kas izmanto pkitool skriptu, lai izveidotu saknes sertifikÄtu. Jums tiks lÅ«gts apstiprinÄt identitÄtes iestatÄ«jumus, ko nodroÅ”ina vars:
# ./clean-all
# ./build-ca
Generating a 2048 bit RSA private key
NÄkamais nÄk build-key-server skripts. TÄ kÄ tas izmanto to paÅ”u pkitool skriptu kopÄ ar jaunu saknes sertifikÄtu, jÅ«s redzÄsit tos paÅ”us jautÄjumus, lai apstiprinÄtu atslÄgu pÄra izveidi. AtslÄgÄm tiks pieŔķirti nosaukumi, pamatojoties uz jÅ«su nodotajiem argumentiem, kas parasti ir serveris, kÄ parÄdÄ«ts piemÄrÄ, ja vien Å”ajÄ maŔīnÄ nedarbojat vairÄkus VPN:
# ./build-key-server server
[...]
Certificate is to be certified until Aug 15 23:52:34 2027 GMT (3650 days)
Sign the certificate? [y/n]:y
1 out of 1 certificate requests certified, commit? [y/n]y
Write out database with 1 new entries
Data Base Updated
OpenVPN izmanto Diffie-Hellman algoritma Ä£enerÄtus parametrus (izmantojot build-dh), lai vienotos par autentifikÄciju jauniem savienojumiem. Å eit izveidotajam failam nav jÄbÅ«t slepenam, bet tas ir jÄÄ£enerÄ, izmantojot skriptu build-dh RSA atslÄgÄm, kas paÅ”laik ir aktÄ«vas. Ja nÄkotnÄ izveidosit jaunas RSA atslÄgas, jums bÅ«s jÄatjaunina arÄ« Diffie-Hellman fails:
# ./build-dh
JÅ«su servera puses atslÄgas tagad nonÄks direktorijÄ /etc/openvpn/easy-rsa/keys/, taÄu OpenVPN to nezina. PÄc noklusÄjuma OpenVPN meklÄs atslÄgas mapÄ /etc/openvpn/, tÄpÄc kopÄjiet tÄs:
# cp /etc/openvpn/easy-rsa/keys/server* /etc/openvpn
# cp /etc/openvpn/easy-rsa/keys/dh2048.pem /etc/openvpn
# cp /etc/openvpn/easy-rsa/keys/ca.crt /etc/openvpn
Klientu Å”ifrÄÅ”anas atslÄgu sagatavoÅ”ana
KÄ jau redzÄjÄt, TLS Å”ifrÄÅ”anai tiek izmantoti atbilstoÅ”o atslÄgu pÄri: viena ir instalÄta serverÄ« un viena ir instalÄta attÄlajÄ klientÄ. Tas nozÄ«mÄ, ka jums bÅ«s nepiecieÅ”amas klienta atslÄgas. MÅ«su vecais draugs pkitool ir tieÅ”i tas, kas jums nepiecieÅ”ams. Å ajÄ piemÄrÄ, kad mÄs palaižam programmu direktorijÄ /etc/openvpn/easy-rsa/, mÄs tai nododam klienta argumentu, lai Ä£enerÄtu failus ar nosaukumu client.crt un client.key:
# ./pkitool client
Abi klienta faili kopÄ ar sÄkotnÄjo ca.crt failu, kas joprojÄm atrodas atslÄgas/ direktorijÄ, tagad ir droÅ”i jÄpÄrsÅ«ta uz jÅ«su klientu. ViÅu Ä«paÅ”umtiesÄ«bu un piekļuves tiesÄ«bu dÄļ tas var nebÅ«t tik vienkÄrÅ”i. VienkÄrÅ”ÄkÄ pieeja ir manuÄli kopÄt avota faila saturu (un tikai Å”o saturu) terminÄlÄ«, kas darbojas datora darbvirsmÄ (atlasiet tekstu, ar peles labo pogu noklikŔķiniet uz tÄ un izvÄlnÄ atlasiet KopÄt). PÄc tam ielÄ«mÄjiet to jaunÄ failÄ ar tÄdu paÅ”u nosaukumu, kÄdu izveidojat otrajÄ terminÄlÄ«, kas savienots ar jÅ«su klientu.
Bet ikviens var izgriezt un ielÄ«mÄt. TÄ vietÄ domÄjiet kÄ administrators, jo jums ne vienmÄr bÅ«s piekļuve GUI, kurÄ ir iespÄjamas izgrieÅ”anas/ielÄ«mÄÅ”anas darbÄ«bas. KopÄjiet failus uz sava lietotÄja mÄjas direktoriju (lai attÄlÄ scp darbÄ«ba varÄtu tiem piekļūt) un pÄc tam izmantojiet chown, lai mainÄ«tu failu Ä«paÅ”umtiesÄ«bas no saknes uz parastu lietotÄju, kas nav saknes lietotÄjs, lai varÄtu veikt attÄlo scp darbÄ«bu. PÄrliecinieties, vai visi faili paÅ”laik ir instalÄti un pieejami. JÅ«s tos pÄrvietosit klientam nedaudz vÄlÄk:
# cp /etc/openvpn/easy-rsa/keys/client.key /home/ubuntu/
# cp /etc/openvpn/easy-rsa/keys/ca.crt /home/ubuntu/
# cp /etc/openvpn/easy-rsa/keys/client.crt /home/ubuntu/
# chown ubuntu:ubuntu /home/ubuntu/client.key
# chown ubuntu:ubuntu /home/ubuntu/client.crt
# chown ubuntu:ubuntu /home/ubuntu/ca.crt
Kad pilns Å”ifrÄÅ”anas atslÄgu komplekts ir gatavs lietoÅ”anai, jums ir jÄpaziÅo serverim, kÄ vÄlaties izveidot VPN. Tas tiek darÄ«ts, izmantojot failu server.conf.
TaustiÅu nospieÅ”anas skaita samazinÄÅ”ana
Vai ir pÄrÄk daudz rakstÄ«Å”anas? PaplaÅ”inÄÅ”ana ar iekavÄm palÄ«dzÄs samazinÄt Ŕīs seÅ”as komandas lÄ«dz divÄm. Esmu pÄrliecinÄts, ka varat izpÄtÄ«t Å”os divus piemÄrus un saprast, kas notiek. VÄl svarÄ«gÄk ir tas, ka jÅ«s varÄsit saprast, kÄ piemÄrot Å”os principus darbÄ«bÄm, kas ietver desmitiem vai pat simtiem elementu:
# cp /etc/openvpn/easy-rsa/keys/{ca.crt,client.{key,crt}} /home/ubuntu/ # chown ubuntu:ubuntu /home/ubuntu/{ca.crt,client.{key,crt}}
Server.conf faila iestatīŔana
KÄ jÅ«s varat zinÄt, kÄ vajadzÄtu izskatÄ«ties failam server.conf? Atcerieties easy-rsa direktorija veidni, ko nokopÄjÄt no /usr/share/? Kad instalÄjÄt OpenVPN, jums palika saspiests konfigurÄcijas veidnes fails, kuru varat kopÄt mapÄ /etc/openvpn/. Es izmantoÅ”u faktu, ka veidne ir arhivÄta, un iepazÄ«stinÄÅ”u jÅ«s ar noderÄ«gu rÄ«ku: zcat.
JÅ«s jau zinÄt par faila teksta satura drukÄÅ”anu ekrÄnÄ, izmantojot komandu cat, bet ko darÄ«t, ja fails tiek saspiests, izmantojot gzip? JÅ«s vienmÄr varat izpakot failu, un tad cat to labprÄt izvadÄ«s, taÄu tas ir par vienu vai diviem soļiem vairÄk nekÄ nepiecieÅ”ams. TÄ vietÄ, kÄ jÅ«s, iespÄjams, uzminÄjÄt, varat izdot komandu zcat, lai vienÄ darbÄ«bÄ ielÄdÄtu neiepakotu tekstu atmiÅÄ. Å ajÄ piemÄrÄ tÄ vietÄ, lai drukÄtu tekstu uz ekrÄna, jÅ«s to novirzÄ«sit uz jaunu failu server.conf:
# zcat
/usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz
> /etc/openvpn/server.conf
$ cd /etc/openvpn
Noliksim malÄ plaÅ”o un noderÄ«go dokumentÄciju, kas tiek piegÄdÄta kopÄ ar failu, un redzÄsim, kÄ tas varÄtu izskatÄ«ties, kad esat pabeidzis rediÄ£ÄÅ”anu. Å emiet vÄrÄ, ka semikols (;) norÄda OpenVPN nelasÄ«t vai neizpildÄ«t nÄkamo rindiÅu (10.2. saraksts).
Apskatīsim dažus no Ŕiem iestatījumiem.
- PÄc noklusÄjuma OpenVPN darbojas portÄ 1194. Varat to mainÄ«t, piemÄram, lai vÄl vairÄk slÄptu savas darbÄ«bas vai izvairÄ«tos no konfliktiem ar citiem aktÄ«viem tuneļiem. TÄ kÄ 1194 ir nepiecieÅ”ama minimÄla saskaÅoÅ”ana ar klientiem, vislabÄk to darÄ«t Å”ÄdÄ veidÄ.
- OpenVPN datu pÄrsÅ«tÄ«Å”anai izmanto vai nu pÄrraides kontroles protokolu (TCP) vai lietotÄja datugrammu protokolu (UDP). TCP var bÅ«t nedaudz lÄnÄks, taÄu tas ir uzticamÄks un, visticamÄk, to sapratÄ«s lietojumprogrammas, kas darbojas abos tuneļa galos.
- Varat norÄdÄ«t dev tun, ja vÄlaties izveidot vienkÄrÅ”Äku, efektÄ«vÄku IP tuneli, kas pÄrnÄsÄ datu saturu un neko citu. No otras puses, ja jums ir nepiecieÅ”ams savienot vairÄkas tÄ«kla saskarnes (un to pÄrstÄvÄtos tÄ«klus), izveidojot Ethernet tiltu, jums bÅ«s jÄizvÄlas dev tap. Ja jÅ«s nesaprotat, ko tas viss nozÄ«mÄ, izmantojiet tun argumentu.
- NÄkamajÄs ÄetrÄs rindÄs OpenVPN ir norÄdÄ«ti trÄ«s servera autentifikÄcijas failu un iepriekÅ” izveidotÄ opciju faila dh2048 nosaukumi.
- Servera līnija iestata diapazonu un apakŔtīkla masku, kas tiks izmantots, lai klientiem pieŔķirtu IP adreses, piesakoties.
- IzvÄles push parametrs "route 10.0.3.0 255.255.255.0" ļauj attÄliem klientiem piekļūt privÄtiem apakÅ”tÄ«kliem aiz servera. Lai tas darbotos, ir jÄiestata tÄ«kls arÄ« paÅ”Ä serverÄ«, lai privÄtais apakÅ”tÄ«kls zinÄtu par OpenVPN apakÅ”tÄ«klu (10.8.0.0).
- Port-share localhost 80 lÄ«nija ļauj novirzÄ«t klienta trafiku, kas nÄk no porta 1194, uz vietÄjo tÄ«mekļa serveri, kas klausÄs portÄ 80. (Tas bÅ«s noderÄ«gi, ja izmantojat tÄ«mekļa serveri, lai pÄrbaudÄ«tu savu VPN.) Tas darbojas tikai tad, kad ir atlasÄ«ts tcp protokols.
- LietotÄja neviens un grupas nogroup rindas ir jÄiespÄjo, noÅemot semikolu (;). Piespiežot attÄlos klientus darboties kÄ nevienam un bezgrupai, tiek nodroÅ”inÄts, ka sesijas serverÄ« nav priviliÄ£Ätas.
- žurnÄls norÄda, ka paÅ”reizÄjie žurnÄla ieraksti pÄrrakstÄ«s vecos ierakstus katru reizi, kad tiek startÄts OpenVPN, savukÄrt žurnÄla pievienoÅ”ana pievieno jaunus ierakstus esoÅ”ajam žurnÄlfailam. Pats openvpn.log fails tiek ierakstÄ«ts direktorijÄ /etc/openvpn/.
TurklÄt konfigurÄcijas failam bieži tiek pievienota arÄ« viena klienta vÄrtÄ«ba, lai vairÄki klienti varÄtu redzÄt viens otru papildus OpenVPN serverim. Ja esat apmierinÄts ar savu konfigurÄciju, varat startÄt OpenVPN serveri:
# systemctl start openvpn
TÄ kÄ OpenVPN un systemd attiecÄ«bas mainÄs, pakalpojuma palaiÅ”anai dažkÄrt var bÅ«t nepiecieÅ”ama Å”Äda sintakse: systemctl start openvpn@server.
Palaižot ip addr, lai uzskaitÄ«tu servera tÄ«kla saskarnes, tagad vajadzÄtu izvadÄ«t saiti uz jaunu saskarni ar nosaukumu tun0. OpenVPN to izveidos, lai apkalpotu ienÄkoÅ”os klientus:
$ ip addr
[...]
4: tun0: mtu 1500 qdisc [...]
link/none
inet 10.8.0.1 peer 10.8.0.2/32 scope global tun0
valid_lft forever preferred_lft forever
Jums var bÅ«t nepiecieÅ”ams restartÄt serveri, pirms viss sÄk darboties pilnÄ«bÄ. NÄkamÄ pietura ir klienta dators.
10.1.2. OpenVPN klienta konfigurÄÅ”ana
TradicionÄli tuneļi tiek bÅ«vÄti ar vismaz divÄm izejÄm (citÄdi mÄs tos sauktu par alÄm). Pareizi konfigurÄts OpenVPN serverÄ« novirza trafiku vienÄ tunelÄ« un no tÄ. Bet jums bÅ«s nepiecieÅ”ama arÄ« programmatÅ«ra, kas darbojas klienta pusÄ, tas ir, tuneļa otrÄ galÄ.
Å ajÄ sadaÄ¼Ä es pievÄrsÄ«Å”os manuÄlai noteikta veida Linux datora iestatÄ«Å”anai, lai tas darbotos kÄ OpenVPN klients. Bet tas nav vienÄ«gais veids, kÄ Å”Ä« iespÄja ir pieejama. OpenVPN atbalsta klientu lietojumprogrammas, kuras var instalÄt un izmantot galddatoros un klÄpjdatoros, kuros darbojas operÄtÄjsistÄma Windows vai macOS, kÄ arÄ« Android un iOS viedtÄlruÅos un planÅ”etdatoros. PlaÅ”Äku informÄciju skatiet vietnÄ openvpn.net.
OpenVPN pakotne klienta datorÄ bÅ«s jÄinstalÄ tÄpat, kÄ tÄ tika instalÄta serverÄ«, lai gan Å”eit nav nepiecieÅ”ams easy-rsa, jo jÅ«su izmantotÄs atslÄgas jau pastÄv. Veidnes fails client.conf ir jÄkopÄ tikko izveidotajÄ direktorijÄ /etc/openvpn/. Å oreiz fails netiks saspiests, tÄpÄc parastÄ cp komanda veiks darbu lieliski:
# apt install openvpn
# cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf
/etc/openvpn/
LielÄkÄ daļa iestatÄ«jumu failÄ client.conf bÅ«s diezgan paÅ”saprotami: tiem jÄatbilst servera vÄrtÄ«bÄm. KÄ redzams tÄlÄk sniegtajÄ parauga failÄ, unikÄlais parametrs ir attÄlais 192.168.1.23 1194, kas klientam paziÅo servera IP adresi. VÄlreiz pÄrliecinieties, vai Ŕī ir jÅ«su servera adrese. Jums arÄ« jÄpiespiež klienta dators pÄrbaudÄ«t servera sertifikÄta autentiskumu, lai novÄrstu iespÄjamu starpnieka uzbrukumu. Viens veids, kÄ to izdarÄ«t, ir pievienot rindiÅu remote-cert-tls serveris (saraksts 10.3).
Tagad varat doties uz direktoriju /etc/openvpn/ un izvilkt sertifikÄcijas atslÄgas no servera. AizstÄjiet servera IP adresi vai domÄna nosaukumu piemÄrÄ ar savÄm vÄrtÄ«bÄm:
VisticamÄk, nekas aizraujoÅ”s nenotiks, kamÄr klientÄ nepalaidÄ«sit OpenVPN. TÄ kÄ jums ir jÄnodod daži argumenti, jÅ«s to darÄ«sit no komandrindas. Arguments --tls-client norÄda OpenVPN, ka jÅ«s darbosities kÄ klients un izveidosit savienojumu, izmantojot TLS Å”ifrÄÅ”anu, un --config norÄda uz jÅ«su konfigurÄcijas failu:
# openvpn --tls-client --config /etc/openvpn/client.conf
UzmanÄ«gi izlasiet komandas izvadi, lai pÄrliecinÄtos, ka savienojums ir pareizi. Ja kaut kas noiet greizi pirmo reizi, tas var bÅ«t saistÄ«ts ar iestatÄ«jumu neatbilstÄ«bu starp servera un klienta konfigurÄcijas failiem vai tÄ«kla savienojuma/ugunsmÅ«ra problÄma. Å eit ir daži problÄmu novÄrÅ”anas padomi.
- UzmanÄ«gi izlasiet klienta OpenVPN operÄcijas izvadi. TajÄ bieži ir vÄrtÄ«gi padomi par to, ko tieÅ”i nevar izdarÄ«t un kÄpÄc.
- PÄrbaudiet kļūdu ziÅojumus failos openvpn.log un openvpn-status.log servera direktorijÄ /etc/openvpn/.
- PÄrbaudiet, vai sistÄmas žurnÄlos serverÄ« un klientÄ nav ar OpenVPN saistÄ«tu un laika ziÅojumu. (journalctl -ce parÄdÄ«s jaunÄkos ierakstus.)
- PÄrliecinieties, vai starp serveri un klientu ir aktÄ«vs tÄ«kla savienojums (vairÄk par to 14. nodaļÄ).
Par Autors
Deivids Klintons - sistÄmas administrators, skolotÄjs un rakstnieks. ViÅÅ” ir administrÄjis, rakstÄ«jis un veidojis izglÄ«tojoÅ”us materiÄlus daudzÄm svarÄ«gÄm tehniskÄm disciplÄ«nÄm, tostarp Linux sistÄmÄm, mÄkoÅdatoÅ”anu (Ä«paÅ”i AWS) un konteineru tehnoloÄ£ijÄm, piemÄram, Docker. ViÅÅ” uzrakstÄ«ja grÄmatu Learn Amazon Web Services in a Month of Lunches (Manning, 2017). Daudzus viÅa video apmÄcÄ«bas kursus var atrast vietnÄ Pluralsight.com, un saites uz citÄm viÅa grÄmatÄm (par Linux administrÄÅ”anu un servera virtualizÄciju) ir pieejamas vietnÄ
Ā» SÄ«kÄku informÄciju par grÄmatu var atrast vietnÄ
Ā»
Ā»
Par Khabrozhiteley 25% atlaide, izmantojot kuponu - Linux
ApmaksÄjot grÄmatas papÄ«ra versiju, pa e-pastu tiks nosÅ«tÄ«ta elektroniskÄ grÄmata.
Avots: www.habr.com