J'ai apporté des modifications au fichier de configuration iptables dans /etc/iptables/filter
dans Ubuntu et je souhaite les recharger. J'ai lu la page de manuel et également cherché sur Google, mais je n'ai pas pu trouver l'information. Toute aide serait appréciée.
Le moyen le plus simple est de redémarrer (même si ci-dessous ne fonctionne pas, redémarrez, vérifiez si le changement a été effectué).
La deuxième solution la plus simple consiste à redémarrer les démons à l’aide des configurations iptables (google: restart daemon ubuntu).
exemples (dépend de votre configuration):
/etc/init.d/iptables restart
/etc/init.d/networking restart
/etc/init.d/firewall restart
Normalement, vos règles de pare-feu sont dans le fichier de configuration /etc/iptables.firewall.rules
Pour activer les règles définies dans votre fichier, vous devez les envoyer à iptables-restore
(vous pouvez utiliser un autre fichier si vous le souhaitez):
Sudo iptables-restore < /etc/iptables.firewall.rules
Et vous pouvez vérifier qu'ils sont activés avec:
Sudo iptables -L
Si vous souhaitez activer les mêmes règles à chaque démarrage de l'ordinateur, créez ce fichier:
Sudo nano /etc/network/if-pre-up.d/firewall
Avec ce contenu:
#!/bin/sh
/sbin/iptables-restore < /etc/iptables.firewall.rules
Et lui donner la permission d'exécution:
Sudo chmod +x /etc/network/if-pre-up.d/firewall
J'espère que ça vous aide =)
Exemple de fichier pour /etc/iptables.firewall.rules
:
*filter
# Allow all loopback (lo0) traffic and drop all traffic to 127/8 that doesn't use lo0
-A INPUT -i lo -j ACCEPT
-A INPUT -d 127.0.0.0/8 -j REJECT
# Accept all established inbound connections
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Allow all outbound traffic - you can modify this to only allow certain traffic
-A OUTPUT -j ACCEPT
# Allow HTTP and HTTPS connections from anywhere (the normal ports for websites and SSL).
-A INPUT -p tcp --dport 80 -j ACCEPT
-A INPUT -p tcp --dport 443 -j ACCEPT
# Allow SSH connections
#
# The -dport number should be the same port number you set in sshd_config
#
-A INPUT -p tcp -m state --state NEW --dport 22 -j ACCEPT
# Allow ping
-A INPUT -p icmp -j ACCEPT
# Log iptables denied calls
-A INPUT -m limit --limit 5/min -j LOG --log-prefix "iptables denied: " --log-level 7
# Drop all other inbound - default deny unless explicitly allowed policy
-A INPUT -j DROP
-A FORWARD -j DROP
COMMIT
Si vous avez exécuté vos règles, elles sont déjà en cours d'exécution et aucun rechargement n'est nécessaire. Dans le cas où vous avez un fichier de configuration mais il n'a pas encore été exécuté, le meilleur moyen que j'ai vu jusqu'à présent consiste à utiliser iptables-apply
(une extension iptables).
iptables-apply -t 60 your_rules_file
Cela appliquera les règles pendant 60 secondes (10 par défaut) et les rétablira si vous ne les confirmez pas. Cela vous épargnera au cas où vous seriez exclu du système à cause des règles (par exemple, si vous opérez via ssh).
Vous pouvez utiliser les éléments suivants en remplacement:
iptables-restore < your_rules_file; sleep 60; iptables-restore < clean_rules
Après avoir googlé un peu, voici ce que j’ai trouvé pour redémarrer iptables. . . Sudo /etc/init.d/firewall restart
Sudo ufw reload
Recharger le pare-feu et ses règles.
Si vous souhaitez recharger IPtables pour valider les modifications que vous venez d’apporter; vous pouvez également redémarrer Apache avec les lignes de commande ci-dessous:
/etc/init.d/Apache2 stop
/etc/init.d/Apache2 start
Ces commandes peuvent varier en fonction de votre version d'Ubuntu et des modifications éventuelles apportées précédemment.
J'espère que cela t'aides.
Pierre