Grandes lignes

Dans les grandes lignes, je veux construire un ‘homelab’ pour pouvoir réaliser des tests réseaux/machines/appli etc.

Pour cela je met en place une petite infrastructure : routeur, switch(s), machines ‘bare metal’, hyperviseurs.

Voici ce que je veux réaliser :

Example image

En vert le réseau ‘homelab’

Je veux donc :

  • avoir accès à au moins un noeud Proxmox depuis mon LAN ‘maison’
  • avoir une VM qui sert de routeur sur ce noeud Proxmox (accès depuis LAN ‘maison’ non essentiel car possibilité de passer par VPN)
  • avoir mes autres noeuds Proxmox sous cette VM-routeur
  • avoir toutes les VMs / container créés plus tard avec cette VM comme routeur
  • avoir mon premier noeud Proxmox dans le sous-réseau des autres noeuds Proxmox ? Donc sous le routeur aussi ? -> il faut une deuxième adresse IP (LAN homelab)

Ma contrainte est que mon noeud Proxmox initial n’a que 2 cartes réseaux

Materiel necessaire

  • Une machine faisant tourner Proxmox
  • l’ISO de OPNsense disponible dans Proxmox
  • une machine avec un desktop pour l’accès à une interface graphique OPNsense -> le top : un ordi portable disposant d’un port ethernet et un cable réseau

Prérequis

On part du principe que vous pouvez vous connecter à l’interface graphique de votre machine proxmox et que vous savez créer/installer une VM sous Proxmox.

Au niveau réseau, il est indispensable de comprendre les concepts suivants :

  • WAN et LAN
  • Routeur, Firewall
  • Switch
  • eventuellement : VLAN

Avant d’installer OPNsense il faut s’occuper des cartes réseau. Le travail sera différent selon le nombre d’interfaces réseaux disponibles :

  • 1 seule carte : il faudra passer par une construction de VLAN.
  • 2 interfaces : il faudra paramétrer une interface en WAN (i.e. Internet) et une en LAN (Local Area Network derrière le routeur)
  • 3 interfaces : on peut garder une interface de management pour Proxmox sans conflits.
  • 4 interfaces ou plus : on peut eventuellement faire un bridge entre l’interface ‘LAN’ et les interfaces restantes. Ces interfaces se comporteront alors comme un switch.

Ma machine physique n’a que deux interfaces. Je dois donc paramétrer la partie ‘Network’ dans Proxmox.

Réseau Proxmox

Par défaut la carte réseau connectée aura son port mappé au bridge vmbr0.

Chez moi l’interface réseau enp3s0 est mappée à vmbr0 et enp2s0 n’est mappée à rien.

Je crée donc un bridge Linux vmbr1 pour enp2s0. Cela me servira d’interface pour le LAN ‘homelab’.

Il ne faut pas hésiter à rajouter des commentaires sur ces bridges afin de s’y retrouver plus tard (au moins “WAN” et “LAN”). Etiqueter les ports physiques de la machine est également une bonne idée.

Création de la VM

La création de la VM est plutôt standard. J’ai mis 1 cpu et 2Go de RAM mais c’est bien peu pour l’installation. Je conseille donc au moins 2vcpu et 4Go de RAM. J’ai un disque de 20Go. Le controlleur disque est VirtIO et les interfaces réseaux aussi.

A la création de la VM on ne peut mettre qu’une interface réseau. Par défaut, OPNsense utilise le premier port pour le LAN et le second pour le WAN. Voici la marche à suivre :

  1. Dans le panneau de création de VM, mettre ‘vmbr1’ pour le réseau (le bridge qui correspond au LAN)
  2. Au moment de confirmer, la case ‘Démarrage après création’ doit être décochée
  3. Dans le paramètrage de la VM, partie Matériel, il faut ajouter une carte réseau. Y mettre ‘vmbr0’ (le bridge WAN, soit la connexion existante dans Proxmox)

Démarrage de la VM

Lors du démarrage de la VM, on peut passer à une configuration manuelle si besoin. Personnellement, étant donné que les interfaces étaient prêtes et dans le bon ordre, j’ai laissé faire la configuration par défaut. Une fois la configuration live réalisée, il est possible soit de se connecter (login root), soit d’installer (login installer). Je suis passé root pour modifier l’adresse IP côté LAN en 10.0.0.1 (option 2) avec un CIDR à 16.

Une fois cette confuration réalisée, il est temps de vérifier ! En branchant un PC au port LAN de mon host proxmox, j’ai donc :

  • une adresse IP assignée
  • un accès à l’interface graphique de OPNSense
  • un accès internet NB: Cela fonctionne également en créant sur Proxmox une VM avec un desktop et le bridge vmbr1 (bridge LAN)

On peut alors finir la configuration sur la webui.

Installation

Une fois la configuration terminée (et le mdp root modifié !), il est temps d’installer OPNSense sur la VM. Pour cela, dans la console, il faut se connecter avec le user installer L’installation m’a pris une demie-heure mais ma machine était sous-dimensionnée.

Suite au reboot, il faudra re-vérifier avec un PC / une VM ‘graphique’ que tout fonctionne correctement.

Bilan

On a donc :

  • une VM routeur installée avec OPNSense sous Proxmox
  • d’autres VM/CT qui sont bien dans le sous-réseau d’OPNsense tant qu’elles sont sur le bridge LAN
  • un pc qui est bien dans le sous-réseau d’OPNSense tant qu’il est branché sur le bon port physique

La suite

Il nous restera à paramétrer OPNSense afin que les autres hosts Proxmox puissent communiquer avec ce premier host afin de faire un cluster :)

Références

Les références utilisées pour cet article sont :

La documentation OPNSense :