web-dev-qa-db-fra.com

Comment sauvegarder les règles des iptables?

Je crée les règles pour iptables. Mais lorsque je redémarre l'ordinateur, les règles ne fonctionnent pas! Comment sauvegarder les règles sur Ubuntu?


Le problème était résolu!

faire:

Après l’écriture des commandes iptables, faites:

 1. Sudo su
 2. iptables-save > /etc/iptables.rules
 3. In /etc/network/if-pre-up.d/iptables,put:

 #!/bin/sh
 iptables-restore < /etc/iptables.rules
 exit 0

 4. After, in /etc/network/if-post-down.d/iptables,put:
 #!/bin/sh
 iptables-save -c > /etc/iptables.rules
 if [ -f /etc/iptables.rules ]; then
 iptables-restore < /etc/iptables.rules
 fi
 exit 0
 5. After, give permission to the scripts:
 Sudo chmod +x /etc/network/if-post-down.d/iptables
 Sudo chmod +x /etc/network/if-pre-up.d/iptables

Plus d'informations: https://help.ubuntu.com/community/IptablesHowTo#Saving_iptables Bonne chance!

92
Gustavo

Le moyen le plus simple est d’utiliser iptables-persistent.

Installez iptables-persistent:

Sudo apt-get install iptables-persistent

Une fois installé, vous pouvez sauvegarder/recharger les règles iptables à tout moment:

Sudo /etc/init.d/iptables-persistent save 
Sudo /etc/init.d/iptables-persistent reload

Serveur Ubuntu 16.04

L’installation décrite ci-dessus fonctionne sans problème, mais les deux commandes de sauvegarde et de rechargement décrites ci-dessus ne semblent pas fonctionner avec un serveur 16.04. Les commandes suivantes fonctionnent avec cette version:

Sudo netfilter-persistent save
Sudo netfilter-persistent reload
136
user213088

La méthode générique de sauvegarde des règles iptables consiste à utiliser la commande iptables-save, qui écrit sur stdout.

iptables-save > /etc/network/iptables.rules

La sortie créée par iptables-save peut alors être lue sur stdin par iptables-restore. Si vous êtes sur un serveur, sans NetworkManager, une approche commune consiste à utiliser une commande de pré-installation dans/etc/network/interfaces.

iface eth0 inet static
        ....
        pre-up iptables-restore < /etc/network/iptables.rules

Si vous utilisez NetworkManager, il devrait être possible d'exécuter la même commande à partir d'un script créé sous /etc/NetworkManager/dispatcher.d/. Dans le Documentation de la communauté - Howto iptables , voir Configuration au démarrage de NetworkManager pour plus d'informations.

Notez que les commandes iptables, iptables-save et iptables-restore sont uniquement IPv4. Pour le trafic IPv6, les commandes équivalentes sont ip6tables, ip6tables-save et ip6tables-restore.

42
andol