firewalld是Linux操作系统的防火墙管理工具。它通过充当Linux内核的netfilter框架的前端来提供防火墙功能,就像iptables一样。
安装firewalld
默认情况下CentOS 7可能已经安装了firewalld服务,若确实没有安装直接使用yum
命令安装即可:
#安装firewalld
yum -y install firewalld
运行firewalld之前的准备
firewalld默认规则已经放行SSH服务(22端口),但如果您修改过SSH端口,则必须先放行,否则一旦启用firewalld将被阻挡在外,无法连接服务器,那就杯了个具。
比如您将SSH端口修改为了2018,可尝试直接编辑firewalld的配置文件vi /etc/firewalld/zones/public.xml
,里面加入一条规则:
<port protocol="tcp" port="2018"/>
接着输入命令:systemctl start firewalld
来启动firewalld,这样就不会阻挡在外啦。
常用命令
安装完成后firewalld并没有运行,有必要先来熟悉下基本的命令:
#查看运行状态
firewall-cmd --state
#启动firewall
systemctl start firewalld
#设置开机自启
systemctl enable firewalld
#删除开机自启
systemctl disable firewalld
#停止firewall
systemctl stop firewalld
如果您在启动的时候提示“Failed to start firewalld.service: Unit firewalld.service is masked.”,输入下面的命令可解决:
systemctl unmask firewalld.service
一些常用的列子
放行某个指定的TCP端口,如放行80端口:
firewall-cmd --zone=public --add-port=80/tcp --permanent
放行端口范围(8000-9000):
firewall-cmd --zone=public --add-port=8000-9000/tcp --permanent
查看已经放行的端口:
firewall-cmd --zone=public --list-ports
删除某个已经放行的端口(6022):
firewall-cmd --zone=public --remove-port=6022/tcp --permanent
阻止某个IP(123.57.22.204)连接:
firewall-cmd --permanent --add-rich-rule="rule family=ipv4 source address=123.57.22.204 reject"
注意上面的所有列子都需要输入: firewall-cmd --reload
重载firewall使其生效。
总结
个人感觉firewalld使用起来比iptables简单,CentOS 7默认使用firewalld作为防火墙也肯定是有原因的,因此赶紧把这篇文章收藏了肯定没坏处(此处应有一个坏笑的表情)。上面仅提供了firewalld的基本使用方法,应对大部分情况应该足够了,如果需要详细了解参数含义可网上自行搜索。
一、如果您发现本站侵害了相关版权,请附上本站侵权链接和您的版权证明一并发送至邮箱:yehes#qq.com(#替换为@)我们将会在五天内处理并断开该文章下载地址。
二、本站所有资源来自互联网整理收集,全部内容采用撰写共用版权协议,要求署名、非商业用途和相同方式共享,如转载请也遵循撰写共用协议。
三、根据署名-非商业性使用-相同方式共享 (by-nc-sa) 许可协议规定,只要他人在以原作品为基础创作的新作品上适用同一类型的许可协议,并且在新作品发布的显著位置,注明原作者的姓名、来源及其采用的知识共享协议,与该作品在本网站的原发地址建立链接,他人就可基于非商业目的对原作品重新编排、修改、节选或者本人的作品为基础进行创作和发布。
四、基于原作品创作的所有新作品都要适用同一类型的许可协议,因此适用该项协议, 对任何以他人原作为基础创作的作品自然同样都不得商业性用途。
五、根据二〇〇二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可不经软件著作权人许可,无需向其支付报酬!
六、鉴此,也望大家按此说明转载和分享资源!本站提供的所有信息、教程、软件版权归原公司所有,仅供日常使用,不得用于任何商业用途,下载试用后请24小时内删除,因下载本站资源造成的损失,全部由使用者本人承担!