Read in 2 minutes

last updated 

How to Stop and Disable Firewalld on CentOS 7

FirewallD is a complete firewall solution that dynamically manages the trust level of network connections and interfaces. It gives you full control over what traffic is allowed or disallowed to and from the system.

Starting with CentOS 7, FirewallD replaces iptables as the default firewall management tool.

It is highly recommended to keep the FirewallD service enabled, but in some cases such as testing you may need to stop or disable it completely.

In this tutorial we will show you how to disable FirewallD on CentOS 7 systems.

Prerequisites

Before starting with the tutorial, make sure you are logged in as a user with sudo privileges.

If you are disabling the firewall because you are experiencing connectivity issues or you have troubles configuring your firewall please check this guide on How to setup a firewall with firewalld on centos 7.

Check the Firewall Status

To view the current status of the FirewallD service you can use the firewall-cmd command:

sudo firewall-cmd --state

If the FirewallD service is running on your CentOS system the command above will print the following message:

running
Advertisement

Disable Firewall

You can temporarily stop the FirewallD service with the following command:

sudo systemctl stop firewalld

However this change will be valid for the current runtime session only.

To permanently disable the firewall on your CentOS 7 system, follow the steps below:

  1. First, stop the FirewallD service with:

    sudo systemctl stop firewalld
  2. Disable the FirewallD service to start automatically on system boot:

    sudo systemctl disable firewalld

    The output from the command above will look something like this:

    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
  3. Mask the FirewallD service which will prevent the firewall from beeing started by another services:

    sudo systemctl mask --now firewalld

    As you can see from the output the mask command simply creates a symlink from the firewalld service to /dev/null:

    Created symlink from /etc/systemd/system/firewalld.service to /dev/null.

Conclusion

In this tutorial, you learned how to stop and permanently disable the firewall on a CentOS 7 machine.

If you have any question or remarks, please leave a comment below.