≡ Menu

HowTo Disable The Iptables Firewall in Linux

I need to disable firewall in Linux for testing purpose. I’m using CentOS and RHEL version 4.4 / 5 / 6. How do I disable the firewall in Linux?

A Linux firewall is software based firewall that provides protection between your server (workstation) and damaging content on the Internet or network. It will try to guard your computer against both malicious users and software such as viruses/worms.

Task: Disable / Turn off Linux Firewall (Red hat/CentOS/Fedora Core)

Type the following two commands (you must login as the root user):
# /etc/init.d/iptables save
# /etc/init.d/iptables stop

Turn off firewall on boot:
# chkconfig iptables off

Task: Enable / Turn on Linux Firewall (Red hat/CentOS/Fedora Core)

Type the following command to turn on iptables firewall:
# /etc/init.d/iptables start
Turn on firewall on boot:
# chkconfig iptables on

Check out related media

See firewall start and stop video tutorial:

A note about other Linux distribution

If you are using other Linux distribution such as Debian / Ubuntu / Suse / Slakcware Linux etc., try the following generic procedure. First, save the current firewall rules, type:
# iptables-save > /root/firewall.rules
$ sudo iptables-save > /root/firewall.rules
Next, type the following commands (login as the root) as bash prompt:

iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT

Or create a shell script as follows and run it to disable the firewall:

# reset.fw - Reset firewall
# set x to 0 - No reset
# set x to 1 - Reset firewall
# ---------------------------------------------------------------------------------------------------------------
# Added support for IPV6 Firewall
# ---------------------------------------------------------------------------------------------------------------
# Written by Vivek Gite <vivek@nixcraft.com>
# ---------------------------------------------------------------------------------------------------------------
# You can copy / paste / redistribute this script under GPL version 2.0 or above
# =============================================================
# set to true if it is CentOS / RHEL / Fedora box
### no need to edit below  ###
if [ "$x" == "1" ];
	if [ "$RHEL" == "true" ];
	      # reset firewall using redhat script
		/etc/init.d/iptables stop
		/etc/init.d/ip6tables stop
		# for all other Linux distro use following rules to reset firewall
		### reset ipv4 iptales ###
		$IPT -F
		$IPT -X
		$IPT -Z
		for table in $(</proc/net/ip_tables_names)
			$IPT -t $table -F
			$IPT -t $table -X
			$IPT -t $table -Z
		### reset ipv6 iptales ###
		$IPT6 -F
		$IPT6 -X
		$IPT6 -Z
		for table in $(</proc/net/ip6_tables_names)
			$IPT6 -t $table -F
			$IPT6 -t $table -X
			$IPT6 -t $table -Z

To restore or turn on firewall type the following command:
# iptables-restore < /root/firewall.rules

GUI tools

If you are using GUI desktop firewall tools such as 'firestarter', use the same tool to stop the firewall. Visit:
System > Administration > firestarter > Click on Stop Firewall button:
Sample outputs:
Howto disable the iptables firewall in Debian  / Ubuntu Linux

Share this tutorial on:

Your support makes a big difference:
I have a small favor to ask. More people are reading the nixCraft. Many of you block advertising which is your right, and advertising revenues are not sufficient to cover my operating costs. So you can see why I need to ask for your help. The nixCraft, takes a lot of my time and hard work to produce. If you use nixCraft, who likes it, helps me with donations:
Become a Supporter →    Make a contribution via Paypal/Bitcoin →   

Don't Miss Any Linux and Unix Tips

Get nixCraft in your inbox. It's free:

{ 28 comments… add one }
  • mike November 23, 2007, 2:37 pm

    you can get the status of iptables with the following

    service iptables status

    service iptables help gives:

    Usage: /etc/init.d/iptables {start|stop|restart|condrestart|status|panic|save}

    • hanumanaik February 9, 2011, 8:14 am

      how to insatall CentOS 4.3 in VMWere

      • Gregory May 3, 2011, 2:16 pm

        Same as on a machine…

  • Photos of China July 4, 2008, 7:29 am

    I have this error on centOS

    /etc/init.d/iptables save
    Usage /etc/init.d/iptables {start|output_int|stop|restart|status}

  • nixCraft July 4, 2008, 8:19 am

    Are you sure you got CentOS? Another option is
    iptables-save > /root/working.fw

  • Flash32 October 30, 2008, 4:06 pm

    Thanks Guys!!!

  • Robert December 24, 2008, 3:32 pm

    The easy way to do this is:

    chkconfig iptables off

    then to re-enable

    chkconfig –level 345 iptables on

  • joe January 5, 2009, 7:56 pm

    on fedora, once you enabled firwalls/selinux during installation, I can never make nfs boot or ftp works. you can see firewall disabled, iptables disabled, yet no help. Either selinux or fedora GUI has bugs, what I get:
    Loading: TFTP error 2: Only absolute filenames allowed
    to our people, the selinux is a nightmare. forget what the system told you. selinux adds extension to file attributes then some garbage cannot be removed.

  • Amie January 7, 2009, 8:32 pm

    Hi – first time here and really need some help!

    I gave my father in law a netbook for Xmas with Linux as an operating system but cannot connect to Sky broadband. Sky unable to help, any ideas??

  • Manu Anand January 9, 2009, 11:36 pm

    Hey Amie:

    Try connecting with a ethernet cable.
    If that works then try KDE’s network manager.


  • Tomas February 27, 2009, 3:08 pm

    Really Thanks

  • Ashwani April 9, 2009, 1:50 am

    Thanks for help….

    FTP can be accessed by stop IP tables.

  • mallikarjun goud November 15, 2009, 7:01 am

    how to stop iptables with out chkconfig iptables off command………………..plz help me out

  • Kapil Ahire March 17, 2010, 4:17 am

    Thanks All Of you

  • Alex March 30, 2010, 3:26 pm


    I have a problem starting iptables:

    [root@myserver ~]# /etc/init.d/iptables start
    [root@myserver ~]# /etc/init.d/iptables status
    Firewall is stopped.

    [root@myserver ~]# rpm -q iptables

    Please help me solve this problem.

  • neha soni April 3, 2010, 11:06 am

    how can we stop the iptables service in ubuntu???
    i have tried “services iptables stop” but it is giving “unrecognized service”.
    is there any other command or method to do so???

    • Yogesh Kumar April 16, 2010, 5:19 am

      /etc/init.d/iptables status

      if running than to stop

      /etc/init.d/iptables stop

  • vijay April 17, 2010, 8:32 pm

    I am very confused about iptables status.

    I stopped my iptables by running ” service iptables stop”, later on i checked wheter it is really running or not by running “service iptables status”. It shows me ” Firewall is disabled”. If I run iptables -L it shows me the list of INPUT/OUTPUT/FORWARD Chains. If again i will run ” service iptables status” it will show me againall chains. What it really means, does iptables start auutomatically when I type ” iptables -L”? Please reply lots of confusion!!!

    Thanks in advance.


  • maansingh June 22, 2010, 4:48 pm

    dear sir ,
    how can i configure the firewall

  • quan September 13, 2010, 5:53 am

    I make iptable stop but not start it

    [root@FreeSX ~]# /etc/init.d/iptables start
    Applying iptables firewall rules: iptables-restore: line 1 failed
    [root@FreeSX ~]# /etc/init.d/iptables status
    Firewall is stopped.

    plz help me as soon as possible

  • Tyler April 19, 2011, 8:10 pm

    Debian Stable doesn’t seem to have an init.d script, or the services application, or the chkconfig application. How does one start/stop/restart the iptables service on Debian?

  • jokish May 13, 2011, 3:35 pm

    Thankss a lot ………………………….. gud to learn

  • ram November 6, 2011, 7:40 pm

    To stop firewall during bootup aka permanently

    [root@ssd optimized]# chkconfig –list | grep iptables
    iptables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
    [root@ssd optimized]# chkconfig –level 345 iptables off
    [root@ssd optimized]# chkconfig –list | grep iptables
    iptables 0:off 1:off 2:on 3:off 4:off 5:off 6:off

  • Inversys November 12, 2011, 5:12 pm

    Thanks for all.

  • Harshal September 5, 2012, 5:58 am


  • Brian October 19, 2012, 3:47 pm

    For ubuntu/debian servers, it is better to run default policy change, “iptables -P INPUT ACCEPT” before “iptables -F”, otherwise you will lose current connections immediately if your default policy was set to DENY

    iptables -P INPUT ACCEPT
    iptables -P OUTPUT ACCEPT
    iptables -P FORWARD ACCEPT

    iptables -F
    iptables -X
    iptables -t nat -F
    iptables -t nat -X
    iptables -t mangle -F
    iptables -t mangle -X

    This should be applied to the script file too.

  • Bhagya Raj January 24, 2015, 6:42 am

    Thank You Very Much.

  • Mukundan October 15, 2015, 3:57 am

    Thanks. It helped me. :)

Leave a Comment

You can use these HTML tags and attributes: <strong> <em> <pre> <code> <a href="" title="">

   Tagged with: , , , , , , , , , , , , , ,