sommaire
Installation / Configuration VPN PPTP

Configuration basique:  / lié avec un LDAP (Active Directory)

Installation:

apt-get install pptpd

Configuration:

/etc/pptpd.conf

option /etc/ppp/pptpd-options
logwtmp
localip 192.168.0.100-110
  # les clients auront pour le serveur VPN cette ip.
remoteip 192.168.0.111-121  # les clients auront cette ip en local sur leur machine.

Les options dans /etc/ppp/pptpd-options

name debianpptp
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 192.168.0.3
proxyarp
nodefaultroute
lock
nobsdcomp

Creation d'un ou plusieurs compte d'identification:

/etc/pppt/chap-secret


# Secrets for authentication using CHAP
# client        server              secret                  IP addresses
login        nom_serveur      mot_de_passe        *



Avec une authentification Active Directory

Ajout des composants:

apt-get install winbind samba smbclient krb5-user


/etc/ppp/pptpd-options: ajouter ces lignes:

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


Samba: /etc/samba/smb.conf

[global]
        workgroup = CORP
        realm = CORP.LAN
        server string = debianpptp                           # nom de la machine fournissant le service PPTPd
        security = ADS
        password server = ADDC.corp.lan             # votre serveur controleur de domaine AD
        restrict anonymous = 2
        client NTLMv2 auth = Yes
        syslog = 0
        log file = /var/log/samba/log.%m
        max log size = 1000
        domain master = No
        dns proxy = No
        idmap uid = 10000-20000
        idmap gid = 10000-20000
        template shell = /bin/bash
        winbind enum users = Yes
        winbind enum groups = Yes
        winbind use default domain = Yes
        winbind refresh tickets = Yes


Test et intégration du serveur dans le domaine Active Directory:

kinit administrateur@CORP.LAN
net ads join -S debianpptp -U administrateur@CORP.LAN

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

Configuration de l’authentification: /etc/nsswitch.conf


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


/etc/pam.d/common-account

account sufficient  pam_windind.so
account required    pam_unix.so

/etc/pam.d/common-auth

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


/etc/pam.d/common-session

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

Reboot du serveur

 

Gestion:

Cette commande permet de voir les dernières connections: /var/log/wmtp

last -wF | grep ppp | tac


Via le script pour la conservation des logs (à mettre dans /etc/crontab)

#!/bin/sh
#
# permet d'avoir un compte rendu des connections sur le VPN PPTP
#

# sauvegarde du /var/log/wmtp
cp /var/log/wtmp /chemin_qui_va_bien/wmtp_$(date '+%F')

# Dernieres connexions
last -wF -f
/chemin_qui_va_bien/wmtp_$(date '+%F') | grep -i ppp > /chemin_qui_va_bien/dernieres_connections.txt