Ich möchte die folgenden Einstellungen für iptables
CentOS 7 beim Start des Betriebssystems mithilfe eines Bash-Skripts laden.
Wie kann ich das machen?
#!/bin/bash
iptables -I OUTPUT -d 0.0.0.0/0 -j ACCEPT
iptables -I FORWARD -d 0.0.0.0/0 -j ACCEPT
iptables -I INPUT -d 0.0.0.0/0 -j ACCEPT
iptables -t nat -I PREROUTING -d 0.0.0.0/0 -p tcp --dport 222 -j DNAT --to-destination 10.1.0.9:22
NOTIZ:Ich weiß, dass der Standard-Firewalldienst von CentOS 7 ist firewall-cmd
, und ich möchte ihn nicht entfernen ( iptables
stattdessen den Dienst verwenden). Ich versuche diesen Ansatz, weil er firewall-cmd
für die obigen Einstellungen anscheinend nicht funktioniert (siehe ThreadFirewall-Eingabeaufforderung – Add-Forward-Port funktioniert nichtfür weitere Informationen).
Danke! =D
Antwort1
Zuerst verwenden Sie
iptables-save >/wherever/iptables.save
Dann
iptables-restore </wherever/iptables.save
Dann müssen Sie wissen, ob Ihr Linux systemd oder init ist
Wenn es systemd ist, können Sie einen gefälschten Dienst zum Laden der Datei erstellen.
Du könntest es versuchen
chkconfig iptables on
Dann müssen Sie die vorhandene gespeicherte iptables-Datei suchen und ersetzen.
ich würde versuchen
finden / -iname "iptables.save"
und sehen Sie, ob Sie es auf diese Weise finden können.
Siehe auch https://serverfault.com/a/739465/206895
Fortgesetzt werden....