Outils personnels
Vous êtes ici : Accueil Blog Monter un VPN sous IPcop
Navigation
 
Actions sur le document

Monter un VPN sous IPcop

Filed Under:

--- VPN Roadwarrior Win XP sur IPCop --- Cette documentation est inspiré de : Merci donc à Elfeclair Ce document parle de la version 1.4.10 d'IPCOP

Paramétrer le VPN sur IPCop 1.4.10



- Accéder aux pages de configuration du VPN https://vpn.societe.com:445/cgi-bin/vpnmain.cgi

Paramètres généraux
-------------------
- Nom d'hôte : vpn.societe.com (soit le nom DNS de votre IPCop soit son adresse IP fixe)

- Délai avant de lancer le VPN (secondes) : 60s

- Activé : Oui
- Cliquer "Enregistrer"

Autorités de certification
--------------------------
- Cliquer "Généreration des certificats racine et système" pour qu'IPCop
génère lui-même ses certificats
- Nom d'organisation : societe (le nom de votre societe)
- Nom d'hôte d'IPCop : vpn.societe.com (soit le nom DNS de votre IPCop soit son adresse IP fixe)
- Pays : France (facultatif)

Vous puvez biensur renseigner les autres champs. Ensuite

- Cliquer sur "Généreration des certificats racine et système"

Créer le VPN

 

Dans Contrôle et statut de la connexion
----------------------------------
- Cliquer "Ajouter"
- Choisir le type de VPN "RPV système à réseau (RoadWarrior)"
- Cliquer "Ajouter"

Connexion
---------
- Nom : Utilisateur (votre nom sans espace)
- Interface : Red
- Sous-réseau local : 192.168.0.0/255.255.255.0 (C'est le réseau vert, mais le choix par defaut devrait être bon)
- Serveur/IP distant: laisser vide pour pouvoir se connecter à partir de n'importe quelle IP
- Remarque: RoadWarrior Utilisateur (ou RoadWarrior le nom de l'utilisateur du VPN)
- Activé : Oui
- Action quand le 'pair' disparait (depuis la v.1.4.7) : Clear
- Perfect Forward Secrecy : Oui
- Poursuivre avec la configuration avancée : Oui

Authentification
----------------
- Choisir "Générer un certificat"
- Nom d'utilisateur ou Nom du système (CN): Utilisateur (le même que celui indiqué lors de la génération des certificats racine)
- Nom d'Organisation: societe
- Mot de passe du fichier PKCS12: XXXXXXX
- Mot de passe du fichier PKCS12 (confirmation) : XXXXXXX
- Cliquer "Enregister"

Avancé
------
Ces réglages permettent d'offrir de nombreux protocoles de cryptages. Le client VPN utilisé
pourra donc choisir celui qu'il prefere. Avec SSH Sentinel, nous utiliserons le protocole
AES (ou Rijndael) 128 bits qui offre le meilleur rapport sécurité / performance.
De plus ce ne sont peut-être pas les meilleurs réglages, mais cette configuration fonctionne.
L'intégrité est maintenant reglée sur SHA1, car des défaillances ont été trouvées dans MD5.
Le type de défaillance ne semble pas affecter l'utilisation qu'en fait IPCop, mais on préférara
SHA1 par précaution

- Encryptage IKE
- AES (256 bits)
- AES (128 bits)
- Intégrité IKE
- SHA2 (512 bits)
- SHA2 (256 bits)
- SHA
- Grouptype IKE :
- MODP-1024

- Cryptage ESP
- AES (256 bits)
- AES (128 bits)
- Intégrité ESP
- SHA2 (512 bits)
- SHA2 (256 bits)
- SHA
- Grouptype ESP :
- MODP-1024

- Compression : Non
- Utilisez seulement les paramètres proposés : Oui
- NAT traversal : Oui
- Cliquer "Enregistrer"

Exporter le certificat

 

Contrôle et statut de la connexion
----------------------------------
- Cliquer sur l'icone disquette du VPN voulu
- Sauver le fichier username1.p12

Installer SSH Sentinel 1.3.2.2

 

==================================

Rapatrier SSH Sentinel 1.3.2.2 <http://nts.wustl.edu/wireless/SSHSentinel1.3.2.2.exe> ou

<ftp://ftp.up.ac.za/pub/linux/ssh/pub/sentinel/index.html>

La version 1.3.x est gratuite pour un usage non commercial.

La version 1.4.x est payante dans tous les cas.

 

Lancer l'installation de SSH Sentinel 1.3.2.2

Welcome to SSH Sentinel Installation

- Next

Do you accept the terms of the preceding Licensing Agreement ?

- Yes

Choose Destination folder

- Next

Setup Program Folder

- Next

Authentication Key Pair

- Move the mouse (to generate a random seed)

- Next ou Suivant

Certificate Information

- Subject information

- Primary Identifier : Administrator Email

- Administrator Email : Utilisateur1@societe.com

 

- Suivant

Certificate Enrollment

- Create a self-signed certificate

- Suivant

Cypher algorythm

- Suivant

SSH Installation Completed

- Yes, restart the computer

- Finish

 

 

3 - Configurer SSH Sentinel 1.3.2.2

===================================

Faire un clic droit sur l'icone de SSH Sentinel dans la zone de notification. L'icone est un carré bleu

avec 3 petits carrés blanc à l'intérieur.

- Choisir l'option "Run Policy Editor ..."

 

Importer le certificat

----------------------

- Sélectionner l'onglet "Key Management"

- Cliquer droit sur "My Keys"

- Choisir l'option "Import"

- Régler le type de fichier sur "PKCS #12"

- Ouvrir le fichier certificat exporté depuis IPCop : utilisateur1.p12

- Entrer le mot de passe pour décrypter le certificat : XXXXXXXX

- Cliquer "Ok"

- Accepter l'installation du certificat de l'utilisateur

- Yes

- Accepter l'installation du certificat du serveur

- Yes

- Cliquer sur "Appliquer"

 

Parametrer le VPN

-----------------

- Sélectionner l'onglet "Security Policy"

- Double-cliquer sur l'élement : "VPN Connections"

- Double-cliquer sur l'élement "Add ..."

Ajouter une connexion VPN

-------------------------

- Gateway name ou Gateway IP adress, rentrer le nom DNS de votre serveur ou son adresse.

La permutation entre les 2 types d'information se fait en cliquant sur

le petit bouton "IP" :

- vpn.societe.com, ou

- adresse ip fixe de votre firewall

- Remote network :

- Cliquer sur "..."

- Cliquer sur "New"

- Network name : "sociéte"

- IP adress : 192.168.0.0 (à remplacer par le réseau vert de votre LAN)

- Subnet mask : 255.255.255.0 (à remplacer par le netmask du réseau vert de votre LAN)

- Cliquer sur "Ok"

- Remote Network, doit maintenant être positioné à "société"

- Authentication key : societe ca certification

- Use legacy proposal : non activé

- Cliquer sur "Ok"

- Cliquer sur "Appliquer"

Paramètres supplémentaires

--------------------------

- Sélectionner l'onglet "Security Policy"

- Double-cliquer sur l'élement : "VPN Connections"

- Double-cliquer sur l'élement "vpn.societe.com"

Je ne sais pas si tous ces paramètres doivent avoir nécessairement ces valeurs.

Ce sont les réglages qui fonctionnent dans ma configuration, mais ce ne sont

pas les seuls et peut-être pas les meilleurs. De plus ces réglages dépendent

des caractéristiques du Serveur VPN (IPCop ici) et de son paramétrage

également.

IPSec/IKE proposal

------------------

- Cliquer sur "Settings"

- IKE Proposal Encryption algorithm : Rijndael

- IKE Proposal Integrity function : SHA1

- IKE Mode : main mode

- IKE group : MODP 1024 (group 2)

- IPSec Proposal Encryption algorithm : Rijndael

- IPSec Proposal Integrity function : HMAC-SHA1

- IPSec mode : tunel (le choix est figé)

- PFS group : MODP 1024 (group2)

- Attach only the selected values to the proposal : Non

- Cliquer sur "Ok"

Virtual IP address

------------------

- Désactiver "Acquire virtual IP address"

Ce paramétre est important. Si vous l'activez le VPN ne fonctionnera pas.

Advanced

--------

Cliquer sur l'onglet "Advanced"

- Apply IP compression : non

- Si le client Roadwarrior est derrière est routeur qui fait du NAT

- Activer : Enable Network Adress Translation Traversal

- Avec SSH Sentinel 1.4; il faut désactiver "Deny split tuneling"

Ce paramètre est important. Si vous l'activez le VPN ne fonctionnera pas.

- Cliquer sur "Ok"

- Ok

Vérification

------------

Parfois, surement un bug de SSH Sentinel 1.3, les réglages IPSec/IKE se remettent

à la valeur par defaut (Rjindaël) après le paramétrage de l'adresse IP virtuelle.

Il faut donc vérifier les réglages après les éventuelles modifications.

 

 

4 - Activer le VPN

==================

Faire un clic droit sur l'icone de SSH Sentinel dans la Zone de notification

- Choisir l'option "Select VPN"

- Sélectionner "vpn.societe.com"

L'élément "vpn.societe.com" est activé

 

 

5 - Test de VPN

===============

Sur le poste VPN client, faire un ping vers une adresse du réseau local (vert) coté IPCop.

Une bonne adresse est l'adresse ethernet d'IPCop coté LAN (vert)

 

> ping 192.168.0.1 (à remplacer par l'adresse IP de votre IPCop coté LAN)

 

La réponse doit être du genre :

> Envoi d'une requête 'ping' sur 192.168.0.1 avec 32 octets de données :

 

> Réponse de 192.168.0.1 : octets=32 temps=198 ms TTL=64

> Réponse de 192.168.0.1 : octets=32 temps=178 ms TTL=64

> Réponse de 192.168.0.1 : octets=32 temps=278 ms TTL=64

> Réponse de 192.168.0.1 : octets=32 temps=135 ms TTL=64

 

> Statistiques Ping pour 192.168.0.1:

> Paquets : envoyés = 4, reçus = 4, perdus = 0 (perte 0%),

> Durée approximative des boucles en millisecondes :

> Minimum = 2ms, Maximum = 4ms, Moyenne = 2ms

 

 

6 - Désactiver le VPN

=====================

Faire un clic droit sur l'icone de SSH Sentinel dans la Zone de notification

- Choisir l'option "Select VPN"

- Désélectionner "vpn.societe.com"

L'élément "vpn.societe.com" est désactivé

 

 

7 - Tests et logs

=================

SSH Sentinel peut produire des logs. Ils peuvent être visualisés à l'écran ou écrit dans un fichier.

Faire un clic droit sur l'icone de SSH Sentinel dans la Zone de notification

- Choisir l'option "Auditing / View IKE log Windows"

- Choisir : IPsec/IKE logging : Low ou Moderate ou Detailled selon vos besoins

Faire un clic droit sur l'icone de SSH Sentinel dans la Zone de notification

- Choisir l'option "Run Policy Editor ..."

- Double-cliquer sur l'élement : "VPN Connections"

- Sélectionner le VPN voulu et cliquer sur "Diagnostics..."

Vous avez alors des infos supplémentaires sur le connexion.

 

IKE SA

------

Si vous avez des infos dans IKE SA, c'est que les paramètres de certificats, d'adresse IP du

serveur, de type de protocole au niveau IKE sont bon.

 

IPSec SA

--------

Si vous n'avez pas d'infos au niveau IPSec SA, il est probable que les paramètres du réseau

vert de l'IPCop soient erronés.

Si vous avez des infos au niveau IPSec SA, il est probable que les paramètres soient bons.

 

 

8 - Remarques

=============

Sur d'anciennes version (1.4.x), afficher la page VPN d'IPCop au travers d'une connexion VPN sur l'IPCop,

coupe celle-ci. Sur la 1.4.5 ce problème a disparu.

 

Après quelques essais infructeux, il est parfois nécessaire de redémarrer l'IPCop distant, où

même l'IPCop local si le LAN du RoadWarrior est protégé par un firewall IPCop.

 

L'option "Utiliser seulement les paramètres proposées d'IPCop", ne semble mémorisée que si

la connexion est activée.

 

Il semble que l'option d'IPCop

- Grouptype ESP : MODP-1024

ne fonctionne plus depuis le patch IPCop 1.4.1, il faut donc utiliser

- Grouptype ESP : Phase 1 Group

 

9 - Résolution des noms

=======================

Le client roadwarrior conserve son adresse IP locale. Mais comme le serveur de VPN est aussi

la paserelle du réseau distant, le routage se passe bien.

Par contre la résolution de noms ne se fait pas. Il faut soit utiliser les adresses IP, soit

utiliser les fichiers de résolution de noms statiques : hosts et lmhosts.

 

 

10 - Routeur coté client

========================

Si le client VPN n'est pas connecté directement à l'internet, donc si il est natté, donc

si il n'a pas une adresse IP officielle, son routeur doit posséder le fonction "IPSEC Passthrough".

Cette fonction est native au routeur et ne demande pas de configurer manuellement une redirection

des ports et/ou des protocoles spécifiques à IPSec.

 

J'ai testé avec succès :

 

- Modem ADSL Alcatel SpeedTouch Ethernet + IPCop 1.4

- FreeBox Ethernet + IPCop 1.4

- LiveBox Wanadoo

- Modem ADSL Bewan Ethernet + IPCop 1.4

- Modem Routeur Netgear DG814

- Modem RTC sur port série

- Modem USB sur port USB (FreeBox)

- Modem USB sur port USB (Sagem F@st 800 Wanadoo)

- Netgear WGT624

 

J'ai testé avec echec :

 

- Modem GPRS chez SFR

- Alcatel / Thomson Speedtouch 500

- Netgear RP614

 

Sinon, Internet nous apprend : The following list is a list of known SOHO gateways/routers that

allow IPSec Passthrough:

 

* Linksys - EtherFast Cable/DSL VPN Router with 4-Port Switch

* Linksys - Wireless AP Cable/DSL Router with 4-Port Switch

* Dlink - All new Ethernet gateways and routers

* DrayTek Vigor Broadband Routers

* Nexland VPN/LAN Router

* NetComm NB3200 Cable/DSL VPN Router

* NetGear Model FVL328 Cable/DSL ProSafe VPN Firewall Router

 

This is not by any means a complete list. A vast majority of new broadband / gateway routers do

support IPSec Passthrough and those that do will proudly display this fact on their packaging

either by saying "VPN supported" or "IPSec Passthrough"

 

 

A - Problèmes de reconnexion

============================

Les versions récentes d'IPCop (depuis la v.1.4.7) permettent de gérer les reconnexions

le réglage est : Action quand le 'pair' disparait : Clear

 

 

B1 - Problèmes avec F-Secure

===========================

 

Ces deux produits présentent quelques incompatibilités. Il vous est possible

d'installer un correctif afin d'utiliser votre ordinateur après un blocage

quelconque. Notez que malgré l'installation du correctif, SSH Sentinel ne

fonctionnera peut-être toujours pas.

 

http://support.f-secure.com/enu/corporate/downloads/hotfixes/index.shtml

 

 

 

B2 - Problèmes avec Carte Ethernet Marvell Yukon

===============================================

 

Sur un portable Asus V6vA20, la carte Ethernet Marvell Yukon n'est pas compatible

avec SSH Sentinel. Son installation provoque la cessation de toute activité Ethernet.

L'installation de nouveaux pilotes télechargés depuis le site www.marvell.com

à

résolu le problème.

 

 

B3 - Problèmes avec le firewall personel Sygate

===============================================

 

La coexistence du firewall Syagte et de SSH Sentinel est problématique.

Dans le pire des cas, on obtient un PC qui rebbote en boucle, et dans le meilleur

des cas, on obtient une perte de connexion Ethernet.

Il faut donc désinstaller ce firewall du poste client avant d'installer SSH Sentinel

 

 

C - Problèmes de reconnexion coté client

========================================

 

Si la reconnexion VPN est impossible de la faute du client, il faut :

- rebooter le PC client

- ou plus simple arrêter puis relancer le gestionnaire VPN : Stop / Start

Policy Manager

- Dans certains, lorsque un IPCop gère le réseau du client Roadwarrior, il

est nécessaire de rebooter cet IPCop coté client.

 

 

 

D - Problèmes de reconnexion coté serveur

========================================

 

Si la reconnexion VPN est impossible de la faute du serveur, il faut :

- Rebooter le serveur

- ou moins brutal, arrêter la connection fautive :

- se logger en ssh sur le serveur VPN (si l'accès ssh est configuré)

- lancer "ipsec auto --down 'connectionname' avec connectionname

le nom de la connexion VPN. Dans cet exemple, le nom de la connexion est

Utilisateur1 (votre nom sans espace.) Attention la casse est prise en compte

dans le nom de connexion. Si on ne se souvient plut des nom des connections,

ils sont affichés dans /etc/ipsec.conf.

 

 

E - SSH Sentinel

================

 

SSH Sentinel 1.3.2.2 est dispo sur <http://nts.wustl.edu/wireless/SSHSentinel1.3.2.2.exe>

La version 1.3.x est gratuite pour un usage non commercial.

La version 1.4.x est payante dans tous les cas.

 

J'ai testé la version 1.4.1. Elle fonctionne de manière équivalenta à la 1.3. L'interface

est rigoureusement identique. L'établissement d'une connexion VPN semble plus rapide.

Par contre il faut décocher l'option "Deny Split Tunneling" dans "Rule Properties / Advanced".

 

SSH Sentinel a été vendu a la compagnie safenet-inc (safenet-inc.com). Mais

il se nomme maintenant : SoftRemote.

Pour simplifier les choses, Safenet édite aussi un produit nommé Sentinel,

mais c'est un système de protection de logiciel par clef physique.

 

 

F - BlockOutTraffic add-on

==========================

L'add-on BlockOutTraffic (www.blockouttraffic.de) permet de contrôler le trafic sortant.

Si il est installé sur le firewall IPCop qui protège le client VPN, il doit être configuré

de manière à laisser sortir les demandes de connexions VPN sortantes.

 

Il faut créer un groupe de service nommé VPN avec les ports suivants et l'autoriser en sortie.

 

Port Type Nom

47 TCP GRE

50 TCP ESP

51 TCP AH

500 UDP IKE

4500 TCP & UDP Nat-T