#Server VPN L2TP/IPsec cu Debian pentru accesul la distanță Ionel Mocanu Server VPN L2TP/IPsec cu Debian pentru accesul la distanță — Ionel Mocanu
Skip to content
 

Server VPN L2TP/IPsec cu Debian pentru accesul la distanță

Layer 2 Tunneling Protocol (L2TP) este un protocol de tunelare, folosit în crearea reţelelor private virtuale (VPN).Acesta nu prevede nici un mecanism de criptare sau de confidenţialitate în sine. Publicat în 1999, ca standard RFC 2661, L2TP îşi are originea în alte două protocoale de tunelare mai vechi pentru PPP, Layer 2 Forwarding Protocol (L2F) şi Point-to-Point Tunneling Protocol (PPTP). Deşi acţionează la nivelul legătură de date în modelului OSI, protocol L2TP este de fapt un protocol ce acţionează la nivelul sesiune şi foloseşte portul înregistrat UDP 1701.

Stabilirea unei sesiuni L2TP cu serverul VPN:

  • întâi clientul stabileşte un tunel IPsec cu serverul VPN
  • clientul şi serverul L2TP stabilesc apoi un tunel L2TP în vârful tunelului IPsec.
  • se stabileşte o sesiune PPP în partea de sus a tunelului L2TP, de exemplu, pachetele PPP sunt încapsulate şi trimise/recepţionate în cadrul tunelului IPsec

Cu această soluţie, numai autentificarea utilizatorului se face la nivelul PPP (cu combinaţia nume de utilizator/parolă). Criptarea datelor este asigurată de tunelul IPsec.

Pentru crearea serverului VPN L2TP/IPsec, pe Debian este nevoie de pachetele openswan, implementare IPsec pentru Linux şi xl2tpd, daemon-ul l2tp. Pe serverul VPN se editează fişierul /etc/ipsec.conf pentru a funcţiona cu chei PSK:

conn L2TP-PSK-NAT

rightsubnet=vhost:%priv

also=L2TP-PSK-noNAT

conn L2TP-PSK-noNAT

authby=secret

pfs=no

auto=add

keyingtries=3

rekey=no

type=transport

left=10.0.8.10

leftnexthop=10.0.8.9

leftprotoport=17/1701

right=%any

rightprotoport=17/1701

Cheia pre-partajată se introduce în /etc/ipsec.secrets

EAST:~# echo "10.0.8.10 %any: "masterpassword"">> /etc/ipsec.secrets

Se editează fişierul /etc/xl2tpd/xl2tpd.conf:

ip range = 172.16.40.35-172.16.40.40

local ip = 172.16.40.33

require authentication = yes

refuse pap = yes

refuse chap = yes

ppp debug = yes

pppoptfile = /etc/ppp/options.l2tpd

length bit=yes

şi fişerul /etc/ppp/options.l2tpd:

name xl2tpd

ipcp-accept-local

ipcp-accept-remote

ms-dns 8.8.8.8

noccp

auth

crtscts

idle 1800

mtu 1400

mru 1400

nodefaultroute

debug

lock

proxyarp

connect-delay 5000

În fişierul /etc/ppp/chap-secrets se introduce combinaţia nume/parolă cu care utilizatorul se autentifică pe server.

Imaginile sunt preluate (dar modificate) din documentatia vyatta si de pe http://www.jacco2.dds.nl/networking/openswan-l2tp.html

3 Comments

  1. Paul Ontan says:

    Nu am fisierul ipsec.conf in etc. Ce ma fac?

  2. ionel says:

    Folosesti debian?
    apt-get install openswan xl2tpd

  3. domain says:

    Howdy I am so grateful I found your blog, I really found you by accident,
    while I was searching on Askjeeve for something else, Regardless
    I am here now and would just like to say thank you for a tremendous post and a all round exciting blog (I also love the theme/design), I don’t have time to read through it all at the
    minute but I have book-marked it and also included
    your RSS feeds, so when I have time I will be back to read a lot more,
    Please do keep up the excellent work.

Leave a Reply to Paul Ontan