ven. 05 mai 2023 15:11:27 CEST

VPN site à site IPSec

Après une trop longue pause dans les publications de ce blog, voici une nouvelle version de l'article VPN site à site IPSec.


Topologie type VPN site à site

Cette fois-ci, l'article est complet avec 3 configurations distinctes et un dépôt Git dédié : vpn-ipsec.

  • 3 routeurs Cisco CSR1000v avec le système IOS XE
  • 3 routeurs Debian GNU/Linux avec la suite FRRouting
  • Le VPN hétérogène avec un système différent à chaque extrémité du tunnel

Cette topologie est une figure académique classique qui ne date pas d'hier. Elle est cependant tout à fait d'actualité dans un contexte de "cloud hybride". La construction des différentes configurations est automatisée avec Ansible.

Côté Debian, j'ai pu évaluer le mode Infrastructure as Code en utilisant cloud.debian.org comme "source de tirage" de l'image .qcow2 de machine virtuelle.

Cette image est fournie avec Systemd-Networkd pour le pilotage des interfaces réseau. Une fois les 3 maquettes validées, on peut faire un bilan plutôt positif du passage à une solution totalement intégrée à systemd de la configuration réseau.

  • Les points positifs

    Même si le passage du fichier de configuration unique historique /etc/network/interfaces aux fichiers de descriptions du répertoire /etc/systemd/network/ n'est pas spontané, on s'y fait assez rapidement.

    Pour mimer le contexte des routeurs "constructeurs", j'ai choisi de configurer une interface Out of Band dans un contexte de routage dédié (VRF). C'est un franc succès. Sur le plan pédagogique, ça va permettre de sensibiliser les étudiants en insistant sur le fait que les contextes VRFs ne sont pas un "produit" de tel ou tel fournisseur d'équipements matériels.

  • Le point négatif

    La configuration d'un tunnel GRE via Systemd-Networkd n'est pas fonctionnelle dans un contexte hétérogène alors que la configuration manuelle avec la commande ip l'est.

    Il faut bien avouer que la mise en place d'un VPN GRE+IPSec avec deux systèmes différents en vis-à-vis ne doit pas être très courante. Au delà de la seule interface GRE, cette hétérogénéité impose une connaissance "plus fine" des configurations et des protocoles.

    Pour l'instant, j'éviterais de proposer un support de travaux pratiques de ce type aux étudiant•e•s.

Pour conclure, je suis très satisfait du déploiement de Debian en mode Infrastructure as Code et de l'utilisation des outils virt-customize et virt-resize ainsi que de la facilité de configuration de strongSwan.

La configuration IPSec de premier niveau se limite à deux fichiers : /etc/ipsec.secrets et /etc/ipsec.conf. Il faut noter que ces deux fichiers suffisent à la validation du contexte hétérogène. Voir : VPN IPSec site à site - la configuration IPSec. C'est un excellent point que l'on doit pondérer en fonction de la volumétrie de trafic qui doit transiter par le VPN.

Toute dernière remarque sur la forme, l'utilisation de HedgeDoc pour la publication de documents avec des pages multiples n'est pas idéale. Il me reste à tester le mode présentation.

Voilà, pour le moment ...


Posté par Philippe Latu | permalien | dans : formations, travaux_pratiques, système, virtualisation