Dacă doriți mai mult decât un chei pre-comune, OpenVPN simplifică instalarea și utilizarea infrastructurii de chei publice (PKI), destinate pentru autentificare utilizând SSL / TLS certificate, și schimbul de chei între serverul VPN și clienții. Modurile OpenVPN VPN pot fi utilizate cu rutare și de rețea pod și configurat pentru utilizare ca UDP sau TCP. Numărul portului poate fi de asemenea configurat, dar oficial 1194. Acesta este utilizat singur pentru toate comunicațiile. Implementările de client VPN sunt disponibile pentru aproape orice, inclusiv toate distribuțiile Linux. OS X. Windows și OpenWRT. care este baza pentru routerele WLAN.
Pentru a instala openvpn, tastați terminalul:
Primul pas în construirea configurației OpenVPN este instalarea PKI. PKI constă din:
certificate individuale (cunoscute și ca chei publice) și chei secrete pentru server și pentru fiecare client
certificatul autorității de certificare principale (CA) și cheia privată, care sunt utilizate pentru a semna digital certificatele server și client.
OpenVPN acceptă autentificarea bazată pe certificate pe două căi, ceea ce înseamnă că clientul trebuie să autentifice certificatul serverului, iar serverul trebuie să autentifice certificatul client înainte de stabilirea încrederii reciproce.
Atât serverul și clientul autentifica reciproc verificat dacă certificatul prezentat este semnat certificate în principal centru de certificat, și apoi verificarea informațiilor antet proaspăt certificat autentificat, cum ar fi un nume sau tipul de certificat (client sau server) comun.
Pentru a instala autoritatea de certificare (CA) proprie și pentru a genera certificate cu chei private pentru serverul OpenVPN și mulți clienți, copiați mai întâi directorul easy-rsa în / etc / openvpn. Acest lucru asigură că orice modificări ale scenariilor nu vor fi pierdute atunci când pachetul este actualizat. Din terminal, comutați la superuser (sudo -s) și executați:
Apoi, editați / etc / openvpn / easy-rsa / vars, corectând următoarele în funcție de realitate:
Introduceți următoarele pentru a crea certificatul de bază al autorității de certificare și cheia sa secretă:
Apoi, vom crea un certificat și o cheie secretă pentru server:
Ca și în etapa anterioară, majoritatea parametrilor pot fi selectați în mod implicit. Două alte solicitări necesită un răspuns pozitiv: "Semnează certificatul? [Y / n]" și "1 din 1 cereri de certificat certificate, comite?" [Y / n] ".
Parametrii Diffie-Hellman pentru serverul OpenVPN ar trebui să fie creați:
Toate certificatele și cheile vor fi create în chei / subdirector. Practica obișnuită este să le copiați în / etc / openvpn /.
De asemenea, clientul VPN necesită un certificat pentru autentificare pe server. De obicei, creați certificate separate pentru fiecare client. Pentru a crea un certificat, tastați următoarele în terminalul de sub superuser:
Copiați următoarele fișiere pe partea clientului utilizând metoda protejată:
Deoarece certificatele și cheile secrete sunt necesare numai pe partea clientului, trebuie să le eliminați de pe server.
Împreună cu instalarea OpenVPN primiți aceste exemple de fișiere de configurare (și mult mai mult dacă verificați):
Începeți prin copierea și despachetarea server.conf.gz în /etc/openvpn/server.conf.
Editați /etc/openvpn/server.conf și verificați dacă următoarele linii indică certificatele și cheile pe care le-am creat în secțiunea anterioară.
Acesta este cel minim necesar pentru configurarea serverului OpenVPN. Puteți utiliza toate valorile implicite din fișierul sample.conf exemplu. Acum, porniți serverul. Veți găsi un jurnal de evenimente și erori în syslog.
Acum, verificați dacă OpenVPN a creat interfața tun0.
Există mai multe implementări ale clientului OpenVPN atât cu și fără interfața grafică. Puteți citi mai multe despre clienți în secțiunea următoare. În prezent, folosim un client OpenVPN pentru Ubuntu care utilizează același program ca și serverul. Prin urmare, din nou trebuie să puneți pachetul openvpn, dar deja pe mașina client:
Între timp, copiați fișierul sample.cfr client în directorul / etc / openvpn /.
Copiați certificatul cheie client și autoritate de certificare creată în secțiunea anterioară, de exemplu, în / etc / OpenVPN / și edita /etc/openvpn/client.conf, pentru a se asigura că aceste linii indică aceste fișiere. Dacă ați pus fișierele în / etc / openvpn /. atunci calea către ei poate fi omisă.
Apoi, rulați clientul OpenVPN:
Asigurați-vă că a fost creată interfața tun0:
Verificați dacă aveți un server OpenVPN disponibil:
Verificați rutarea:
Dacă ceva nu funcționează pentru dvs., verificați următoarele:
Verificați-vă syslog-ul, de exemplu, astfel:
Se poate conecta clientul la server? Accesul este blocat de paravanul de protecție? Verificați syslog-ul de pe server.
Clientul și serverul trebuie să utilizeze același protocol și port, de exemplu, portul UDP 1194. Consultați portul de opțiuni de configurare și proto.
Clientul și serverul trebuie să utilizeze aceeași compresie. Consultați opțiunea de configurare a computerelor.
Clientul și serverul trebuie să utilizeze același mod: router sau bridge. Vedeți serverul de opțiuni de configurare sau puntea server-bridge.
Cele de mai sus sunt o VPN foarte simplu de lucru. Clientul are acces la serviciile de pe serverul VPN prin intermediul canalului criptat. Dacă doriți să accesați mai multe servere sau ceva pe alte rețele, adăugați mai multe rute către client. De exemplu, dacă rețeaua companiei dvs. în ansamblu poate fi descrisă ca 192.168.0.0/16, puteți adăuga această rută la client. Dar, de asemenea, va trebui să schimbați ruta pentru direcția inversă - serverele dvs. trebuie să știe cum să navigheze către rețeaua clientului VPN.
Sau puteți specifica o poartă de acces prestabilită pentru toți clienții pentru a trimite mai întâi tot traficul către serverul VPN și de la acesta prin firewall-ul companiei la Internet. În această secțiune veți vedea câteva opțiuni posibile pentru setări.
Treceți setările la serverul DNS către client:
Permiteți conexiunile dintre clienți:
Permiteți comprimarea unei conexiuni VPN:
Directiva Keepalive permite trimiterea mesajelor ping înainte și înapoi prin conexiunea pentru fiecare parte pentru a afla când cealaltă parte devine indisponibilă. Verificarea o dată pe secundă și decizia că punctul de la distanță nu răspunde, dacă răspunsul nu este acceptat în 3 secunde:
O idee bună este să reduceți privilegiile pentru serviciul OpenVPN după instalare:
OpenVPN 2.0 include posibilitatea ca serverul OpenVPN să obțină în siguranță numele de utilizator și parola de la clientul de conectare și să utilizeze aceste informații ca bază pentru autentificarea clientului. Pentru a utiliza această metodă de autentificare, mai întâi adăugați directiva auth-user-pass la configurația clientului. Acest lucru îi spune clientului OpenVPN să solicite un nume de utilizator și o parolă și să le transmită serverului printr-un canal TLS securizat.
Acest lucru îi spune serverului OpenVPN să verifice numele și parola introduse de client utilizând modulul PAM. Acest lucru este valabil dacă aveți autentificare centralizată, de exemplu, utilizând Kerberos.
Citiți ghidul de îmbunătățire a securității OpenVPN pentru mai multe sfaturi de securitate.
OpenVPN poate fi configurat în două moduri VPN: rutare și punte. Uneori se referă la modelul OSI de rețea VPN nivel 2 (canal) și nivel 3 (pachet). În modulul bridge network, toate cadrele VPN (cadre 2), cum ar fi cadrele ethernet, sunt trimise partenerului VPN, în timp ce în modul de rutare sunt trimise numai pachete de nivel 3. În modul bridge, tot traficul, inclusiv traficul tradițional local, cum ar fi pachetele de difuzare în rețea, solicitările DHCP, cererile ARP etc. este trimis la partenerul VPN, în timp ce în modul de rutare va fi filtrat.
Asigurați-vă că aveți instalat pachetul bridge-utils.
Înainte de a configura OpenVPN în modul Bridge Bridge, va trebui să modificați setările interfeței. Să presupunem că serverul dvs. este conectat prin intermediul eth0 la Internet, iar interfața eth1 este conectată la rețeaua locală pentru care doriți să instalați o punte de rețea. Fișierul / etc / network / interfaces ar trebui să arate cam așa:
Această setare pentru redirecționarea directă a interfețelor trebuie să fie fixată pentru modul bridge, unde setarea interfeței eth1 este mutată la noua interfață br0. În plus, vom sublinia că br0 este interfața de punte pentru eth1. De asemenea, trebuie să ne asigurăm că interfața eth1 este întotdeauna într-un mod promiscuu - aceasta va spune interfeței că va transmite toate pachetele ethernet către stiva IP.
În acest moment, va trebui să reporniți rețeaua. Fiți pregătit că acest lucru nu va funcționa conform destinației și veți pierde accesul la distanță. Asigurați-vă că puteți rezolva probleme utilizând accesul local.
Editați /etc/openvpn/server.conf modificând următoarele setări:
Apoi, creați un script de ajutor pentru a adăuga interfața robinet la pod și pentru a verifica dacă eth1 este în mod mixt. Creați /etc/openvpn/up.sh:
Faceți fișierul executabil:
După configurarea serverului, reporniți openvpn. prin introducerea:
Mai întâi, instalați openvpn pe client:
Apoi, cu serverul configurat și certificatele client copiate în directorul / etc / openvpn /, creați fișierul de configurare client copiind exemplul. În terminalul de pe mașina client, tastați:
Acum, modificați /etc/openvpn/client.conf, modificând următoarele opțiuni:
În cele din urmă, reporniți openvpn.
Acum aveți posibilitatea de a vă conecta la o rețea la distanță printr-o rețea VPN.
Multe distribuții Linux, inclusiv variantele desktop Ubuntu, vin cu Network Manager. O interfață grafică excelentă pentru configurarea rețelei. De asemenea, vă permite să gestionați conexiunile VPN. Verificați dacă pachetul network-manager-openvpn este instalat. Aici puteți vedea și instalarea tuturor celorlalte pachete necesare:
Pentru a informa administratorul de rețea despre noile pachete instalate, va trebui să îl reporniți:
Deschideți interfața Manager de rețea. selectați fila VPN, apoi faceți clic pe # "Adăugați #". Selectați OpenVPN ca tip VPN în interogarea care se deschide și faceți clic pe # 'Creare #'. În fereastra următoare, adăugați numele serverului OpenVPN ca gateway, setați tipul la # "Certificatele (TLS) #", specificați în # "Certificatul de utilizator #" este certificatul dvs. de utilizator, în Certificat "Certificat CA #" din Centrul dvs. de certificate și în # "Cheia privată #" a cheii dvs. private. Utilizați butonul # 'Advanced #' pentru a activa compresia și alte setări speciale pe care le-ați instalat pe server. Acum încercați să instalați VPN-ul.
Trebuie să porniți serviciul OpenVPN. Selectați Start> Computer> Gestionare> Servicii și aplicații> Servicii din meniul Start. Găsiți serviciul OpenVPN și rulați-l. Setați tipul de descărcare la automat. Când descărcați pentru prima dată OpenVPN MI GUI, trebuie să faceți acest lucru în modul Administrator. Pentru a face acest lucru, trebuie să faceți clic dreapta pe pictograma programului și veți vedea această setare.
Va trebui să scrie în jos configurația OpenVPN într-un fișier text și puneți-l în directorul C: \ Program Files \ OpenVPN \ config \ client.ovpn împreună cu certificatul centrului de certificat. Puteți pune certificatul de utilizator în directorul de domiciliu, după cum se specifică în acest exemplu:
OpenWRT descris ca distribuție Linux pentru încorporarea în dispozitiv de tip WLAN router. Există un set de routere, în care pot fi înregistrate OpenWRT. În funcție de memoria disponibilă a routerului OpenWRT poate rula programe, cum ar fi OpenVPN, și puteți, de exemplu, pentru a construi un birou mic, ieftin, cu un router extern conectat prin VPN la biroul central. Unde puteți găsi mai multe informații despre OpenVPN pentru OpenWRT. Și aici este pagina proiectului OpenWRT.
Conectați-vă la routerul OpenWRT și instalați OpenVPN.
Găsiți / etc / config / openvpn și puneți setările clientului în el. Copiați certificatele și cheile din / etc / openvpn /.
Va trebui să vedeți dacă trebuie să modificați regulile de rutare și firewall în router.