Instalarea clientului și serverului OpenVPN pe un router DD-WRT

Routere Linksys WRT54GDD-WRT este firmware Open Source pentru o gamă largă de routere. Multe routere au multe funcții la care furnizorii nu oferă acces prin interfața administrativă a routerului. Firmware-ul DD-WRT deblochează tot ce este capabil de routerul dvs., inclusiv a deveni client OpenVPN și / sau server OpenVPN.


Vezi si: cele mai bune VPN-uri pentru routere DD-WRT.

Unde primesc un router DD-WRT?

Linksys a produs routerele WRT originale. Firmware-ul open source DD-WRT de astăzi se bazează pe firmware-ul Linksys WRT dezvoltat pentru seria sa de routere WRT54G. Partea „DD” a DD-WRT este un tip de pălărie pentru codul plăcii de înmatriculare pentru orașul Dresda, Germania, unde locuiește principalul întreținător al proiectului DD-WRT..

Astăzi, este posibil să achiziționați routere care rulează deja DD-WRT de la Linksys și alți producători de routere. De asemenea, este posibil să instalați DD-WRT pe multe alte mărci de routere care sunt instalate cu firmware-ul proprietar. De exemplu, routerul meu este un TP-Link c1900 ArcherC9 care a venit cu firmware-ul TP-Link. L-am aprins cu firmware-ul DD-WRT corespunzător și acum este un router DD-WRT.

De ce instalați OpenVPN pe router?

Routerul dvs. ca client OpenVPN

Având în vedere că există o aplicație client OpenVPN pentru aproape fiecare computer, tabletă și telefon pe piață, nu este întotdeauna evident de ce instalarea OpenVPN pe routerul dvs. poate fi un avantaj.

Conectarea routerului dvs. direct la furnizorul VPN înseamnă că nu trebuie neapărat să rulați software VPN pe niciunul dintre dispozitivele dvs. Sperăm că utilizați WPA2 sau un nivel echivalent de criptare în rețeaua dvs. internă, așa că este rezonabil să presupunem că traficul este oarecum protejat de ochii indepărtați. Dar, odată ce traficul dvs. atinge routerul, acesta trece prin rețeaua ISP la destinație. Configurarea routerului dvs. ca client VPN vă asigură că traficul care lasă routerul dvs. este criptat pe măsură ce trece prin ISP-ul dvs. până când ajunge la punctul de ieșire VPN pe internetul public.

Printre avantajele rulării unui client VPN pe router se numără:

  • Este necesară o singură conexiune la serverul VPN. Acest lucru poate ajuta la evitarea limitelor de conexiune stabilite de unii furnizori VPN.
  • Multe dispozitive, cum ar fi televizoarele Apple, nu au o modalitate simplă de a instala software-ul VPN. Având software-ul VPN rulat pe routerul dvs., tot traficul din rețeaua dvs. trece prin VPN fără probleme.
  • VPN este întotdeauna activ, așa că nu trebuie să vă amintiți să îl porniți atunci când doriți să îl utilizați.

Routerul dvs. ca server OpenVPN

Transformarea routerului într-un server OpenVPN înseamnă că veți putea accesa rețeaua de acasă din exterior. Dacă sunteți pe drum, dar aveți nevoie să accesați documente sau alte computere din rețelele dvs. interne, puteți aprinde un client OpenVPN, vă puteți conecta la serverul OpenVPN al routerului și vă aflați în.

Cum pot transforma routerul meu DD-WRT într-un client OpenVPN?

Firmware-ul DD-WRT face acest lucru foarte ușor, deoarece acceptă VPN-urile OpenVPN și PPTP în stil. PPTP este un protocol VPN foarte nesigur, așa că recomandăm OpenVPN peste PPTP.

Vezi si: Fișa noastră de înșelare a protocoalelor VPN.

Conectați-vă la routerul dvs. Adresa de conectare a interfeței administrative DD-WRT este de obicei 192.168.0.1, dar este posibil să vă configurați altfel rețeaua. După ce ați intrat, navigați la Servicii tab, apoi la VPN fila.

meniul de top dd-wrt

Vom configura funcția de client OpenVPN a routerului. Primul lucru de care veți avea nevoie este un server OpenVPN la care să vă conectați. Este posibil să fi construit propriul server OpenVPN sau este posibil să utilizați un furnizor VPN care acceptă OpenVPN. Voi folosi ProtonVPN pentru acest articol, dar în afară de obținerea configurației OpenVPN de la Proton, nu ar trebui să existe nicio diferență semnificativă în configurarea diferitor furnizori.

Activați setarea clientului OpenVPN

Apasă pe Permite buton radio pentru a extinde setările clientului.

Ecran VPN DD-WRT

Majoritatea furnizorilor de VPN care utilizează OpenVPN vă vor oferi un fișier de configurare pe care îl puteți utiliza. În unele cazuri, veți avea nevoie și de un nume de utilizator și o parolă. Conținutul oricărui fișier de configurare OpenVPN dat poate diferi. Ar fi util dacă interfața DD-WRT ar avea o funcție de import, dar din moment ce nu trebuie să încercăm să identificăm ce părți ale fișierului de configurare trebuie să intre în fiecare câmp.

Fișierul meu de configurare ProtonVPN are la început unele setări, apoi unele fișiere de certificat la final. Am indicat câteva setări pe care trebuie să le configurați manual pe routerul DD-WRT din această captură de ecran:

setări de protoni dd-wrt

În cazul ProtonVPN, trebuie să introduc numele de utilizator și parola în câmpurile corespunzătoare.

Setările rămase ar trebui copiate și lipite în câmpul de configurare suplimentară al routerului DD-WRT.

În acest moment dorim să ne salvăm setările făcând clic pe butonul salva butonul din partea de jos a paginii. Oamenii conștienți de securitate vor dori să lucreze în continuare la setările DNS ale routerului înainte de activarea VPN, motiv pentru care nu aleg să fac clic pe Aplicați Setări buton încă.

Configurați DNS

Când un VPN este activ, tot traficul dvs. trece prin acesta, criptat, dincolo de privirile indurerate ale rețelei dvs. locale și a ISP. Totuși, pentru a ajunge oriunde pe internet, computerul trebuie să efectueze căutări DNS. Căutările DNS rezolvă numele de domeniu ale site-ului, cum ar fi example.com, la o adresă IP pe care computerul o poate folosi. În timp ce acele căutări DNS nu conțin nicio informație reală despre ceea ce faceți pe niciun site dat, acestea pot oferi unui observator o listă completă a fiecărui site pe care computerul l-a căutat și destul de probabil vizitat..

Unele VPN-uri oferă servicii DNS în plus față de VPN-ul lor, dar puteți seta doar routerul să folosească mai multe servere DNS anonime, făcând o schimbare rapidă de configurare.

Navigați la Înființat -> Configurare de bază filați și introduceți serverele DNS pe care preferați să le utilizați în câmpurile DNS statice. Acest exemplu arată serverele DNS.WATCH.

dd-wrt vpn dns

Apasă pe Aplicați Setări buton. Acum puteți porni VPN. Du-te înapoi la Servicii -> VPN tab și faceți clic pe butonul Aplicați Setări buton. Navigați la stare -> OpenVPN fila și ar trebui să vedeți mesajul încurajator Client: SUCCES CONECTAT în partea de sus. Rețineți că fila de stare OpenVPN nu există până când serviciul OpenVPN este activat.

Succesul clientului dd-wrt vpn openvpn

Routerul dvs. trimite acum tot traficul de pe dispozitivele sale conectate prin intermediul VPN.

Puteți confirma că setările DNS funcționează folosind testul nostru de scurgere DNS.

Pentru a dezactiva VPN, navigați înapoi la fila OpenVPN, faceți clic pe butonul Dezactivați butonul radio, apoi faceți clic pe butonul Aplicați Setări buton în partea de jos. Panoul cu setări OpenVPN se va prăbuși atunci când îl dezactivați, dar setările dvs. vor rămâne în loc pentru următoarea dată când îl activați.

Cum pot transforma routerul meu DD-WRT într-un server OpenVPN?

Primul pas este generarea unor certificate și chei pe care serverul OpenVPN să le utilizeze. Cel mai simplu mod de a face acest lucru este să instalați OpenVPN pe computer și să folosiți utilitățile sale pentru a genera fișierele necesare. Găsiți instrucțiuni despre cum să faceți asta pentru sistemele Windows pe site-ul OpenVPN. Utilizatorii Linux pot utiliza comenzile de mai jos. Dacă vă interesează mai multe informații despre configurarea completă, aici am un articol de configurare Linux OpenVPN mai complet. Rețineți că, deși nu instalăm de fapt un server OpenVPN de data aceasta (routerul va fi serverul), totuși trebuie să facem unele din același lucru pentru a genera certificate.

Pentru Ubuntu și alți utilizatori pe bază de Debian, instalați openvpn și pachetele easy-rsa:

sudo apt-get intstall openvpn easy-rsa

Va trebui să utilizați yum sau un manager de pachete similar pentru distro-urile bazate pe RedHat. Numele pachetului trebuie să fie identice sau foarte asemănătoare.

Creați un director în care să funcționeze, îl numesc pe mine openvpn

mkdir openvpn; cd openvpn

Executați acum comenzile de generare a certificatelor. Lipiți-le exact inclusiv punctele:

/ usr / bin / make-cadir CA
cd CA
sursa ./vars
./curata tot
./build-ca
Server ./build-key-server
./build-dh
Clientul / build-key
tastele CD; openvpn --genkey --secret pfs.key

Rețineți că unele dintre comenzi vor solicita ca informațiile despre locație să fie încorporate în certificat. Este bine să lăsați valorile implicite și poate chiar de dorit, deoarece informațiile pot fi citite de oricine. Dacă doriți să-l personalizați dintr-un anumit motiv, puteți actualiza liniile 64 - 69 fișier CA / vars cu informațiile despre locația pe care preferați să le utilizați. Valorile implicite sunt:

export KEY_COUNTRY ="NE"
export KEY_PROVINCE ="CA"
export KEY_CITY ="San Francisco"
export KEY_ORG ="Fort-Funston"
export KEY_EMAIL ="[email protected]"
export KEY_OU ="MyOrganizationalUnit"

La sfârșitul celor două secvențe de generare cheie, vi se va solicita să furnizați o parolă de provocare. Nu furnizați acest lucru pentru cheia de server, deoarece aceasta va împiedica OpenVPN să poată porni nesupravegheat. De asemenea, este posibil să doriți să lăsați cheia clientului fără parolă, deoarece unii clienți OpenVPN nu au o modalitate de a vă furniza acest lucru la momentul de conectare. Pentru a trece peste aceste solicitări fără a furniza o parolă, trebuie doar să apăsați tasta Enter.

Rețineți că ultima comandă este opțională, dar de dorit. Este cheia care va permite routerului dvs. să ofere Perfect Forward Secret (PFS). PFS permite conexiunii dvs. VPN să negocieze periodic o nouă cheie statică în timpul sesiunii. Aceasta oferă un plus de securitate în cazul în care cheile dvs. private sunt vreodată compromise. Fără PFS, toate conexiunile VPN anterioare pot fi decriptate de oricine cu cheia privată. Cu PFS acest lucru nu este posibil, deoarece cheia se schimbă periodic, iar cheia înlocuită dispare într-un fum de fum..

În acest moment, ar trebui să aveți acum o grămadă de fișiere de chei și certificate în directorul CA / chei:

$ ls -1 CA / taste /
01.pem
02.pem
ca.crt
ca.key
client.crt
client.csr
client.key
dh2048.pem
index.txt
index.txt.attr
index.txt.attr.old
index.txt.old
serial
serial.old
server.crt
server.csr
server.key
pfs.key

Avem nevoie doar de câteva dintre acestea. Deschideți următoarele fișiere într-un editor de text, cum ar fi blocul de note sau vi. Nu folosiți niciun fel de procesor de texte. Copiați valorile și lipiți-le în câmpul corespunzător din pagina DD-WRT OpenVPN Server / Daemon. Pe interfața administratorului routerului, navigați la Servicii -> VPN și faceți clic pe butonul Activare radio în secțiunea OpenVPN Server / Daemon.

câmpurile serverului dd-wrt openvpn

  • Lipiți ca.crt în câmpul CA Cert
  • Lipiți server.crt în câmpul Serviciu public de certificare
  • Lipiți serverul.key în câmpul cheie server privat
  • Lipiți dh2048.pem în câmpul DH PEM
  • Lipiți tasta pfs.key în TLS Auth Key (presupunând că ați creat această cheie)

Dacă sunteți deosebit de paranoic, puteți specifica o listă de revocare a certificatelor. Acest lucru va spune serverului OpenVPN să verifice lista de revocare înainte de a accepta orice certificat de la un client conectat. Configurarea și utilizarea unui CRL este puțin avansată pentru acest articol.

Apasă pe Aplicați setările butonul și serverul dvs. VPN ar trebui să înceapă. Puteți vizita stare-> OpenVPN pagina pentru a vedea starea conexiunii. Rețineți că, de data aceasta, mesajul spune Server: SUCCESS CONNECTED mai degrabă acel Client: SUCCES CONECTAT pe care l-ați văzut când clientul rulează.

Succesul serverului dd-wrt vpn openvpn

Următorul pas este generarea unui fișier de configurare a clientului pe care îl puteți utiliza pe dispozitivele dvs. pentru a vă conecta la noul dvs. server OpenVPN. Este important ca anumite setări de pe fiecare parte (client / server) să se complementeze. Am încheiat cu o configurație de client care arată astfel:

client
dev tun
proto udp
la distanță YOUR_IP_ADDRESS 1194
cript AES-256-CBC
tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA
auth sha256
comp-LZO
link-mtu 1570

----- ÎNCEPEȚI Tastă PRIVATĂ
Copiați conținutul fișierului dvs. client.key și lipiți-l aici.
----- FINAL CHEIE PRIVATĂ -----

----- ÎNCEPE CERTIFICATUL -----
Copiați conținutul fișierului client.crt și lipiți-l aici.
----- CERTIFICAT DE FINALĂ -----

----- ÎNCEPE CERTIFICATUL -----
Copiați conținutul fișierului dvs. ca.crt și lipiți-l aici.
----- CERTIFICAT DE FINALĂ -----

direcția-cheie 1

Copiați conținutul fișierului dvs. pfs.key și lipiți-l aici

Am lansat apoi clientul openvpn și s-a conectat:

$ sudo openvpn --config client-config.ovpn
Sat 23 septembrie 16:05:05 2017 OpenVPN 2.3.10 x86_64-pc-linux-gnu [SSL OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] construit pe 22 iunie 2017
Sat 23 septembrie 16:05:05 2017 versiuni de bibliotecă: OpenSSL 1.0.2g 1 mar 2016, LZO 2.08
Sat 23 septembrie 16:05:05 2017 Autentificarea canalului de control: tls-auth folosind fișierul cu cheie statică INLINE
Sat 23 septembrie 16:05:05 2017 link UDPv4 local (bound): [undef]
Sat 23 septembrie 16:05:05 2017 link UDPv4 la distanță: [AF_INET] 192.168.0.1:1194
Sat 23 septembrie 16:05:09 2017 [server] Conexiune peer inițiată cu [AF_INET] 192.168.0.1:1194
Sat 23 septembrie 16:05:12 2017 S-a deschis dispozitivul TUN / TAP tun0
Sat 23 septembrie 16:05:12 2017 do_ifconfig, tt->ipv6 = 0, tt->did_ifconfig_ipv6_setup = 0
Sat 23 septembrie 16:05:12 2017 / sbin / ip set link dev tun0 up mtu 1497
Sat 23 septembrie 16:05:12 2017 / sbin / ip addr add dev tun0 10.10.10.2/24 broadcast 10.10.10.255
Sat 23 septembrie 16:05:12 2017 Secvența de inițializare a fost finalizată

Folosesc linia de comandă Linux OpenVPN pentru linia de comandă, dar același fișier conf ar trebui să funcționeze cu orice client OpenVPN de pe orice platformă, l-am încercat pe telefonul meu Android folosind OpenVPN Connect și m-am putut conecta la fel de bine..

Notă linia de la distanță a configurației clientului meu. Puteți utiliza adresa IP externă, dar dacă ISP-ul dvs. își rotește adresa IP externă din când în când, poate doriți să utilizați un nume de gazdă dinamic. DNS dinamic este un proces prin care asociați un nume de domeniu static cu IP-ul routerului dvs., iar numele de gazdă rămâne indicat la adresa IP corectă, chiar dacă se schimbă. Viziteaza Înființat -> DDNS fila routerului DD-WRT pentru a vedea lista furnizorilor DNS dinamici pe care îi suportă.

OpenVPN este o soluție VPN de încredere și robustă. Este de utilizare largă, în special în rândul furnizorilor VPN foarte conștienți de confidențialitate. Router-urile care rulează DD-WRT fac mai ușor de utilizat, în special, siguranța atât a traficului dvs. de ieșire prin configurația clientului OpenVPN, cât și a traficului de intrare prin configurația serverului OpenVPN.

Vezi si: Cei mai buni furnizori VPN Linux.

„Router Linksys WRT54-G” de Webmhamster licențiat sub CC BY 2.0

Brayan Jackson Administrator
Candidate of Science in Informatics. VPN Configuration Wizard. Has been using the VPN for 5 years. Works as a specialist in a company setting up the Internet.
follow me

About the author

Candidate of Science in Informatics. VPN Configuration Wizard. Has been using the VPN for 5 years. Works as a specialist in a company setting up the Internet.

Leave a Reply

Your email address will not be published. Required fields are marked *

54 + = 56