iptables-restore konnte meine Regeln nicht laden

10

Ich habe schon seit einiger Zeit gesucht, aber nichts löst mein Problem. Ich richte einen Mailserver ein, aber beim Schreiben in die iptables wird folgende Fehlermeldung angezeigt:

iptables-restore: Zeile 2 fehlgeschlagen.

Ich versuche, die folgenden /etc/iptables.test.rules zu verwenden:

# Allows SMTP access
-A INPUT -p tcp --dport 25 -j ACCEPT

# Allows pop and pops connections 
-A INPUT -p tcp --dport 110 -j ACCEPT
-A INPUT -p tcp --dport 995 -j ACCEPT

# Allows imap and imaps connections 
-A INPUT -p tcp --dport 143 -j ACCEPT
-A INPUT -p tcp --dport 993 -j ACCEPT

Danach gebe ich den folgenden Befehl aus:

sudo iptables-restore < /etc/iptables.test.rules

Ich bekomme jedoch Folgendes zurück:

iptables-restore: line 2 failed.

Ich weiß nicht, wo das Problem liegt. Kann jemand klarstellen?

Ich benutze Ubuntu 10.10 LTS

Søren Lorentzen
quelle

Antworten:

13

Dies liegt daran, dass diese Datei nicht das erwartete Format hat. Sie sollten Ihre Regeln beim ersten Mal manuell hinzufügen und dann verwenden iptables-save, um eine Datei im erwarteten Format abzurufen.

Es ist jedoch recht einfach, das von iptables-restore erwartete Format zu "imitieren".

Fügen Sie eine Zeile ganz *filteroben in der Datei hinzu.

Fügen Sie eine Zeile mit ganz COMMITunten hinzu.

Am Ende sehen Sie also so aus:

*filter    

# Allows SMTP access
-A INPUT -p tcp --dport 25 -j ACCEPT

# Allows pop and pops connections 
-A INPUT -p tcp --dport 110 -j ACCEPT
-A INPUT -p tcp --dport 995 -j ACCEPT

# Allows imap and imaps connections 
-A INPUT -p tcp --dport 143 -j ACCEPT
-A INPUT -p tcp --dport 993 -j ACCEPT

COMMIT

Es gibt noch ein paar andere Schnipsel, die es haben sollte, aber das sollte funktionieren. Anschließend können Sie iptables-save >filenamedie vollständig korrekt formatierte Sicherungsdatei abrufen filename.

Beachten Sie, dass wenn Sie iptables-saveIhre Kommentare in der Datei verwenden, diese verloren gehen (sie ersetzt die gesamte Datei durch eine eigene, ähnlich formatierte).

Cäsium
quelle
0

Lauf:

iptables-save > /etc/sysconfig/iptables

Starten Sie dann Ihren iptablesDienst / starten Sie ihn neu

Younes
quelle