SSH, OpenSSL, Iptables, RSYNC, RAID, VPN

 Charge moyenne sur 1mn : 0.07 Charge moyenne sur 5mn : 0.06 Charge moyenne sur 15mn : 0.06


Blocs utilisateurs du site : Infos du compte / droits utilisateurs / récapitulatif

Identifiez-vous

Authentifiez-vous avec votre compte ZW3B et profitez des services membres.

Identifiant :
Mot de passe :
  
  

Howto VPN serveur : IPSec + XL2TP

  • Howto VPN serveur : IPSec + XL2TP
Comment faire pour configurer un serveur VPN par les protocoles IPSec et XL2TP

Informations

Dates
  • Publication : Jeudi 18 septembre 2014
  • Modification : Jeudi 15 decembre 2016

Je vais décrire comment configurer un serveur 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 !
aptitude install strongswan xl2tpd

Configuration d'IPSec

Nous allons configurer IPSec : vim /etc/ipsec.conf.

version 2.0
config setup
#       plutodebug=all
        klipsdebug=none
#       interfaces="ipsec0=eth0"
        nat_traversal=yes
#       virtual_private=%v4:10.0.0.0/8
        oe=off
        nhelpers=0
        protostack=netkey
        uniqueids=no

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
        keylife=24h
        ikelifetime=6h
        type=transport
        left=%defaultroute
        leftid=@net.zw3b.vpn
        leftprotoport=17/1701
        right=%any
        rightprotoport=17/%any
        forceencaps=yes
        dpddelay=40
        dpdtimeout=130
        dpdaction=clear

Vous vous apercevez que l'on utilise une passphrase authby=secret, on pourait utiliser des certificats.

Puis on ajoute la passphrase dans /etc/ipsec.secrets

@net.zw3b.vpn %any : PSK "ma clef a partager"

Configuration de XL2TP

Nous allons configurer XL2TP : vim /etc/xl2tpd/xl2tpd.conf.

[global]
;auth file = /etc/xl2tpd/xl2tpd-secrets
ipsec saref = yes
;saref refinfo = 30
;listen-addr = 0.0.0.0
;port = 1701
; utilse pour la conf par default(a sup si radius)
access control = no
rand source = dev
;
;debug avp = yes
;debug network = yes
;debug packet = no
;debug state = yes
;debug tunnel = yes
;
[lns default]
;exclusive = no
ip range = 172.16.5.101-172.16.5.154
;assign ip = yes
local ip = 172.16.5.254
name = net
hostname = net.zw3b.fr
; Regles d'authentification
require chap = yes
refuse pap = yes
require authentication = yes
unix authentication = no
ppp debug = yes
; Fichier de configuration de PPP
pppoptfile = /etc/ppp/options.net.l2tpd
length bit = yes
;challenge = yes

Configuration de PPP

Nous allons configurer PPP : vim /etc/ppp/options.net.l2tpd.

# Do not support BSD compression.
nobsdcomp
passive
lock

# Allow all usernames to connect.
name *
#name net
proxyarp
#ipcp-accept-local
#ipcp-accept-remote
#lcp-echo-failure 10
lcp-echo-interval 30
nodeflate
noccp

# Do not authenticate incoming connections. This is handled by IPsec.
#noauth
#refuse-chap
#refuse-mschap
#refuse-mschap-v2

# Authentification
auth
#noipdefault
require-chap
#require-mppe-128
+mschap-v2
+mschap
require-mschap
require-mschap-v2
hide-password
modem
asyncmap 0
crtscts
#silent

# DNS servers the PPP clients will use.
#ms-dns 172.16.5.252
ms-dns 8.4.8.4

mtu 1400
mru 1400

# Options
#defaultroute
#nodefaultroute

Configuration du fichier des comptes clients (machines et utilisateurs)

On édite : vim /etc/ppp/chap-secrets.

# machine avec IP fixe
pc_1.zw3b.vpn		*               	mot2passe4pc_1		172.16.5.10
172.16.5.10		pc_1.zw3b.vpn		mot2passe4pc_1		*

# user avec IP fixe
user_1.domaine.tld	*               	mot2passe4user_1	172.16.5.20
172.16.5.20		user_1.domaine.tld	mot2passe4user_1	*

# user avec IP aléatoire (comprise dans le ip range)
user_2.domaine.tld	*               	mot2passe4user_2	*
*			user_2.domaine.tld	mot2passe4user_2	*

Puis vérifier bien que le fichier est lisible que pour l'utilsateur root par la commande ls -l /etc/ppp/chap-secrets qui doit vous retourner les droits -rw-------

Script de lancement du serveur VPN : IPSEC+XL2TP

Ici simplement on démare xl2tpd et xl2tpd et on attend les connexions VPN des clients.

#!/bin/bash

#####---------------------------- INFORMATIONS --------------------------------#####
#
#       Name : vpn-net-server.sh
#       Desc : Script de lancement du serveur VPN : IPSEC+XL2TP
#       Auteur : Olivier Romain JAILLET alias Kss*
#       Mail : orj AT lab3w DOT fr
#       Date : 2014-05-05
#
#####---------------------------- INFORMATIONS --------------------------------#####


#####--------------------------------------------------------------------------#####

function ipsec_l2tp()
{
        /etc/init.d/ipsec 
        /etc/init.d/xl2tpd 
}

#####--------------------------------------------------------------------------#####


#####--------------------------------------------------------------------------#####
case "" in

start|restart)
{content_text} stop
echo "{content_text} Starting"
        ipsec_l2tp start
        echo "VPN ZW3B CONNECTION UP"
;;

stop)
echo "{content_text} Stop"
        ipsec_l2tp stop
        echo "VPN ZW3B CONNECTION DOWN"
;;

*)
echo "usage : {content_text} (start|stop|restart)"
;;

esac
#####--------------------------------------------------------------------------#####

<< Howto Proxmox VE : OpenVZ, KVM

Howto VPN client : IPSec + XL2TP >>





Autheur de la page

LAB3W.ORJ

LAB3W.ORJ

  • Prénom : Olivier Romain Luc
  • Nom : Jaillet-ramey
  • Arrivé le mardi 19 octobre 1976 (1976/10/19 00:00)
    43 ans d'activité !

Firefox Nighlty

Nos amis de Framasoft s'intéressent à Mozilla et leur ont posé des questions à propos de Nightly : Firefox Night-club, entrée libre !






Valid XHTML 1.0 Strict CSS Valide !

ipv6 ready