Redirection de ports

Sur les hôtes physiques, lorsque l'on a une machine virtuelle sur un réseau privé et que l'on souhaite accéder à un service, il convient d'appliquer des règles de NAT (Network Address Translation) et de redirection de ports. Lorsque l'hyperviseur recevra une requête sur un port qui a du NAT en place, celui-ci va se charger de transmettre l'information directement à la machine virtuelle concernée. C'est également par ce biais que les machines virtuelles ont accès à internet. À la manière d'une box, le serveur physique va transmettre les requêtes réseau qui ne lui sont pas adressées sur sa passerelle par défaut.

Mise en place

Bridge pour les VM

la première étape consiste à avoir une interface réseau dédié au réseau privé. Celle-ci doit être de la forme vmbrX pour être reconnue par proxmox. Comme nous l'avons vu dans la page Installation, les configurations réseau sont au niveau du /etc/rc.local. On peut donc y ajouter les instructions suivantes:

#Interface de bridge privée pour les VM
brctl addbr vmbr1 #ajout d'une interface virtuelle
ip link set vmbr1 up #mise en ligne
ip addr add 10.0.42.1/24 dev vmbr1 #assignation d'une IP
echo 1 > /proc/sys/net/ipv4/conf/vmbr1/proxy_arp #Activation du proxy arp qui permet à 2 machines du réseau privé de communiquer entre elles
iptables -t nat -A POSTROUTING -s '10.0.42.0/24' -o vmbr0 -j MASQUERADE #routage des requêtes vers la patte internet 


La redirection de port s'effectue avec des règles iptables:

iptables -t nat -A PREROUTING -i vmbr0 -p tcp --dport 80 -j DNAT --to-destination 10.0.42.2:80

La règle ci-dessus redirige le trafic qui arrive de l'interface vmbr0 sur le port 80 vers la VM 10.0.42.2 sur le port 80

  • infrastructure/redirection_de_port.txt
  • Dernière modification: 2019/05/13 15:42
  • (modification externe)