Instalarea și configurarea L2TP

“... Criptarea este o armă defensivă puternică pentru oameni liberi. Acesta oferă o asigurare tehnică de confidențialitate, indiferent de cine controlează starea ... Este dificil să ne imaginăm un instrument mai puternic și mai puțin periculoase pentru libertate. "

Contragreutatea PPTP există o altă tehnologie pentru rețele private virtuale - mai elegant, sigur, modern, adevărul este mult mai complicat să pună în aplicare. Pe aceasta vom discuta în acest articol.

protocol Astăzi populare pentru a crea tunele virtuale private - IPSec, funcționează destul de bine cu NAT pe porturile UDP standard și, prin urmare, mai interesant pentru rețeaua în care serverul este ascuns în spatele unui router. IPSec - este prescurtarea de la protocolul de securitate IP. Acest nivel suplimentar, pe partea de sus a IP, care este responsabil pentru criptarea. IPSec este o parte integrantă a IPv6 - noua generație a protocolului internet, precum și o extensie opțională la versiunea curentă de Internet protocol IPv4.

Din moment ce operează la un nivel (IP) (nivelul 3 în modelul OSI) de rețea, nu este necesar să adăugați o funcție de criptare la nivel de aplicație (ca de exemplu, făcut în SSH, DNSSEC, HTTPS, etc.) Cu alte cuvinte, toate cunoscute că FTP este considerat nesigur, deoarece parola atunci când conectarea a trimis în clar, dar FTP prin IPSec este cel mai sigur, nu este nimic nici o schimbare în mecanismul de FTP nu are nevoie pentru a produce. Astfel, IPSec adaugă un nivel suplimentar de securitate și rezolvă problema de securitate este transparent pentru toate aplicațiile.

Înainte de a trece la caracteristicile de configurare a serverului IPSec, ar trebui să ia în considerare unele obstacole hardware care ar putea împiedica punerea în aplicare a IPSec. Mai devreme am menționat că IPSec funcționează destul de bine cu NAT pe porturile UDP standard. Cu toate acestea, nu toate atât de roz cum ar putea părea.

NAT-Traversal - soluție de stopare

Mess cu IPSec Passthrough

Routerele cu suport pentru funcția passthrough IPSec determină uneori prezența IPsec în pachete UDP și să încerce să efectueze passthrough acestor pachete. Acest lucru duce la deteriorarea NAT-T ca un minim, router-ul schimbă SPI (Security Parameter Index), pentru a fi în măsură să monitorizeze starea conexiunii.

Instalarea și configurarea L2TP

Screenshot admin router Asus cu IPsec passthrough

Obstacolele hardware-descrise mai sus, care pot împiedica punerea în aplicare a IPSec, trebuie amintit, pentru o mai bună înțelegere a mecanismului. Cu toate acestea, după cum știți, până în prezent, acestea au abordat cu succes.

Nu utilizați Authenticated Header (AH) sau modul de transport. Utilizați numai Securitate Payload încapsulat (ESP) în modul tunel. Aceasta este soluția cea mai sigură, cu un punct de vedere criptografic.

O implementari IPSec pentru familia Linux este un proiect Openswan. Openswan sprijină Linux versiunea de kernel 2.0, 2.2, 2.4 și 2.6, și rulează pe mai multe platforme diferite, inclusiv x86, x86_64, IA64, MIPS și ARM.

1. Construirea și instalarea de la sursa Openswan IPSec

Du-te la serverul nostru prin SSH și a stabilit necesare pentru a construi un pachet de bibliotecă:

Creați un folder temporar, de exemplu, pe desktop (mkdir Spațiul de lucru / temp) și merge în ea (cd Desktop / temp), descărcăm, colecta și instala de la sursa de Openswan (așa cum am convenit, această versiune 2.6.38):

Sfat de menaj - nu ștergeți folderul cu sursa după instalarea programului. Acest dosar conține un script care este responsabil pentru eliminarea cererii, acest lucru este valabil pentru toate scrise în mod corespunzător pentru programele Linux. În cazul în care, în viitor, dorim să eliminați programul, colectate de la sursă și instalate manual, trebuie să mergeți la directorul sursă originală și rulați-l sudo face dezinstalare.

Ansamblul trebuie să treacă fără erori și fără șamanism suplimentare.

2. Setarea Openswan IPSec

Setarea Openswan continua pentru a configura. Vom lua în considerare configurația, atunci când un server pe care clientul la distanță se va conecta pentru NAT, PA, fie real, fie ca fiind în spatele NAT. Noi nu considerăm acest articol o variantă de a combina două servere sau rețele de la distanță.

Forțat încapsulare UDP pentru pachetele ESP, chiar dacă NAT nu este detectat. Acest lucru poate ajuta sustrage firewall-uri restrictive. Valoare implicita = nu, mai bine să înceapă cu el, dacă este să funcționeze în mod corespunzător, încercați = da.

parola de autentificare (secret partajat) - cel mai simplu mod, deși mai corect de a utiliza certificatele.

SFP = Perfect Forward Secrecy, această opțiune, dacă este activată, vă permite să fie sigur că aceeași cheie nu va genera de două ori. În mod implicit, PFS = nr. Detalii: PFS - VPN Tutorial.

Opțiunea rekey specifică dacă conexiunea ar trebui să fie revizuită în cazul în care timpul se scurge. În conformitate cu exemplele furnizate cu Openswan IPSec (/etc/ipsec.d/examples), este imposibil de a schimba cheia de sesiune, dacă la celălalt capăt al tunelului% orice (orice client), deci trebuie să furnizeze clientului posibilitatea de a schimba cheia. Aceasta este, în mod implicit, rekey = nr. Cu toate acestea, am rămas, din motive istorice rekey = da, într-un fel am făcut-o și plec.

tip compus. Valorile pot fi tunel. de transport. transport_proxy. passthrough. picătură. respinge. Valoare implicita = tunel, acest mod este cea mai corectă și sigură. În modul passthrough, de exemplu, nici o prelucrare IPSec va fi efectuată.

Descrierea capătul din stânga al tunelului. În general vorbind, „stânga“ și conceptul relativ „dreapta“, și interschimbabile. În exemplul nostru, pentru a fi specific, noi credem că capătul din stânga al tunelului este serverul, dreapta - clientul la distanță. Dar ele pot fi interschimbate, și nimic din această schimbare nu ar trebui să fie.

capătul din dreapta al descrierii tunelului. leftprotoport și rightprotoport sunt parametrii care permit protocoale și porturi compuși corespunzători. Acestea sunt, de asemenea, numite Port Căutători. Argumentul - un număr sau un nume care pot fi găsite în / etc / protocoale, de exemplu leftprotoport = icmp, sau o combinație a protocolului / port, de exemplu tcp / smtp. Portul poate fi desemnat reperul (25) sau numele (SMTP), care pot fi găsite în / etc / services. Cuvânt cheie% orice mijloc care permite tuturor porturilor din protocolul specificat. Cel mai adesea, această opțiune este utilizată pentru a permite pachetelor L2TP prin portul UDP 1701: leftprotoport = 17/1701. Unii clienti, cum ar fi versiunile mai vechi de Windows XP și Mac OS X, unele folosesc un port selectat aleatoriu cu cel mai mare număr. În acest caz, este posibil să se utilizeze rightprotoport = 17 /% orice, pentru a permite tot traficul UDP pentru conexiunea respectivă. Un alt workaround - punctul 17/0, ceea ce înseamnă că orice singur port UDP (portul UDP nu "0" este).

Auto = adăuga sensul de a încărca compusul, dar nu-l rulați. Alte semnificații: ignora, traseu, începe.

Supliment! fișierul parola pe care doriți să îl blocați:

Când setările sunt complete, reporniți IPSec:

(Alte comenzi disponibile: pornire, oprire, versiunea)

3. Verificați funcționalitatea IPSec

Dacă serverul VPN este router-ul în sine, și are 2 interfețe de rețea, se adaugă câteva reguli în iptables în intrare lanț:

Acum, creați o conexiune VPN la L2TP / IPSec tipul de mașină client, folosind specificat secret comun și orice utilizator / parolă, și să încerce să se conecteze la acesta. Pentru a ține evidența a procesului de conectare în modul de timp real, folosiți comanda:

Conexiunea este întreruptă, dar trebuie să găsiți jurnalul auth.log pe serverul încearcă să se conecteze cu acest raport: «STATE_QUICK_R2: IPsec SA a stabilit modul de tunel».

Un client în ppp.log jurnal ar trebui să fie aproximativ (log pentru Mac OS X Snow Leopard):

Deși ppp.log Mountain Lion fi mai puțin informativ:

Acest lucru înseamnă că, IPSec funcționează cu cheia prepartajate.

Puteți utiliza o pereche de comenzi utile pentru a verifica starea de IPSec:

Echipele verifică raportul, puteți vedea acest lucru:

Acest lucru înseamnă că trebuie să faci ceea ce cere, în caz contrar rețeaua va deveni înfundate cu pachete ICMP care nu sunt necesare. iar acest lucru nu este bun.

Pentru a dezactiva trimiterea și primirea de ICMP cel mai ușor lucru de făcut și de a executa shell-script, după cum urmează:

Încă o dată, executați sudo IPSec să verifice și să se asigure că totul este în ordine.

Nu trebuie confundat cu un șir de caractere

După cum este descris în ghidul mailing Openswan este normal. Doar asigurați-vă că toți ceilalți parametri importanți sunt marcate ca [OK].

L2TP prevede tunel pentru comunicare, dar nu oferă criptare și autentificare (corect să spunem că L2TP autentifică utilizatorii, dar nu komp'tery). De aceea, L2TP este adesea utilizat în asociere cu IPSec. Este de remarcat faptul că Apple și Microsoft se referă la tehnologia de securitate L2TP VPN, dar nu a specificat ce securitatea reală este asigurată prin IPSec.

Punerea în aplicare a L2TP, care este cel mai des folosit cu IPSec din Opensawn este xl2tpd.

xl2tpd poate fi instalat din magazia de versiunea curentă de Ubuntu:

Și tu poți face chiar mai viclean, și instalați o versiune nouă a mai accesibilă în ultimul magazia Ubuntu (13,10 la momentul scrierii). Pentru ca acest lucru să /etc/apt/sources.list trebuie să adauge magaziei (în acest exemplu, este un depozit pentru versiunea 13.10):

Și apoi aceeași echipă

În continuare, fișier de configurare /etc/xl2tpd/xl2tpd.conf deschis și-l aduce în minte despre acest lucru:

fișier /etc/ppp/options.xl2tpd Conținut:

viziona cele mai recente intrări în jurnal, puteți depana comanda:

Acum, că ne-am instalat și configurat L2TP, vom verifica munca sa. Adăugați un utilizator de test în / etc / ppp / chap-secrets:

Reîncărcați xl2tpd, rularea comenzii:

De asemenea, următoarele comenzi pot fi utile atunci când depanare:

- comenzi pentru a porni și opri xl2tpd;

- L2TP rula în modul de depanare;

În plus, dacă utilizați iptables pentru a fayervolinga, asigurați-vă că transmiterea de pachete este activată, astfel încât să puteți naviga pe Internet după conectarea la rețeaua VPN. Pentru a face acest lucru, executați următoarea comandă:

Acum, pe computerul client, modificați conexiunea VPN pe care l-ați creat în pasul 3 (testul funcția IPSec), prin adăugarea numele unui utilizator de test și o parolă.

Instalarea și configurarea L2TP

Încercați să vă conectați. În acest moment, conexiunea trebuie să fie stabilită fără eroare. Este de dorit să se respecte în jurnalele corespunzătoare în timp real, pentru a înțelege mai bine procesul de setare a conexiunii. Dacă totul este în regulă, includ, de asemenea o opțiune „Trimite tot traficul peste VPN» pe client, și verificați pentru a vedea dacă internetul funcționează în acest mod. Acest lucru va oferi o oportunitate de a înțelege, dacă lucrează în iptables transmiterea de pachete corect. De asemenea, verificați ce serverul DNS primește un client recomandat de ambele serverul L2TP, DNS incorecte pot deveni evidente cauza funcționarea defectuoasă a internetului.

Instalarea și configurarea L2TP

Instalarea și configurarea L2TP

După repornirea computerului Pluto (Openswan de bază), într-un fel nu pornește. Acest lucru este imediat evident în incapacitatea de a se conecta la VPN, iar dacă introduceți IPsec comanda sudo verifica, vom găsi următoarea concluzie:

Nu înțeleg cu adevărat motivele pentru care acest comportament, trebuie doar să adăugați următoarele (deja cunoscute pentru tine) script-ul în /etc/rc.local: