Sinopsis pentru instalarea OpenVPN

Ca VPN timp am folosit PPP peste SSH.
Pentru una sau două persoane și totul a mers bine de rulare (și configura toate materialele la îndemână timp de 10 minute). Dar când am luat soluție VPN pentru 10+ persoane, în afară de care rulează pe Linux / Win, a trebuit să caute altceva.

Într-adevăr, CIPE. pe care am folosit pentru a conecta birouri necesită un port separat pentru fiecare tunel, nu funcționează foarte fiabil (modulul de kernel scade atunci când scanarea porturilor UDP), la aceeași sursă dopilivat nevoie pentru a construi un nou kernel Linux 2.6.
IPSec toate bune, dar clienții sunt adesea incompatibile unele cu altele, și setarea pentru Win-o foarte non-triviale. Și de multe ori se întâmplă că mai mulți clienți diferiți nu se inteleg împreună pe aceeași mașină.

Săpat în rețea de prieteni și posprashivaya a decis să lega OpenVPN.

Cărți, recomandand site-ul OpenVPN conține informații într-un mod împrăștiată, exact așa cum FAQ / HOWTO, motiv pentru care am scris acest rezumat.

Ca de obicei, toate sursele. Luând departe. Pentru a asambla LZO Biblioteca necesară, locuiește aici. Toate standard si simplu, și anume / configure face make install (nu uitați să spun ldconfig după asamblare de bibliotecă) primul LZO, și apoi OpenVPN.

Separat, clientul și serverul este configurat. OpenVPN lucrează prin driverul TUN / TAP. În Win toate setat automat, trebuie să activați TUN / TAP în kernel-ul (nucleul personalului care poate să fi fost colectate așa cum ar trebui) în Linux:

Pentru distributii mai mari, fără a udev / devfs fișier dispozitiv trebuie să fie făcut:

Atât server și client folosesc același binar.

Configurarea serverului (Unix)

Codul sursă dispune de toate script-urile necesare pentru a lucra cu certificate, copiați toate (am toate script-urile trăiesc în locale / script-uri / usr /):

Pentru o mai mare siguranță, are sens pentru a stoca totul legat de certificate pe o altă mașină.

Este logic să editați fișierul Vars și modificați setările pentru a genera certificate (KEY_EXPIRE, KEY_COUNTRY etc.).

Acum face certificatul și cheia pentru serverul

Generează cel puțin doi clienți cheie, cheie client0 numai pentru revocarea certificatului (a se vedea mai jos), chei client1, Client2 etc - pentru utilizatori reali:

Apoi se depune parametri Diffie Hellman:

și cheia pentru HMAC

Pe server, creați un director pentru certificatul și configurația

Și din directorul / usr / / script / ușor / chei locale RSA (masina care face certificatul) este copiat la server în / etc / OpenVPN următoarele fișiere:

Crearea unui fișier de configurare pentru server, /etc/openvpn/server.conf:

În exemplele însoțitoare, se propune utilizarea PAM, MySQL sau LDAP. Deoarece toți utilizatorii mei au deja acces la Squid protejat prin parolă, sa dovedit a fi mult mai convenabil de a folosi aceleași acreditări.

Am scris un simplu script /etc/openvpn/auth-htaccess-file.plx:

El doar hrănește numele de utilizator / passwd ncsa_auth'u la fel ca el calmari și dacă răspunsurile ncsa_auth „OK“, pornește într-juzverej.

Încercați să porniți serverul (nu uitați Tun modprobe!):

Dacă totul merge bine, consola va fi ceva de genul

Pentru pornire server este convenabil de a folosi ceva de genul /etc/init.d/openvpn:

În concluzie despre setările de firewall.
Implicit iptables blochează traficul pe toate dispozitivele de rețea, astfel încât trebuie să-l permite în mod explicit:

Și, desigur, permite direcționarea:

Pentru a configura clientul (Unix)

Binare utilizează aceleași și toate certificatele și fișierele de configurare - în / etc / OpenVPN.
Copiați fișierele client:

Fișierul de configurare pentru client, /etc/openvpn/client.conf:

Vreau să atrag atenția asupra regulat script-ul de pornire OpanVPN, care nu funcționează întotdeauna în mod corespunzător, cum ar fi mașinile Debian Sarthe cerute de utilizator / passwd și dacă acestea sunt greșite, procesul OpenVPN continuă să curgă, care deține dispozitivul tun0.

Configurare Client (Win)

Pune OpenVPN-2.1.1-install.exe. În versiiyu 2.1.1 include o interfață grafică la îndemână.

In C: \ Program Files \ OpenVPN \ config \ copia fișierele (în acest exemplu Client2 - vinyuki):

Acolo creați client.ovpn:

Rulați GUI, apoi faceți clic dreapta pe bara de sistem, selectați „Connect“.

Pe scurt! Adăugări și clarificări sunt primite.