Wie setze ich Ubuntu 12.04 iptables auf die Standardeinstellungen zurück, ohne dass ich mich selbst aussperre?

28

Kann jemand die Befehle zum vollständigen Zurücksetzen der iptables (Firewall) für Ubuntu 12.04 auf die werkseitigen Standardeinstellungen bereitstellen? Nach meinem Verständnis würde eine falsche Vorgehensweise dazu führen, dass die Linux-Box gesperrt wird.

Honig Dachs
quelle

Antworten:

37

Setzen Sie die Standardrichtlinie für die iptables auf ACCEPT:

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

Dann lösche die Regeln:

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

Beachten Sie, dass dies keine alternativen Tabellen, NAT-Tabellen, PRE / POST-Routingtabellen usw. betrifft.

Wing Tang Wong
quelle
1
Vielen Dank @Wing Tang Wong. Wird die Firewall auf diese Weise vollständig in den Ubuntu-Standardzustand zurückversetzt? Was ist, wenn ich versehentlich die anderen Tabellen geändert habe? Wie kann ich alle Tabellen auf Standard zurücksetzen? Vielen Dank!
Honigdachs
Sie können iptables-save und iptables-restore verwenden. Grundsätzlich speichern Sie Ihre iptables-Konfiguration in einer Datei. Stellen Sie sicher, dass die drei primären ACCEPT sind, und löschen Sie dann die anderen Tabellentypen aus der Sicherungsdatei. Importieren Sie es dann mit iptables-restore wieder in das laufende System. Das sollte dich in einen sauberen Zustand bringen. Dies setzt voraus, dass Sie die Box nicht neu starten können oder wollen.
Wing Tang Wong
1
Erwischt. Frage: Was ist, wenn ich die Box neu starte? Was wird passieren? Vielen Dank!
Honigdachs
Wenn Sie alle iptable-Regeln deaktivieren, die bei einem Neustart ausgelöst werden, werden standardmäßig nur die drei Tabellen im ACCEPT-Modus als Standardregeln für eine frisch gebootete Box verwendet. Die anderen Tische würden verschwinden. Unter der Annahme, dass die Regeln, mit denen Sie sich zuvor befasst haben, manuell erstellt wurden, werden sie durch einen Neustart gelöscht. Wenn sie jedoch auf diese Weise erstellt wurden, müssen Sie die Regeln finden, die beim Start installiert werden, deaktivieren, auskommentieren und entfernen.
Wing Tang Wong
Die angegebene Lösung würde nur funktionieren, wenn Sie die persistenten iptables nicht installiert hätten. Wenn Sie dies getan hätten, müssten Sie den folgenden Befehl ausführen:sudo apt-get remove iptables-persistent
IsraGab
16

Dieses Ding scheint in Ordnung zu sein. 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
quelle
1
Mann, du weißt nicht, wie dankbar ich für deinen Beitrag bin !!!! Nach einigen Stunden schmerzhaften Debuggens habe ich endlich meine Iptables auf Standard zurückgesetzt und mein Problem ist nun behoben! Mein Problem war, dass ich einen NodeJS-Server hatte, der auf localhost: 80 und auch auf myip: 80 einwandfrei funktionierte, aber ich hatte noch einen NodeJS-Server, der auf localhost: 4000 funktionierte, aber nicht auf myip: 4000, und ich war sehr frustriert, weil Dies geschah nach der Installation des Mail-Servers auf meinem Raspberri Pi und dies geschah plötzlich. Wieder Mann, du hast ein Bier von mir! Vielen Dank!
Kombinieren Sie den
3

Wing wird Ihnen helfen, wenn etwas schief geht iptables. Wenn Sie alles zurücksetzen wollen, einschließlich der alternativen Tabellen NAT, PRE/POST ROUTINGverwenden Sie dieses Skript:

#!/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

Quelle: Internetverbindungsfreigabe - Ubuntu-Hilfe

Sahil Arora
quelle