«

»

Déc 05 2011

[Tuto]Installation d’un serveur VPN PPTP sous Linux avec (ou sans) authentification Active Directory

Bonjour à tous,
Dans ce nouveau tutoriel nous allons voir comment mettre en place un serveur VPN PPTP sous Debian et Ubuntu avec authentification des utilisateurs via un AD (ou pas).

Cela va se passer en trois étapes:

  1. Intégration de notre machine dans un domaine Active Directory
  2. Installation et configuration du serveur VPN
  3. Configuration de notre client VPN

Si vous souhaitez mettre en place un serveur VPN sans authentification Active Directory passez directement à la seconde étape.

Intégration de notre machine dans le domaine active directory

On installe ce qu’il faut:

apt-get install winbind samba smbclient krb5-user ntpdate

On met à l’heure le serveur:

ntpdate IP_de_votre_contrôleur_de_domaine

On configure SAMBA

vim /etc/samba/smb.conf

Et on met ça dedans:

[global]
   server string = debian #nom du serveur linux
   netbios name = debian # nom du serveur linux
   security = ads
   realm = DOMAINE.LAN # nom du domaine en majuscule
   password server = IP_DE_L_AD # ip du controleur de domaine principal
   workgroup = domaine # nom du domaine en minuscule sans le tld
   idmap uid = 10000-20000
   idmap gid = 10000-20000
   winbind enum users = yes
   winbind enum groups = yes
   winbind refresh tickets = yes
   template shell = /bin/bash
   client use spnego = yes
   client ntlmv2 auth = yes
   winbind use default domain = yes
   restrict anonymous = 2

On enregistre et on reboot les services

/etc/init.d/smb restart
/etc/init.d/winbind restart

On test l’intégration dans le demaine:

kinit compte_admin_du_domaine@DOMAINE.LAN (en majuscule)

Si il l’y a pas d’erreur c’est que c’est bon

On rajoute la machine dans le domaine:

net ads join -S serveur.domaine.lan -U compte_admin_du_domaine

On test avec la commande:

wbinfo -u

Si ça ne fonctionne pas refaites un:

/etc/init.d/smb restart
/etc/init.d/winbind restart

Voila la machine est dans le domaine.

On configure l’authentification:
on édite le fichier « /etc/nsswitch.conf »

vim /etc/nsswitch.conf

Et on met ça dedans:

passwd:         compat winbind
group:          compat winbind
shadow:         compat

hosts:          files dns
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

puis le fichier « /etc/pam.d/common-account »

vim /etc/pam.d/common-account

On met ça dedans:

account sufficient	pam_windind.so
account	required	pam_unix.so

et encore le fichier « /etc/pam.d/common-auth » :

vim /etc/pam.d/common-auth

On met ça dedans:

auth	sufficient	pam_winbind.so krb5_auth krb5_ccache_type=FILE
auth	sufficient	pam_unix.so nullok_secure use_first_pass
auth	required	pam_deny.so

Puis le dernier « /etc/pam.d/common-session » :

vim /etc/pam.d/common-session

On met ça dedans:

session	required	pam_unix.so
session required	pam_mkhomedir.so umask=0022 skel=/etc/skel

Et on reboot les services.

/etc/init.d/smb restart
/etc/init.d/winbind restart

Installation et configuration du serveur VPN

On installe le paquet pptpd

apt-get install pptpd

On édite le fichier « /etc/pptpd.conf »

vim /etc/pptpd.conf

Ont met ceci à la fin :

#La plage d'adresse ip fournis par le VPN sera de la forme 10.0.5.0
localip 10.0.5.0
#La plage d'adresse fournie sera de 10.0.5.2 à 10.0.5.10
remoteip 10.0.5.2-10

Vous pouvez bien sur configurer ce fichier comme bon vous semble

Puis on édite le fichier « /etc/ppp/pptpd-options »

vim /etc/ppp/pptpd-options

On s’assure que la configuation soit comme ceci :

name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns adresse_du_DNS_fournis_par_le_vpn # dans mon cas IP de l'AD
proxyarp
nodefaultroute

Si vous ne souhaitez pas mettre en place une authentification via un Active Directory, éditez le « /etc/ppp/chap-secrets »

vim /etc/ppp/chap-secrets

Et rentrez les utilisateurs de la façon suivante:

#username pptpd password *
user1 pptpd userpass *

Si vous voulez permettre aux utilisateurs de votre Active Directory de se connecter avec leurs identifiants, rajoutez les lignes suivantes à la fin du fichier « /etc/ppp/pptpd-options ».

#Authentification avec les users de l'AD
plugin winbind.so
ntlm_auth-helper "/usr/bin/ntlm_auth --helper-protocol=ntlm-server-1"

Et pour finir, on redémarre les service pptpd

/etc/init.d/pptpd restart

Et voila votre serveur VPN est configuré ;)

Configuration d’un client Windows

Adresse internet : IP sur serveur VPN
Nom : VPN
Nom d’utilisateur : « Username du fichier chap-secret ou de l’AD »
Mot de passe : « Mot de passe du fichier chap-secret ou de l’AD »
Domaine : DOMAINE.LAN

Puis se connecter ;)

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Lire les articles précédents :
ZimbraUne
[Tuto]Configuration de Zimbra dans un Active Directory et importations des comptes utilisateurs

Bienvenues dans ce second tutoriel consacré à Zimbra, si vous avez suivies mon article précédent sur l'installation de Zimbra, vous...

Fermer