Outils personnels

PfSense : tunnel IPSec

De wikiGite

Révision datée du 1 juillet 2015 à 09:09 par Frank (discussion | contributions)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Configuration

S'assurer qu'IPSec est lancé des 2 côtés. Sur PFSense :

VPN > IPSEC > onglet Tunnels

cocher "Enable IPsec" et sauver.

Phase 1

touche "+" à gauche pour générer la phase 1 (routage + authentification)

  1. donner l'IP du routeur/firewall distant
  2. générer une "pre-shared key" : une phrase secrète suffisamment longue (mini 20 car.). Elle doit être identique des 2 côté, donc idéalement récupérer celle que le client a généré sur son routeur. Ou générer ici par exemple :http://www.kurtm.net/wpa-pskgen/.
  3. choisir le cryptage 3DES pour plus de compatibilité avec d'autres routeurs

laisser le reste par défaut

  1. sauver

Phase 2

Réseau à réseau - accès direct

Pour un accès sans translation d'adresses (NAT), par exemple, un réseau client 192.168.1.0/24 veut accéder au réseau 192.168.0.0/24 local.

réseau client ---> routeur <-----> Internet <------> PFSense <--- réseau local

192.168.1.0/24 <--------------------------------------------------------------> 192.168.0.0/24

A partir de son réseau 192.168.1.xx, le client accès au serveur par 192.168.0.xx

Sur l'onglet Tunnels, cliquer sur "+" (à côté de "- Show 0 Phase-2 entries") pour générer la phase 2 (le VPN lui-même), puis "+" à droite sur la nouvelle ligne créée

  1. indiquer dans "Local network" :
    1. soit "LAN subnet" pour un accès total réseau à réseau
    2. soit "Address" avec l'IP d'un serveur qui sera seul accessible à partir de l'autre réseau
  2. indiquer la plage du réseau LAN de l'autre réseau (Remote network)
  3. choisir le cryptage 3DES
  4. dans Hash algorithms laisser SHA1
  5. dans PFS key group chois "2 (1024 bits)"
  6. Sauver

Réseau à réseau - accès NATé

Pour un accès avec translation d'adresses (NAT), par exemple, un réseau client 192.168.0.0/24 veut accéder au réseau 192.168.0.0/24 local, impossible car ce sont les mêmes plages. Ou bien, on veut que chaque client accède au réseau (ou un serveur) local par une plage 172.16 différente pour chacun.


réseau client ---> routeur <------> Internet <-------> PFSense <--- réseau local

192.168.0.0/24 <-------------------------------------------> NAT 192.0 <-------> 192.168.0.0/24

A partir de son réseau 192.168.0.xx, le client accède au serveur par 172.16.0.xx (les IPs sont NATées 1 pour 1, c'est à dire que l'IP 172.16.0.1 correspondra à 192.168.0.1. C'est pourquoi le masque de la plage NAT (172.16) doit correspondre à la plage du réseau local (192.168), ici /24.

Sur l'onglet Tunnels, cliquer sur "+" pour générer la phase 2, puis "+" à droite sur la nouvelle ligne créée

  1. indiquer dans "Local network" :
    1. soit "LAN subnet" pour un accès total réseau à réseau
    2. soit "Address" avec l'IP d'un serveur qui sera seul accessible à partir de l'autre réseau
  2. indiquer dans le deuxième champ de Local network la plage ou l'adresse IP NATée (attention à donner le même masque que le LAN)
  3. indiquer la plage du réseau LAN de l'autre réseau (Remote network)
  4. choisir le cryptage 3DES
  5. dans Hash algorithms laisser SHA1
  6. dans PFS key group chois "2 (1024 bits)"
  7. Sauver

Règle firewall

Si on doit autoriser les réseaux distants à se connecter au réseau local, créer une règle pour IPSec :

Firewall > Rules > onglet IPSec (n'apparait que si "Enable IPSec" a été coché)

Créer une règle source "any" vers destination "any" (donc tout par défaut)

Si personne n'est sensé se connecter de l'extérieur (seul les serveur local utilisent le VPN pour se connecter au réseau du client), il suffit de ne pas créer de règle à ce niveau. Ainsi, aucun trafic entant ne sera autorisé.

Dans

Status > IPSec

vérifier que le VPN est connecté. Sinon le relancer avec le bouton à droite

Ressources

https://doc.pfsense.org/index.php/Routing_internet_traffic_through_a_site-to-site_IPsec_tunnel

http://www.cyberciti.biz/faq/howto-site-to-site-ipsec-vpn-between-cisco-openbsd-router-pfsense/