Last updated on November 1, 2020 by Dan Nanni
If you have customized iptables
rules, and would like to load the customized iptables
rules persistently across reboots on Debian, you can leverage the if-up.d
scripts that are located in /etc/network/if-up.d
. On Debian, any script that is marked as executable and placed in /etc/network/if-up.d
gets executed when a network interface is brought up.
In order to run iptables automatically after reboot on Debian, do the following.
First, customize iptables
as you wish, and then save the current iptables
rule-set using iptables-save
command as follows.
$ sudo iptables-save > /etc/firewall.conf
The above command will dump the current iptables
rule set into /etc/firewall.conf
. As shown below, the rule set stored in /etc/firewall.conf
can then be restored with iptables-restore
command.
Now create the following if-up.d
script called run-iptables
, which restores the saved iptables
rules.
$ sudo vi /etc/network/if-up.d/run-iptables
#!/bin/sh iptables-restore < /etc/firewall.conf
Finally, make the run-iptables
script executable.
$ sudo chmod +x /etc/network/if-up.d/run-iptables
From this point on, whenever system boots up and network interfaces are activated, the iptables
rules stored in /etc/firewall.conf
will be loaded into the system.
Another way to automatically load the iptables
rules stored in /etc/firewall.conf
is to add iptables-restore < /etc/firewall.conf
command to /etc/rc.local
. /etc/rc.local
is a place where any startup services can be added.
This website is made possible by minimal ads and your gracious donation via PayPal or credit card
Please note that this article is published by Xmodulo.com under a Creative Commons Attribution-ShareAlike 3.0 Unported License. If you would like to use the whole or any part of this article, you need to cite this web page at Xmodulo.com as the original source.
Xmodulo © 2021 ‒ About ‒ Write for Us ‒ Feed ‒ Powered by DigitalOcean