When running

[root@host ~]# firewall-cmd --get-active-zones
[root@host ~]#
[root@host ~]# firewall-cmd --get-default-zone

I am not getting any active zones. How can I activate a zone?

3 Answers 3


You activate a zone by binding a network interface or source IP address range(s) to it. Any firewall rules in the zone then apply to that network interface or IP address range(s).

  • 1
    I also had to restart the service.
    – giorgio79
    Jan 13, 2016 at 23:02
  • 1
    You can do this via firewall-cmd --permanent --zone=public --change-interface=eth0 (for example).
    – user395771
    Jan 18, 2017 at 12:59
  • 3
    I think --get-active-zones should print the default zone as well. Maybe as public (implicit) internal home or whatever.
    – bviktor
    Mar 21, 2017 at 18:17
  • 1
    You need a firewall-cmd --reload after change interface command @negacao said to commit changes.
    – alizeyn
    May 7, 2020 at 10:22

On a similar case, I took a peek with strace and realized, that FirewallD had somehow lost D-Bus access completely.

The easiest fix was to reboot the Linux. That helped and FirewallD saw active zones again.

  • yep, that was the case for me.
    – Salem F
    Feb 3 at 7:02

I had the same question, except I had definitely had an interface in a zone. For me I had to restart the firewalld service.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.