auto lo
iface lo inet loopback
iface enp0s25 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.168.0.100
netmask 255.255.255.0
gateway 192.168.0.1
bridge-ports enp0s25
bridge-stp off
bridge-fd 0
auto vmbr4
iface vmbr4 inet static
address 172.16.2.1
netmask 255.255.255.0
bridge-ports none
bridge-stp off
bridge-fd 0
post-up iptables -t nat -A POSTROUTING -s '172.16.2.0/24' -o vmbr0 -j MASQUERADE
post-down iptables -t nat -D POSTROUTING -s '172.16.2.0/24' -o vmbr0 -j MASQUERADE
resolv.conf du proxmox
8.8.8.8
Regles iptables
#Flush
iptables -F
iptables -t nat -F
iptables -X
#police par defaut
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
iptables -I INPUT -i lo -j ACCEPT
iptables -I OUTPUT -o lo -j ACCEPT
#ICMP
iptables -A INPUT -i vmbr0 -p icmp -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p icmp -j ACCEPT
#ssh
iptables -A INPUT -i vmbr0 -p tcp --dport 22 -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p tcp --sport 22 -m state --state ESTABLISHED,RELATED -j ACCEPT
#update
iptables -A OUTPUT -o vmbr0 -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -i vmbr0 -p tcp --sport 443 -m state --state ESTABLISHED,RELATED -j ACCEPT
# dns
iptables -A OUTPUT -o vmbr0 -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -i vmbr0 -p udp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i vmbr0 -p tcp --sport 53 -m state --state ESTABLISHED,RELATED -j ACCEPT
# proxmox panel
iptables -A INPUT -i vmbr0 -p tcp --dport 8006 -j ACCEPT
iptables -A OUTPUT -o vmbr0 -p tcp --sport 8006 -m state --state ESTABLISHED,RELATED -j ACCEPT
route du proxmox
default via 192.168.0.1 dev vmbr0 onlink
172.16.2.0/24 dev vmbr4 proto kernel scope link src 172.16.2.1
192.168.0.0/24 dev vmbr0 proto kernel scope link src 192.168.0.100
J’ai d’abord autoriser icmp pour ping de VM vers Proxmox en ajoutant ceci
iptables -A INPUT -i vmbr4 -p icmp -j ACCEPT
iptables -A OUTPUT -o vmbr4 -p icmp -j ACCEPT
Ensuite j’ai tenter d’autoriser le DNS mais ça na pas marché normalemnt si le nat est autorisé j’ai pas besoin de faire cela mais j’ai essayé pour voir
Avant de commencer à faire des règles iptables, il serait bon de voir si ça fonctionne sans rien. J’entends par là sans filtrage, simplement avec cette règle:
## Allow VM to WAN
iptables -t nat -A POSTROUTING -o vmbr0 -s 172.16.2.0/24 ! -d 172.16.2.0/24 -j MASQUERADE
Autre chose, est-ce que l’ipforwarding est activé? Pour le savoir:
Ensuite, est-ce que sur la VM tu as bien mis l’interface vmbr4 et non vmbr0?
Je trouve ton adresse locale, 172.16.2.0/24, bien crado. Tu fais soit du B (/16) soit du C (/24), mais les hybridations, c’est moches.
je n’ai juste pas mis l’option !d mais ça fonctionne j’arrive à pinger google.
L’ip forwarding est activé. j’ai modifié sysctl.conf pour qu’il soit permanent
Oui je veux bien que ça soit crado mais les notions de classes c’est toi qui les gère comme tu veut mais oui on pourrait faire plus propre mais ça changera pas le problème
@ mattotop
oui pas de gateway c’est les conf que j’ai trouvé sur d’autres tuto proxmox que j’ai regardé.
Une piste pourrait se trouver dans le fichier de configuration d’iptables. La suppression de toutes les règles précédentes supprime probablement celle du post-up.
J’avais déja testé sans post up mais ca n’avait pas rien changé par contre en rajoutant ces règles
iptables -A FORWARD -i vmbr4 -o vmbr0 -j ACCEPT
iptables -A FORWARD -i vmbr0 -o vmbr4 -m state --state RELATED,ESTABLISHED -j ACCEPT
Ca marche il semblerait lorsqu’on nat et qu’il y une politique de DROP on fait du FORWARD, j’essaie encore de comprendre ca me parait encore abstrait. Pourquoi faire du forward alors que si je fais du nat c’est comme l’hote qui fait la requete j’ai encore du mal