How to block IP range or country with firewalld?

Posted December 7, 2016 31.8k views


How can I block IP range or entire country on CentOS 7 with FirewallD? The IP range starts with 180.76.15.* and is Chinese IP.

The command below works for single IP but not for range:

firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='' reject" 

I tried with this command for the range but without success:

firewall-cmd –permanent –add-rich-rule=“rule family=‘ipv4’ source address='180.76.15/24’ reject”


These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.

4 answers

I think the correct command is:

firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='' reject"

Pay attention to highlighted part

You have to reload firewalld after adding a permanent rule.

firewall-cmd --reload

Thank you xMudrii,

This command is executed successfully. Lets see if it works and the Chinese visitors from 180.76.15* will not have access to the site anymore.


The command is not working, I run the command and reload my firewall for the changes to take effect, but unfortunately the 180.76.15* still have access to my site. Any other ideas?

Submit an Answer