Comment réinitialiser les iptables d'Ubuntu 12.04 par défaut sans se verrouiller?

28

Quelqu'un pourrait-il bien vouloir fournir les commandes pour réinitialiser complètement les iptables (pare-feu) pour Ubuntu 12.04 à son réglage par défaut "usine"? D'après ce que je comprends, une mauvaise action entraînerait le verrouillage de la boîte Linux?

Honey Badger
la source

Réponses:

37

Définissez la stratégie par défaut sur les iptables sur ACCEPTER:

iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

Rincez ensuite les règles:

iptables -F INPUT
iptables -F OUTPUT
iptables -F FORWARD

Notez que cela n'affectera pas les tables alternatives, les tables NAT, les tables de routage PRE / POST, etc.

Wing Tang Wong
la source
1
Merci @Wing Tang Wong. Est-ce que ce qui précède ramènera complètement le pare-feu à son état par défaut Ubuntu? Que faire si j'ai accidentellement changé les autres tables? Comment restaurer toutes les tables par défaut? Merci!
Honey Badger
Vous pouvez utiliser iptables-save et iptables-restore. Fondamentalement, videz votre configuration iptables dans un fichier. Assurez-vous que les trois principaux sont ACCEPT par défaut, puis supprimez les autres types de table du fichier de vidage. Ensuite, réimportez-le dans le système en cours d'exécution avec iptables-restore. Cela devrait vous mettre dans un état propre. Cela suppose que vous ne pouvez pas ou ne souhaitez pas redémarrer la box.
Wing Tang Wong
1
Je t'ai eu. Question: et si je redémarre la box? Que va-t-il se passer? Merci!
Honey Badger
Si vous désactivez toutes les règles iptables qui démarreraient lors d'un redémarrage, les règles par défaut pour une boîte fraîchement démarrée seraient par défaut les trois tables en mode ACCEPT. Les autres tables disparaîtraient. En supposant que les règles que vous traitez auparavant étaient effectuées manuellement, un redémarrage les effacerait. Cependant, s'ils se présentent de cette façon, vous devrez trouver et désactiver / commenter / supprimer les règles installées au démarrage.
Wing Tang Wong
La solution donnée ne fonctionnerait que si vous n'avez pas installé les iptables persistants Si vous l'avez fait, vous devriez avoir besoin de faire la commande suivante:sudo apt-get remove iptables-persistent
IsraGab
16

Cette chose semble être ok .. http://insanelabs.com/linux/linux-reset-iptables-firewall-rules/

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
Aravinda
la source
1
Mec, tu ne sais pas combien je suis reconnaissant pour ton message !!!! Après plusieurs heures de débogage douloureux, j'ai finalement changé mes iptables par défaut et mon problème est maintenant résolu! Mon problème était que j'avais un serveur nodejs qui fonctionnait très bien sur localhost: 80 et aussi myip: 80 mais j'avais aussi un autre serveur nodejs qui fonctionnait sur localhost: 4000 mais ne fonctionnait pas sur myip: 4000 et j'étais très frustré parce que cela s'est produit après l'installation du serveur de messagerie sur mon raspberri pi et cela s'est produit tout à coup. Encore une fois mec, tu as une bière de moi! Merci!
Combinez le
3

La réponse de Wing sera à votre secours lorsque les choses tournent mal iptables. Si vous souhaitez réinitialiser tout, y compris d' autres tableaux, NAT, PRE/POST ROUTING, utilisez ce script:

#!/bin/sh
#
# rc.flush-iptables - Resets iptables to default values.
#
# Copyright (C) 2001 Oskar Andreasson <bluefluxATkoffeinDOTnet>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; version 2 of the License.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program or from the site that you downloaded it
# from; if not, write to the Free Software Foundation, Inc., 59 Temple
# Place, Suite 330, Boston, MA 02111-1307 USA
#
# Configurations
#
IPTABLES="/sbin/iptables"
#
# reset the default policies in the filter table.
#
$IPTABLES -P INPUT ACCEPT
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT
#
# reset the default policies in the nat table.
#
$IPTABLES -t nat -P PREROUTING ACCEPT
$IPTABLES -t nat -P POSTROUTING ACCEPT
$IPTABLES -t nat -P OUTPUT ACCEPT
#
# reset the default policies in the mangle table.
#
$IPTABLES -t mangle -P PREROUTING ACCEPT
$IPTABLES -t mangle -P POSTROUTING ACCEPT
$IPTABLES -t mangle -P INPUT ACCEPT
$IPTABLES -t mangle -P OUTPUT ACCEPT
$IPTABLES -t mangle -P FORWARD ACCEPT
#
# flush all the rules in the filter and nat tables.
#
$IPTABLES -F
$IPTABLES -t nat -F
$IPTABLES -t mangle -F
#
# erase all chains that's not default in filter and nat table.
#
$IPTABLES -X
$IPTABLES -t nat -X
$IPTABLES -t mangle -X

Source: Partage de connexion Internet - Aide Ubuntu

Sahil Arora
la source