Sign up ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free.

I made changes to iptables config file in /etc/iptables/filter in ubuntu and want to reload them. I read the man page and also googled but couldn't find the information. Any help will be appreciated.

Thank you

share|improve this question

migrated from Dec 30 '11 at 0:33

This question came from our site for professional and enthusiast programmers.

You have neither provided any information about the version of Ubuntu you are using, nor searched the web well, before posting this question. – Puspendu Banerjee Dec 6 '10 at 18:35

4 Answers 4

up vote 15 down vote accepted

Easiest way is to reboot (also if below does not work, reboot, check if that made the change).

Second easiest is to restart the daemons using iptables configurations (google: restart daemon ubuntu).

examples (depends your configuration):
/etc/init.d/iptables restart
/etc/init.d/networking restart
/etc/init.d/firewall restart


share|improve this answer
There is no file by name /etc/init.d/iptables – Raccha Dec 6 '10 at 18:19
what network related exists in /etc/init.d ? try to restart that. – Juha Dec 6 '10 at 18:20
/etc/init.d/networking restart? – Juha Dec 6 '10 at 18:22
Dead link is dead. – Dustin Graham Mar 14 '14 at 17:45
@DustinGraham thanks, the broken link is removed. – Juha Mar 17 '14 at 15:42

To activate the firewall rules in your config file you must use:

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

And you can check that they are activated with:

sudo iptables -L

If you want that the rules are activated each time you boot the computer create this file:

sudo nano /etc/network/if-pre-up.d/firewall

With this content:

/sbin/iptables-restore < /etc/iptables.firewall.rules

And give it permission of execution:

sudo chmod +x /etc/network/if-pre-up.d/firewall

Hope it helps you =)

share|improve this answer
On Ubuntu 14.10 I have no /etc/iptables.firewall.rules but sudo iptables-restore < /etc/iptables/rules.v4 worked for me. – timbo Jan 9 at 22:43

After googling a little, this is what i found to restart iptables. . . sudo /etc/init.d/firewall restart

share|improve this answer
There is no file by name /etc/init.d/firewall – Raccha Dec 6 '10 at 18:16

If you've executed your rules they are already running and no reloading is necessary. In case where you have a configuration file but it hasn't been executed best way I've seen so far is to use iptables-apply (an iptables extension).

iptables-apply -t 60 your_rules_file

This will apply the rules for 60 seconds (10 by default) and revert them if you don't confirm them. This will save you in case you are thrown out of the system because of the rules (ex. if you are operating through ssh).

You can use the following as a replacement:

iptables-restore < your_rules_file; sleep 60; iptables-restore < clean_rules
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.