vpn sstp sous server 2008 r2 (tuto de a à z)
DESCRIPTION
Tuto pour installation d'un VPN SSTP sous Windows Server 2008 R2TRANSCRIPT
Mise en place d’un
VPN SSTP (v4.0)
Tutorial conçu et rédigé par Michel de CREVOISIER – Février 2011
SOURCES Laboratoire Microsoft :
http://www.labo-microsoft.org/articles/Windows-server-2008-VPN-SSTP/ Step by step deployment guide by Microsoft :
http://technet.microsoft.com/en-us/library/cc731352(WS.10).aspx Dépannage des incidents VPN communs :
http://blogs.technet.com/b/rrasblog/archive/2009/08/12/troubleshooting-common-vpn-related-errors.aspx
Dépannage des incidents d’une connexion SSTP :
http://support.microsoft.com/kb/947031/fr
http://blogs.technet.com/b/rrasblog/archive/2007/09/26/how-to-debug-sstp-specific-connection-failures.aspx
Identification des évènements systèmes relatifs au RRAS-SSTP : http://technet.microsoft.com/en-us/library/cc733772(WS.10).aspx
Installation de la liste des certificats révoqués localement :
http://www.carbonwind.net/blog/post/Quickly-establish-a-SSTP-VPN-connection-from-a-Windows-7-RC-VPN-client-without-a-published-CRL-distribution-point.aspx
Sécurité du VPN SSTP :
https://www.carbonwind.net/blog/post/Quick-fun-e28093-decrypting-with-Wireshark-some-SSTP-traffic.aspx
Configuration d’un port avec certificat SSL :
http://msdn.microsoft.com/fr-fr/library/ms733791.aspx
http://blogs.technet.com/b/rrasblog/archive/2009/02/11/sstp-certificate-selection.aspx
INDEX
SOURCES.................................................................................................................................................. 2
INDEX....................................................................................................................................................... 3
Préambule ............................................................................................................................................... 5
1. Configuration du contrôleur de domaine ....................................................................................... 6
1.1 Groupe de sécurité .................................................................................................................. 6
1.2 Compte utilisateur ................................................................................................................... 6
1.3 Attribution d’une IP statique ................................................................................................... 6
2. Configuration d’Active Directory Certificate Services ..................................................................... 8
2.1 Ajout du rôle ADCS .................................................................................................................. 8
2.2 Configuration d’Internet Explorer ......................................................................................... 14
2.3 Activation du site de distribution des certificats ................................................................... 14
2.4 Demande de certificat ........................................................................................................... 15
2.5 Validation du certificat .......................................................................................................... 17
2.6 Installation du certificat ........................................................................................................ 18
2.7 Copie du certificat ................................................................................................................. 18
3. Configuration de « Network Policy and Access services » ............................................................ 22
3.1 Installation du rôle NPS ......................................................................................................... 22
3.2 Démarrage du serveur RRAS ................................................................................................. 24
3.3 Association du certificat ........................................................................................................ 25
3.4 Configuration du firewall ....................................................................................................... 26
3.5 Changement du port d’écoute .............................................................................................. 26
3.6 Configuration des règles de filtrage ...................................................................................... 26
4. Configuration de votre routeur/box.............................................................................................. 31
5. Configuration du poste client ........................................................................................................ 32
5.1 Installation du certificat ........................................................................................................ 32
5.2 Copie du certificat ................................................................................................................. 33
5.3 Importation de la liste des certificats révoqués (CRL) ........................................................... 35
5.4 Configuration du fichier HOST ............................................................................................... 37
5.5 Création d’une connexion VPN ............................................................................................. 38
6. Erreurs et problèmes fréquents .................................................................................................... 42
6.1 Le nom CN ne correspond pas à la valeur passée ................................................................. 42
6.2 La fonction de révocation n’a pas pu vérifier la révocation car le serveur était déconnecté42
6.3 La connexion a été interdite par une stratégie… .................................................................. 43
6.4 Le nom demandé est valide, mais aucune donnée du type requis n’a été trouvée ............. 43
6.5 La connexion n’a pas pu être établie, car le protocole d’authentification utilisé par le
serveur […] ne correspond pas aux paramètres… ............................................................................. 43
6.6 Une chaine de certificats a été traitée mais s’est terminée par un certificat racine qui n’est
pas approuvé par le fournisseur d’approbation................................................................................ 44
Conclusion ............................................................................................................................................. 45
Préambule
En premier lieu, vous devez savoir qu’il est nécessaire de maîtriser un minimum les fonctionnalités de base d’un domaine Windows Server 2008 (à savoir Active Directory et DNS) pour comprendre ce tutorial. Par ailleurs, sachez que leur installation ne sera pas détaillée à la suite. Pensez donc à vérifier que votre serveur DNS fonctionne correctement et pensez à créer une zone de recherche inverse. Si vous ne disposez pas d’une version de Windows Server 2008 R2 x64 SP1 Standard/Entreprise, vous pouvez télécharger une démo ici depuis le site officiel de Microsoft. Vous pouvez même la télécharger en VHD si vous utilisez Hyper-V ou Virtual PC. Attention, mes serveurs sont installés en anglais, je vous recommande donc d’opter pour cette langue lors de votre téléchargement ou bien de télécharger le pack multilingue en anglais ici pour ne pas perdre le fil… Pour ce tuto, j’utiliserai deux serveurs et un client :
DC1 : Active Directory et DNS installés (non détaillé)
VPN1 (membre du domaine): RRAS et ADCA installées (détaillé)
CLIENT1 : poste client (Vista SP1 ou Seven minimum). Il n’est pas nécessaire que le client soit membre du domaine
Enfin, sachez que ce tuto est destiné à être mis en place dans un environnement particulier ou PME. En effet, pour les grandes entreprises, il est recommandé de s’acquitter de certificats auprès d’une autorité compétente, de disposer d’une DMZ, de rendre publique la liste des certificats révoquer et de posséder un serveur avec de deux cartes réseau placées dans des réseaux différents.
1. Configuration du contrôleur de domaine
1.1 Groupe de sécurité
Il est vivement recommandé de créer un groupe de sécurité afin de restreindre les accès au VPN à ce seul groupe. Par ailleurs, cela évite de devoir configurer individuellement chaque utilisateur souhaitant se connecter au VPN. Appelez ce groupe « GS_VPN ».
1.2 Compte utilisateur
Créez un compte AD nommé « user-sttp » (un compte utilisateur normal suffit). Ensuite, ajutez ce compte au groupe « GS_VPN».
1.3 Attribution d’une IP statique
Lorsqu’un utilisateur se connecte au VPN, il est indispensable qu’il dispose d’une IP dynamique ou statique. Dans notre cas, nous choisirons une IP statique :
Ouvrir la console Active Directory > clic droit sur [user-sstp] > Properties > Dial-in
Cochez la case Assign Static IP Addresses
La fenêtre suivante s’ouvre :
Renseignez ensuite l’IP à fournir pour cet utilisateur
Attention à ne pas indiquer une IP faisant partie d’une plage DHCP
2. Configuration d’Active Directory Certificate Services
2.1 Ajout du rôle ADCS
Pour ajouter ce rôle, cliquez sur le Gestionnaire de serveur
Add roles
Vous pouvez également opter pour une clef de 4096 et un hash en SHA512 (ne pas changer le type de CSP)
2.2 Configuration d’Internet Explorer
A exécuter en tant qu’administrateur si vous avez l’UAC d’activé : clic droit sur IE > « Run as administrator ».
Tools > Options > Security > Local intranet > LOW
2.3 Activation du site de distribution des certificats
Lancer IIS Manager
Cliquer sur Default Web Site
Puis sur Directory Browsing
Cliquer sur Enable (à droite)
2.4 Demande de certificat
Aller sur www.localhost/certsrv/en-US ou « en-FR » si version française
Cliquer sur Request a certificate
Puis sur Advances certificate request
Cliquer sur Create and submit a request to this CA
Acceptez les ActiveX
En Name, mettre le FQDN de VPN1 (nom_machine.domaine.com)
Dans Type of certificate needed, mettre Server Authentification Certificate
Cochez la case Mark key as exportable Vous pouvez augmenter la taille de clef jusqu’à 16384 !!!
Cliquez sur Submit en bas à droite
Votre demande est maintenant en attente de validation
2.5 Validation du certificat
Ouvrir Certification Authority dans Administrative Tools du menu démarrer
Cliquer sur Pending request
Puis clic droit sur le certificat > All tasks > Issue Votre demande est maintenant validée
2.6 Installation du certificat
Aller sur www.localhost/certsrv/en-US ou « en-FR » si version française
Cliquer sur View the status…
Cliquez sur Install the certificate
2.7 Copie du certificat
Start > Run > MMC > OK
File > Add/Remove Snap-in
Certificates > Add > My user account > OK
Certificates > Add > Computer account > Local computer > OK
Ok
Vous obtenez ceci :
Déroulez Certificate – Current User > Personal afin de sélectionner votre certificat récemment installé
Clic droit All tasks > Export
Next
Yes, export the private key > Next > [votre PSW] et [nom certificat] > Next > Finish
Déroulez Certificate (Local computer) > Personal > Certificates
Clic droit sur Certificates >All tasks > Import
Next
[Emplacement certificat] > Next
Votre mot de passe > Next > Next > Finish
Notez qu’un copiez/collez entre les magasins de la MMC ne fonctionne pas. Le certificat doit être exporté et importé avec ses attributs pour être reconnu comme tel.
3. Configuration de « Network Policy and Access services »
3.1 Installation du rôle NPS
Pour ajouter ce rôle, cliquez sur le « Gestionnaire de serveur »
Add roles (à droite)
3.2 Démarrage du serveur RRAS
Lors du déploiement d’un VPN, vous avez le choix d’utiliser 2 cartes réseaux. Cela implique bien sûr d’avoir 2 sous-réseaux à disposition i, et également de rajouter le rôle « Routage » sur votre serveur VPN1. L’avantage de cette solution est que la carte réseau du réseau public est totalement isolée par rapport à votre réseau interne. Dans mon cas et dans ce tuto, n’ayant pas besoin d’une telle configuration (et surtout n’ayant qu’un seul réseau), j’ai tout simplement utilisé une seule carte réseau (pas de routage donc).
Lancer Routing and remote access
Clic droit sur [nom_votre_serveur] > Configure and enable
L’assistant suivant apparait :
3.3 Association du certificat
Il faut maintenant « binder » ou associer le certificat SSL au port 443. Pour cela :
Ouvrez la console Routing and Remote Access
Clic droit sur le nom du serveur > Properties > Onglet Security
Sélectionnez le certificat créé auparavant dans le menu déroulant :
Redémarrez ensuite le serveur Routing and Remote Access Avant de continuer, vous devez vérifier que le certificat SSL a bien été enregistré. Pour cela, ouvrez une fenêtre DOS en mode administrateur et tapez :
netsh http show sslcert
3.4 Configuration du firewall
Ouvrez le gestionnaire de firewall avancé
Bloquez les règles entrantes (inbound rules) existantes suivantes par sécurité (le service « Pare-feu / Windows Firewall » doit bien entendu être activé) :
o GRE-in o L2TP-in o PPTP-in
Double clic sur la règle > Bloquer
3.5 Changement du port d’écoute
Si vous êtes derrière un router NAT et que vous souhaitez modifier le port d’écoute de votre serveur VPN SSTP, modifiez la clef de registre suivante : HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SstpSvc\Parameters\ListenerPort [0] Modifiez ensuite la valeur ListenerPort avec le port souhaité. Pensez également à modifier la règle firewall propre au SSTP afin qu’elle prenne en compte votre nouvelle configuration. Sachez que dans tous les cas le client cherchera à se connecter via le port [443]. Après la modification du registre, redémarrez votre PC pour prendre la nouvelle configuration.
3.6 Configuration des règles de filtrage
Lancer la console NPS
Aller dans Policies > Connection Requet Policies
Supprimer toutes les règles existantes (clic droit > Supprimer)
Ensuite, créez une nouvelle règle : clic droit > Connection Request Policies > New
L’assistant suivant se lance :
Tapez un nom pour votre stratégie : « Accès distant VPN-SSTP »
Type of network > Remote Access Server (VPN-Dial up)
Next
Add
Ajoutez ensuite les règles suivantes dans la liste : o Framed Protocol : PPP o NAS port type : Virtual VPN o Tunnel Type : SSTP
Répondez ensuite Next à toutes les options, puis sur terminer
Vous obtenez un résultat semblable à cela :
Il faut maintenant créer une stratégie réseau:
Aller dans Policies > Network Policies
Supprimer toutes les règles existantes (clic droit > Supprimer)
Ensuite, créez une nouvelle règle : clic droit > Network Policies > New
L’assistant suivant se lance :
Add
Ajoutez ensuite les règles suivantes dans la liste : o Users groups : ajoutez le groupe « GS_VPN » dont VPN-user est membre o Day and time restrictions (optionnel)
Répondez ensuite Next à toutes les options, puis sur terminer
Pour terminer, redémarrer votre serveur RRAS pour prendre en compte la nouvelle considération :
Lancer Routing and remote access
Clic droit sur [nom_votre_serveur] > All tasks > Restart
Votre serveur NPS est dorénavant opérationnel.
4. Configuration de votre routeur/box Pour vous connecter depuis l’extérieur, vous devez ouvrir le port 443 en TCP sur votre routeur et le redirigez vers l’IP interne du serveur VPN1. Je vous laisse chercher sur internet pour savoir comment ouvrir le port selon votre type de box/routeur. Vous devriez avoir quelque chose semblable à cela :
Port public IP et port interne
5. Configuration du poste client
5.1 Installation du certificat
Depuis votre poste client, allez sur le site http://nom_serveur_VPN1/certsrv/en-US
Download a CA certificate…
Download a CA certificate
Ouvrir > Installer le certificat
Suivant > Suivant > Terminer
5.2 Copie du certificat
Start > Run > MMC > OK
File > Add/Remove Snap-in
Certificates > Add > My user account > OK
Certificates > Add > Computer account > Local computer > OK
Ok
Vous obtenez ceci :
Certificats – utilisateur local > Autorités de certification intermédiaire > Certificats
Clic droit sur votre certificat > Copier
Certificats (ordinateur local) > Autorités de certification racine de confiance > Certificats
Clic droit > Coller
5.3 Importation de la liste des certificats révoqués (CRL)
Avant tout, vous devez savoir qu’avant même de procéder à l’établissement de la connexion VPN, votre poste client va obligatoirement vouloir accéder au site des certificats révoqués afin de vérifier que votre certificat est bien valide. Si vous ne souhaitez pas rendre publique votre site web sur internet (pour des raisons de sécurité), vous devez télécharger la dernière version des CRL localement sur votre poste client. Vous devez pour cela utiliser la même MMC que dans le paragraphe précédent.
Depuis votre poste client, aller sur http://nom_serveur_VPN1/certsrv/en-US ou « en-FR » si version française
Download a CA certificate …
Download lastest base CRL
Télécharger et indiquer l’endroit où vous souhaitez l’enregistrer
Ouvrez la MMC créait au point précédent
Certificats (ordinateur local) > Autorités de certification intermédiaires > Toutes les tâches > Importer
Attention ! L’inconvénient majeur de ne pas publier votre liste de révocations est que vous devrez répéter cette procédure tous les 7 jours tout au plus. En effet, au-delà de cette période votre fichier CRL arrivera à échéance et vous ne pourrez plus vous connecter.
5.4 Configuration du fichier HOST
Pour vous connectez à distance depuis votre poste CLIENT1, il vous sera obligatoire de rajouter une entrée dans votre fichier HOST.
Editez vote fichier HOST de la façon suivante : o notepad %windir%\system32\drivers\etc\hosts
Ajoutez à la fin la ligne suivante : o <IP publique du serveur> <FQDN du serveur>
5.5 Création d’une connexion VPN
Depuis le Centre de réseau et partage, cliquez sur :
Connexion à votre espace de travail
Utilisez ma connexion Internet (VPN)
Remplir les champs nom d’utilisateur et mot de passe avec le compte AD « client-vpn » créé auparavant.
Créer
Revenez ensuite au Centre de réseau et partage, et cliquez en haut à gauche sur Modifier les paramètres de la carte
Clic droit sur la connexion VPN récemment créée (VPN SSTP) > Propriétés
Vérifiez que vous avez bien mis le FQDN de VPN1 dans l’onglet Général
Dans le menu déroulant de l’onglet Sécurité choisissez Protocole SSTP
Cliquez sur OK
Votre VPN SSTP est prêt. Il ne vous reste donc plus qu’à saisir les identifiants de l’utilisateur « user-sstp » pour vous connecter
PS : il n’est pas nécessaire de saisir le domaine
6. Erreurs et problèmes fréquents Les erreurs suivantes sont celles que j’ai pu rencontrer lors de l’installation du VPN SSTP. Certaines m’ont obligé à passer pas mal de temps sur internet à la recherche d’une solution. J’espère donc qu’elles vous seront de grandes utilités. Si une erreur n’est pas répertoriée ici, reportez-vous aux sites cités au début dans la partie « Sources ». Attention la liste ci-dessous n’est pas exhaustive.
6.1 Le nom CN ne correspond pas à la valeur passée
Erreur : 800B010F
Vous avez mis l’IP de VPN1 (ou votre IP public) au lieu de son FQDN lors de la création du VPN via l’assistant Windows :
Mettez le FQDN au lieu de l’IP dans les propriétés du VPN créé, comme indiqué
dans le point 5.5
Vous avez mis le FQDN mais mal renseigné le fichier host
Modifiez le fichier HOST comme indiqué dans le point 5.4
6.2 La fonction de révocation n’a pas pu vérifier la révocation car le serveur
était déconnecté
Erreur : 80092013
Vous n’avez pas téléchargé et installé localement la liste des certificats révoqués.
Reportez-vous au point 5.3 et vérifiez que vous avez correctement téléchargé
et installé la liste des certificats révoqués
La liste de révocation des certificats est périmée. Téléchargez-la sur votre poste client
selon le point 5.3
6.3 La connexion a été interdite par une stratégie…
Erreur : 812
Votre stratégie NPS bloque la connexion.
Référez-vous au paragraphe 3.6 pour configurer vos règles de sécurités NPS
correctement.
6.4 Le nom demandé est valide, mais aucune donnée du type requis n’a été
trouvée
Erreur : 80072AFC
Le nom saisit lors de la création du VPN est erroné (attention, à vérifier !) : Vérifiez que le nom d’hôte correspond bien à « nom_pc.nom_domaine », comme
indiqué dans le point 5.5
6.5 La connexion n’a pas pu être établie, car le protocole d’authentification
utilisé par le serveur […] ne correspond pas aux paramètres…
Erreur : 919
La méthode d’authentification de votre poste client ne correspond pas à celles à acceptées par le serveur
Allez dans Routing and remote access > clic droit [serveur] > Properties > Security > Authentification Methods et sélectionnez la case appropriée.
Pour information le VPN SSTP utilise la méthode MS-CHAP v2 et le VPN PPTP-EAP la méthode Extensible authentification protocol (EAP)
6.6 Une chaine de certificats a été traitée mais s’est terminée par un certificat
racine qui n’est pas approuvé par le fournisseur d’approbation.
Erreur : 800B0109
Vous n’avez pas installé correctement le certificat sur votre poste client : Référez-vous au paragraphe V.1. pour ajouter le certificat
Le certificat SSL a mal été associé à votre VPN. Rendez-vous au point 3.3 pour corriger
ce point
Conclusion Voilà, votre VPN SSTP est prêt. Vous pouvez dorénavant vous connectez chez vous depuis n’importe quel endroit, du moment que vous avez un accès internet et que le port [443] n’est pas bloqué.
N’hésitez pas à m’envoyer vos commentaires ou retours à l’adresse suivante : m.decrevoisier A-R-0-B-A-5 outlook . com
Soyez-en d’ores et déjà remercié