J'ai un problème avec iptables sur Ubuntu 18.04 avant que je l'utilise avec Centos 7 et Red Hat et je peux simplement redémarrer avec
systemctl restart iptables
mais sur Ubuntu cela ne fonctionne pas. Je n'ai pas trouvé iptable sous init.d
non plus.
Quelqu'un peut-il m'aider, comment puis-je le redémarrer ou le recharger sur Ubuntu 18.04?
Si vous souhaitez que cela fonctionne de la même manière que RedHat/Fedora, dans Ubuntu 18.04, vous voulez probablement:
Sudo apt install iptables-persistent netfilter-persistent
Puis éditez les règles dans /etc/iptables/rules.v[46]
Autres commandes qui pourraient être utiles:
netfilter-persistent save
netfilter-persistent start
iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6
iptables-restore < /etc/iptables/rules.v4
ip6tables-restore < /etc/iptables/rules.v6
Les deux packages sont similaires mais offrent des fonctionnalités légèrement différentes. Si vous n'installez que iptables-persistent
, vous n'obtiendrez pas le fichier de définition de service pour un traitement correct avec systemd, par exemple /lib/systemd/system/netfilter-persistent.service
Si vous n'installez que netfilter-persistent
, vous constaterez que les règles ne sont pas correctement appliquées au démarrage, comme indiqué dans le fichier README.
netfilter-persistent and its plugins
------------------------------------
netfilter-persistent does no work on its own. You need the accompanying
plugins (for example, iptables-persistent) to load and save filter rules.
However, commands are run from netfilter-persistent. For example, to save
all filter rules:
netfilter-persistent save
or to load them:
netfilter-persistent start
For more details, see `man netfilter-persistent`.
The system service will try to load rules at startup if enabled, but by
default it will not flush rules at shutdown. This behaviour can be changed
by editing /etc/default/netfilter-persistent.
-- Jonathan Wiltshire <[email protected]> Sat, 02 Jan 2016 00:00:00 +0000
Dans les distributions plus récentes, vous avez normalement une interface pour configurer et gérer le pare-feu. Les plus populaires de nos jours sont ufw
et firewalld
et peut-être shorewall
name__. Ces interfaces s’occupent également d’ajouter les règles dans iptables
et le script iptables
peut être ignoré ou mieux, devrait être omis, car les interfaces ne prendront pas directement en charge les modifications que vous avez effectuées avec la commande iptables
name__.
Pour Ubuntu 18.04, il semble que firewalld
soit devenu la valeur par défaut où ufw
est installé mais inactif.
root@localhost:~# firewall-cmd --state
running
root@localhost:~# ufw status
Status: inactive
Ainsi, plutôt que de créer vos propres règles de conformité iptables
name__, vous devez utiliser ces interfaces pour créer votre configuration de pare-feu.
Je ne connais pas ufw
mais vous trouverez certainement des informations ici avec askubuntu ou ailleurs sur Internet.firewalld
est fourni avec une interface graphique (firewall-config
) et un outil de ligne de commande firewall-cmd
.
Avec firewalld
vous avez la possibilité d’ajouter des règles sans l’appliquer maintenant (permanent) et de l’appliquer uniquement après le rechargement du pare-feu. Ou vous pouvez les ajouter à votre configuration runtime, les tester et les ajouter ensuite à votre configuration permanente.
Pour recharger, par exemple une configuration permanente nouvellement ajoutée à vos règles en cours d'exécution, vous devez entrer la commande comme suit ou effectuer les clics correspondants dans l'interface graphique.
firewall-cmd --reload
Cela peut paraître un peu plus compliqué au premier abord, puisque firewalld
suit zones et un concept chains. Mais il s'intègre bien avec NetworkManager, fournit une interface graphique ...
Un bon point de départ pour se familiariser avec cela est ici .
Vous pouvez vérifier le contenu du paquet avec:
dpkg -L iptables-persistent
Et ensuite, vous constaterez que la commande suivante est correcte:
/etc/init.d/netfilter-persistent restart