Je cherche à faire l'équivalent de cette règle iptables dans firewalld
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Comment puis-je faire cela?
Je cherche à faire l'équivalent de cette règle iptables dans firewalld
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
Comment puis-je faire cela?
Pour configurer le masquage sur la zone externe, tapez :
# firewall-cmd --zone=external --add-masquerade
externe : À utiliser sur les réseaux externes avec masquage activé, en particulier pour les routeurs. Vous ne faites pas confiance aux autres ordinateurs du réseau pour ne pas nuire à votre ordinateur. Seules les connexions entrantes sélectionnées sont acceptées.
interne : À utiliser sur les réseaux internes. Vous faites principalement confiance aux autres ordinateurs du réseau pour ne pas nuire à votre ordinateur. Seules les connexions entrantes sélectionnées sont acceptées.
Pour référence :
Il convient de souligner fermement que la réponse acceptée est incorrecte en ce qu'elle montre comment créer une configuration de masquerade/NAT, mais seulement si vous voulez que tout le trafic en sortie de eth0
soit masqué. Il n'y a aucun moyen de masquerader le trafic provenant d'un sous-réseau uniquement via la simple directive --add-masquerade
; des règles directes (comme expliqué dans la réponse ci-dessus) doivent être utilisées.
Vous n'utilisez pas directement des règles de ce genre. Vous devez simplement mettre votre interface (eth0) dans la zone externe, qui est déjà préconfigurée dans RHEL7/CentOS7 et a le masquerading activé, ou vous pouvez activer le masquerading sur la zone dans laquelle se trouve votre interface. Par défaut, c'est public. Donc la réponse correcte serait soit :
# firewall-cmd --zone=public --add-masquerade
ou
# firewall-cmd --change-zone=eth0 --zone=external
C'est vraiment tout ce que vous avez besoin de faire. Pour activer le NAT seulement pour une sous-réseau ou une plage particulière, vous avez besoin d'une Règle Rich ou Règle Directe. C'est un peu plus complexe. Vous pouvez aussi simplement refuser les paquets pour les autres, ce qui semble également être une option.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.