2015-06-13 8 views
17

Ich habe VPS Debian 8 jessie x64 stabile Version. Nach der Installation versuche ich iptables zu konfigurieren (wie in debian 7).debian 8 iptables-persistent

apt-get install iptables-persistent 

erfolgreich ausgeführt, einige Pakete wurden installiert. aber wenn im

versucht
service iptables-persistent start 

im erhalte eine Fehlermeldung, die besagt, Thar service iptables-persistent unerkannt

halp!

+1

Keine Programmierfrage, versuchen Sie http://superuser.com/questions/tagged/linux – tink

Antwort

41

Persist IP Tabellen Debian/Ubuntu

Um Änderungen bestehen bleiben Sie Ihre Firewall-Regeln erstellen, gehen Sie wie folgt vor.

Installieren iptables-persistent:

sudo apt-get install -y iptables-persistent 

Änderungen vornehmen Sie Ihre Firewall-Regeln wollen, zB

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080 

Dann

sudo dpkg-reconfigure -y iptables-persistent 

Die Regeln laufen sollte nach einem Neustart bestehen bleiben jetzt.

Extra Info

Der dpkg-recon nur bewirkt, dass iptables-persistent wieder tun, was es bei der Installation der Fall ist, die die aktuelle iptables in einer Datei zu speichern ist mit einem Befehl genau wie:

iptables-save >/etc/iptables/rules.v4 
ip6tables-save >/etc/iptables/rules.v6 

Das Paket iptables-persistent lässt das Betriebssystem beim Neustart wie folgt laufen.

iptables-restore < /etc/iptables/rules.v4 
ip6tables-restore < /etc/iptables/rules.v6 

this helps:)

+0

Neugierige Abstimmung Downs. Ist es nicht Thema oder etwas? Wenn ja, würde es sich nicht irgendwo zum Thema bewegen, wäre das eine bessere Idee? Ich dachte, ich wäre hilfreich:/ – tobuslieven

+3

Ich habe es gewählt, um Offset;) Ich bin kein Iptables-Experte, aber das sieht hilfreich genug aus. – ultracrepidarian

+0

Option -y arbeitet nicht an Debian 7.8 unter 'sudo dpkg-reconfigure -y iptables-persistent' –

9

Ich stolperte über OPs Problem, auch (und seine Frage dann); fand die Lösung bei der Betrachtung der . Die neue Schnittstelle scheint netfilter-persistent, dh verwenden z.B .:

# invoke-rc.d netfilter-persistent save 

Mindestens das ist, was für mich gearbeitet, HTH ...

0

Finaly das Problem in firewalld Service. Dies ist eine Art neuer Firewall-Daemon. Wie ich denke, es widerspricht mit Netfilter (iptables) -persistent. So lief ich

chkconfig firewalld off 

und jetzt funktioniert alles gut. Disclaimer :) Dies ist keine Best Practice, es ist nur Workaround. Habe keine Zeit um Feuer zu lernen.

3

Update 8/7/16: Es hängt von der Distribution ab. Der folgende Kommentarinhalt wurde eingegeben, ohne zu wissen, ob die OP-Distribution ein netfilter-persistentes Paket aufweist. Entschuldigen Sie. Meine Laptop-Distribution (Mint) enthält nicht das netfilter-persistente Paket, während meine Server-Distributionen (Ubuntu 15+) dies tun.

Ursprüngliche Antwort: Wie Oliver richtig sagt, ersetzt netfilter-persistent iptables-persistent in Ubuntu. Was mit Ubuntu gearbeitet 15.04 war wie folgt:

es installieren, dann stellen Sie sicher, dass es als Dienst ausgeführt wird: service --status-all | grep netfilter-persistent

Wenn nicht als Dienst ausgeführt wird, starten Sie es einmal für alle Zeiten mit: invoke-rc.d netfilter-persistent start

Dann müssen Sie ein Skript irgendwo platzieren, das ausgeführt wird, wenn das Netzwerk oder seine Schnittstellen stoppen. Der wichtige Skriptinhalt ist einfach: invoke-rc.d netfilter-persistent save

Ich legte das Skript in /etc/network/if-post-down.d Verzeichnis. Vergiss nicht, chmod als ausführbar zu deklarieren. Wenn Stromausfälle wahrscheinlich sind, können Sie einen Cron-Eintrag für den Sicherungsbefehl erstellen.

+0

Klingt, als würde er sagen, Netfilter sei die Basis und iptables-persistent werde davon ausgehen. Sehr unklar. Das ist wie in der Kremlologie, Ubuntu-Probleme, eine andere Ebene über den Problemen der Ersten Welt. – tobuslieven