[TUTO] – Ubiquiti ERL : Monter un VPN IPSec Site-à-site avec pfSense

1 Star2 Stars3 Stars4 Stars5 Stars (3 votes, average: 5,00 out of 5)
Loading...

de | 6 novembre 2017

Dans ce petit tuto du jour, on va voir comment configurer un VPN IPSec site-à-site avec pfSense et un routeur Ubiquiti EdgeRouter Lite.

Ce tutoriel est 100% fonctionnel sur tous les équipements EdgeRouter étant en version 1.9.7 minimum.

Equipements utilisés dans cet article :

  • EdgeRouter Lite
  • pfSense Community Edition 2.4

Je suis assez fan du matériel Ubiquiti, c’est simple, sobre, robuste et efficace. Pour ma part je dispose du EdgeRouter Lite disponible ici et de la borne Wifi Ubiquiti Networks UAP-AC-LITE (802.11 a/b/g/n/ac) disponible ici

Schema réseau

Pour commencer, la topologie reseau, histoire de poser le décor !

ERL :

eth0 (LAN1) : 192.168.10.254/24

eth1 (WAN) : 82.227.24.25

eth2 (LAN2) : 192.168.11.254/24

pfSense :

vmx0 (WAN) : 151.80.84.160

vmx1 (LAN) : 192.168.20.254/24

 

VPN IPsec site-à-site avec pfSense

Source image

Configuration du VPN IPSec Site-à-site avec pfSense – ERL

Configuration via interface Web

  1. Se connecter à l’interface web du routeur et aller dans l’onglet VPN > IPsec Site-to-Site > + Add Peer
  2. Selectionner : Show advanced options
  3. Selectionner : Automaticaly open firewall and exclude from NAT
  4. Completer les info comme ci-dessous :
Peer: 151.80.84.160
Description: IPsec
Local IP: 82.227.24.25
Encryption: AES-256
Hash: SHA1
DH Group: 14
Pre-shared Secret: yoursecret
Local subnet: 192.168.10.0/24
Remote subnet: 192.168.20.0/24

Cliquez sur +Add subnets

Local subnet: 192.168.11.0/24
Remote subnet: 192.168.20.0/24

VPN IPsec site-à-site avec pfSense

 

Configuration via CLI

Accédez à l’interface de ligne de commande (CLI). Vous pouvez le faire en utilisant le bouton CLI dans l’interface graphique ou en utilisant un programme tel que PuTTY.

  1. Entrez en mode configuration :
    configure
  2. Modifier le IKE et le SAs (Security Associations) :
    set vpn ipsec ike-group FOO0 lifetime 86400
    set vpn ipsec ike-group FOO0 proposal 1 hash sha256
  3.  Modifier l’ESP et le SAs (Security Associations) :
    set vpn ipsec esp-group FOO0 lifetime 43200
    set vpn ipsec esp-group FOO0 proposal 1 encryption aes128
    set vpn ipsec esp-group FOO0 proposal 1 hash md5
  4. Désactiver PFS (Perfect Forward Secrecy)
    set vpn ipsec esp-group FOO0 pfs disable
  5. Modifiez l’adresse de l’interface IPsec locale (optionel) : Utilisez la commande suivante pour spécifier l’adresse IP locale à utiliser comme source pour les paquets IPsec destinés à la plateforme distante. Les instructions dhcp-interface et local-address NE PEUVENT PAS être utilisées simultanément. Décidez quelle commande est la meilleure pour votre situation en utilisant ces options:(A) Vous utilisez plusieurs interfaces WAN et souhaitez que le VPN réponde sur plusieurs interfaces.Avec cette instruction, toute adresse IPv4 présente sur le système peut être utilisée comme source du VPN. Vous pouvez également utiliser cette commande si votre interface WAN reçoit une adresse via PPPoE.
    set vpn ipsec site-to-site peer 151.80.84.160 local-address 0.0.0.0

    (B) Votre interface WAN recoit une IP via DHCP

    delete vpn ipsec site-to-site peer 151.80.84.160 local-address
    set vpn ipsec site-to-site peer 151.80.84.160 dhcp-interface eth1
  6. Activer IPsec offloadind pour augmenter les performances ESP (necessite un reboot)
    set system offload ipsec enable
  7. Validez les modifications
    commit
  8. Sauvegardez les modifications
    save

     

Configuration VPN IPSec Site-à-site avec pfSense – pfSense

Coté pfSense nous utilisons l’appliance téléchargeable sur le site de l’éditeur, et dans un environnement VMware. Nous sommes en version 2.4 (dernière stable disponible à cette date). Coté pfSense, tout peux se faire via l’interface web.

 

Ajout des règles firewall IPSec

Pour ajouter des règles dans le pfSense, aller dans Firewall > Rules > WAN et cliquez sur Add

Action: Pass
Interface: WAN
Address Family: IPv4
Protocol: UDP
Source: any
Destination: any
Destination Port Range: From ISAKMP (500) to ISAKMP (500)
Description: IKE

Action: Pass
Interface: WAN
Address Family: IPv4
Protocol: ESP
Source: any
Destination: any
Description: ESP

Action: Pass
Interface: WAN
Address Family: IPv4
Protocol: UDP
Source: any
Destination: any
Destination Port Range: From IPsec NAT-T (4500) to IPsec NAT-T (4500)
Description: NAT-T

On devrait avoir quelque chose comme ça :

VPN IPsec site-à-site avec pfSense

 

Configuration de la phase 1 (IKE)

Pour configurer la phase 1 sur le pfSense, aller dans VPN > IPSec > Tunnels > +Add P1

Key Exchange Version: IKEv1
Internet Protocol: IPv4
Interface: WAN
Remote Gateway: 82.227.24.25
Description: IPsec

Authentication Method: Mutual PSK
Negotiation Mode: Main
My Identifier: My IP address
Peer Identifier: Peer IP address
Pre-Shared Key: yoursecret

Encryption Algorithm: AES 256 bits
Hash Algorithm: SHA256
DH Group: 14 (2048 bit)
Lifetime (Seconds): 86400

Uncheck 'Dead Peer Detection'
NAT Traversal: Auto

On devrait avoir quelque chose comme ça :

VPN IPsec site-à-site avec pfSenseVPN IPsec site-à-site avec pfSense

 

Configuration de la phase 2 (ESP)

Pour configurer la phase 2 sur le pfSense, aller dans VPN > IPSec > Tunnels > Show Phase 2 Entries+Add P2

Mode: Tunnel IPv4
Local Network: Network 192.168.20.0/24
NAT/BINAT Translation: None
Remote Network: Network 192.168.10.0/24

Protocol: ESP
Encryption Algorithms: AES 128 bits
Hash Algorithms: MD5 (uncheck SHA1)
PFS Key Group: off
Lifetime: 43200

On devrait avoir quelque chose comme ça :

VPN IPsec site-à-site avec pfSense VPN IPsec site-à-site avec pfSense

Faire la même chose pour le deuxième subnet.

Selectionnez « Enable » si cela n’est pas fait automatiquement et cliquez sur « Apply changes » :

VPN IPsec site-à-site avec pfSense

Vérifier que le status du démon IPsec est OK en allant dans Status > Services

VPN IPsec site-à-site avec pfSense

 

Ajout des règles d’accès au Firewall

Pour configurer les règles d’accès sur le firewall pfSense, aller dans Firewall > Rules > IPSec > Add

Action: Pass
Interface: IPsec
Address Family: IPv4
Protocol: Any
Source: Network 192.168.10.0/24
Destination: Network 192.168.20.0/24

Action: Pass
Interface: IPsec
Address Family: IPv4
Protocol: Any
Source: Network 192.168.11.0/24
Destination: Network 192.168.20.0/24

On devrait avoir quelque chose comme ça :

VPN IPsec site-à-site avec pfSense

Faire la même chose avec le deuxième subnet.

 

Vérification du bon fonctionnement

Coté pfSense

Pour vérifier que la connexion est bien établie, il faut aller dans Status > IPsec 

VPN IPsec site-à-site avec pfSense

Si le status est bien « ESTABLISHED » alors la connexion est up !

Coté EdgeRouter

Coté Ubiquiti, il suffit d’aller dans l’onglet Wizards > VPN Status

VPN IPsec site-à-site avec pfSense

 

J’espère que cet article vous aura été utile ! Si vous avez la moindre question, n’hésitez pas à me laisser un petit commentaire !

A+

If you like this post, don't hesitate to share it !

4 réflexions au sujet de « [TUTO] – Ubiquiti ERL : Monter un VPN IPSec Site-à-site avec pfSense »

  1. mou idri

    Bonjour,
    j’ai suivi ce tuto et cela ne marche pas. Vous ne créez pas de vti ?
    crdlt

    Répondre
    1. Maxime Auteur de l’article

      J’ai encore du le refaire la semaine dernière car j’ai modifier ma configuration et ca à fonctionné du premier ocup.
      Cependant à l’etape 5 ici : https://vdays.net/fr/2017/11/06/tuto-ubiquiti-erl-monter-un-vpn-ipsec-site-a-site-avec-pfsense/#Configuration_via_CLI je n’utilise que l’option B et pas la A. Etant donné qu’il y avait une erreur de ma part, peut-etre que votre problème est réglé. Sinon essayer d’utiliser uniquement l’option B si elle correspond a votre configuration.

      Répondre
  2. mou idri

    la commande « set vpn ipsec site-to-site peer 192.0.2.1 local-address 0.0.0.0 » est issue d’un copié collé et ne correspond pas à votre configuration.
    Est ce normal ?

    Répondre
    1. Maxime Auteur de l’article

      Bonjour,

      Il s’agit d’une erreur , il suffit de remplacer 192.0.2.1 par l’adresse IP publique distante avec laquelle vous souhaitez monter le VPN

      Répondre

Laisser un commentaire

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