Informations :
Dates
- Publish : : Thursday 18 september 2014
- Modification : Saturdy 30 december 2023
- 4400 views
Share :
Cette documentation est obsolète → je vous redirige vers cette solution : PostQuantum StrongSwan v6.x - doc
Je vais décrire comment configurer un client VPN par les protocoles IPSec et xL2TP.
Installation des paquets IPSec
Il faut installer un xSecureWAN ;) il y quelques temps çà s'appellait FreeSWAN puis OpenSWAN ;)
De nôs jours c'est :strongSWAN
!
Script avec 1 ligne
001aptitude install strongswan xl2tpd
Configuration d'IPSec
Nous allons configurer IPSec : vim /etc/ipsec.conf
.
Script avec 35 lignes
001version 2.0
002config setup
003plutostart=no
004plutodebug=all
005charonstart=yes
006charondebug=all
007nat_traversal=yes
008# virtual_private=%v4:10.0.0.0/8
009# oe=off
010# protostack=netkey
011# uniqueids=no
012# plutodebug=all
013# klipsdebug=none
014# plutoopts="--interface=vmbr1"
015 016conn sovh.lab3w.fr
017keyexchange=ikev2
018authby=secret
019pfs=no
020auto=add
021keyingtries=3
022dpddelay=30
023dpdtimeout=120
024dpdaction=clear
025rekey=no
026keylife=24h
027ikelifetime=6h
028type=transport
029left=%defaultroute
030leftid=@client.lab3w.fr
031leftprotoport=17/1701
032#
033right=IP_DU_SERVER_VPN
034rightid=@sovh.lab3w.fr
035rightprotoport=17/1701
Puis on ajoute la passphrase dans /etc/ipsec.secrets
Script avec 1 ligne
001%any @sovh.lab3w.fr : PSK "ma clef a pre-partager"
Configuration de XL2TP
Nous allons configurer XL2TP : vim /etc/xl2tpd/xl2tpd.conf
.
Script avec 25 lignes
001[global]
002;auth file = /etc/xl2tpd/xl2tpd-secrets
003ipsec saref = yes
004;saref refinfo = 30
005;listen-addr = 0.0.0.0
006;port = 1701
007; utilse pour la conf par default(a sup si radius)
008access control = no
009rand source = dev
010;
011;debug avp = yes
012;debug network = yes
013;debug packet = no
014;debug state = yes
015;debug tunnel = yes
016;
017[lac sovh]
018lns = IP_DU_SERVER_VPN
019;require authentication = yes
020;require chap = yes
021;refuse pap = yes
022;length bit = yes
023;name = p2.zw3b.vpn
024ppp debug = yes
025pppoptfile = /etc/ppp/options.net.client.xl2tpd
Configuration de PPP
Nous allons configurer PPP : vim /etc/ppp/options.net.client.xl2tpd
.
Script avec 47 lignes
001# Do not support BSD compression.
002nobsdcomp
003passive
004lock
005 006# Allow all usernames to connect.
007#name *
008#proxyarp
009#ipcp-accept-local
010#ipcp-accept-remote
011#lcp-echo-failure 10
012lcp-echo-interval 30
013nodeflate
014 015# Do not authenticate incoming connections. This is handled by IPsec.
016#noauth
017#refuse-chap
018#refuse-mschap
019#refuse-mschap-v2
020# Authentifition
021name pc_1.zw3b.vpn
022password mot2passe4client_1
023 024# Authentification
025noauth
026#require-chap
027#require-mschap
028#require-mschap-v2
029#hide-password
030#modem
031 032# Set the DNS servers the PPP clients will use.
033#ms-dns 8.8.8.8
034#ms-dns 213.186.33.99
035 036mtu 1400
037mru 1400
038 039# Options
040refuse-eap
041noccp
042crtscts
043idle 1800
044#defaultroute
045nodefaultroute
046 047logfile /var/log/ppp.log
Comment utiliser cette configuration IPSec + XL2TP
Lancer la connexion sécurisée IPSec :
Script avec 1 ligne
001ipsec up sovh.lab3w.fr
Pour dé-connecter la connexion IPSec :
Script avec 1 ligne
001ipsec down sovh.lab3w.fr
Monter la connexion xL2TP qui (nous) ajoute une interface PPP
(Point-2-Point) configurée pour être transportée dans IPSec :
Script avec 1 ligne
001echo "c sovh" >> /var/run/xl2tpd/l2tp-control
Pour dé-monter xL2TP :
Script avec 1 ligne
001echo "d sovh" >> /var/run/xl2tpd/l2tp-control
NdM : En mode tunnel, IPSec créait une interface ipsec0
par exemple.
Pour un script de (re)connexion au serveur VPN : IPSEC+XL2TP
J'ai écris un papier sur cette page VPN IPSec + XL2TP : IPv(4/6) Remount du client et des routes pour se connecter et/ou se reconnecter automatiquement au serveur VPN.
Bonne re-connexion ;)
Cordialement,
Romain