Linux运维知识之Linux CentOS7防火墙firewalld使用说明
小标 2019-01-16 来源 : 阅读 1521 评论 0

摘要:本文主要向大家介绍Linux运维知识之Linux CentOS7防火墙firewalld使用说明了,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。

本文主要向大家介绍Linux运维知识之Linux CentOS7防火墙firewalld使用说明了,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。

CentOS7防火墙已经不是iptables了而是有一个新名字了Firewalld。



firewalld是centos7的一大特性,最大的好处有两个:支持动态更新,不用重启服务;第二个就是加入了防火墙的“zone”概念





firewalld有图形界面和工具界面,但一般我我都是使用字符界面; 图形界面请参照官方文档




firewalld的字符界面管理工具是 firewall-cmd




firewalld配置文件


firewalld默认配置文件有两个:


/usr/lib/firewalld/ (系统配置,尽量不要修改)

/etc/firewalld/ (用户配置地址)


在/etc/firewalld/zones下面只有一个public.xml,如果给另外一个zone做一些改动,并永久保存,那么会自动生成对应的配置文件


比如,给work zone增加一个端口:firewall-cmd –permanent –zone=work –add-port=1000/tcp


此时就会生成一个work.xml的配置文件


修改ftp的端口,默认ftp的端口是21,改为1121 代码如下:


cp /usr/lib/firewalld/services/ftp.xml /etc/firewalld/services/
vim /etc/firewalld/services/ftp.xml   #把21改为1121
vim /etc/firewalld/zones/work.xml     #work为默认zone,所以要编辑这个,增加一行<service name="ftp"/>
firewall-cmd --reload                 #重新加载


firewalld规则


假设自定义的ssh端口号为12222,使用下面的命令来添加新端口的防火墙规则:


firewall-cmd --add-port=12222/tcp --permanent


使用–permanent参数可以将更改保存到配置文件。



防火墙配置文件也可以手动修改,修改后记得重新加载:firewall-cmd –reload





这种情况下重新加载防火墙并不会中断用户连接,也可以彻底加载,这时候会中断用户连接,也会丢弃状态信息:firewall-cmd –complete-reload




还可以添加一个端口范围:firewall-cmd –add-port=2000-4000/tcp




针对指定zone添加端口:firewall-cmd –permanent –zone=home –add-port=443/tcp




启动端口转发,例如把22端口转发到127.0.0.2:firewall-cmd –permanent –zone=home –add-forward-port=port=22:proto=tcp:toaddr=127.0.0.2




以下是在CentOS7系统上操作Firewalld的方法。




查看firewalld是否开启




systemctl is-enabled firewalld



启动firewalld



systemctl start  firewalld



停止firewalld



systemctl stop firewalld



查看firewalld状态



systemctl status firewalld



禁止firewall开机启动



systemctl disable firewalld.service



重新加载防火墙



firewall-cmd --reload



查看所有打开的端口



firewall-cmd --zone=public --list-ports



查看具体端口



firewall-cmd --zone= public --query-port=80/tcp


firewalld有zone和service的概念,每一个zone的规则不一样,默认有9个zone。centos7默认使用的zone是public。


firewalld的9个zone介绍




丢弃 drop : 任何流入网络的包都被丢弃,不作出任何响应。只允许流出的网络连接。




阻塞 block:任何进入的网络连接都被拒绝,并返回 IPv4 的 icmp-host-prohibited 报文或者 IPv6 的 icmp6-adm-prohibited 报文。只允许由该系统初始化的网络连接。




公开 public:用以可以公开的部分。你认为网络中其他的计算机不可信并且可能伤害你的计算机。只允许选中的连接接入。




外部 external:用在路由器等启用伪装的外部网络。你认为网络中其他的计算机不可信并且可能伤害你的计算机。只允许选中的连接接入。




隔离区dmz:用以允许隔离区(dmz)中的电脑有限地被外界网络访问。只接受被选中的连接。




工作 work:用在工作网络。你信任网络中的大多数计算机不会影响你的计算机。只接受被选中的连接。




家庭 home:用在家庭网络。你信任网络中的大多数计算机不会影响你的计算机。只接受被选中的连接。




内部 internal:用在内部网络。你信任网络中的大多数计算机不会影响你的计算机。只接受被选中的连接。




受信任的 trusted:允许所有网络连接。




firewalld zone相关命令的用法




设置默认的zone:firewalld-cmd –set-default-zone=work




查看指定网卡所在的zone:firewall-cmd –get-zone-of-interface=eno16777736




设置指定网卡所在的zone:firewall-cmd –zone=public –add-interface=lo




更改指定网卡所在的zone:firewall-cmd –zone=dmz –change-interface=lo




删除指定网卡所在的zone:firewall-cmd –zone=dmz –remove-interface=lo




查看所有网卡所在的zone:firewall-cmd –get-active-zones




firewalld service介绍




在/usr/lib/firewalld/services/目录中,还保存了另外一类配置文件,每个文件对应一项具体的网络服务,如ssh服务等。




与之对应的配置文件中记录了各项服务所使用的tcp/udp端口,在最新版的firewalld中默认已经定义了70多种服务供我们使用。




zone就是调用了不同的service而实现了不同的效果。




列出所有的service:




firewall-cmd --get-services



列出当前zone下加载的service:



firewall-cmd --list-services



查看指定zone下面的service:



firewal-cmd --zone=public --list-services



给指定zone添加service:



firewall-cmd --zone=public --ad-service=http



这个改动不会保存到配置文件里,要想保存到配置文件里面,需要加上–permanent:



firewall-cmd --zone=public --add-service=http --permanent



既然可以增加,同样也可以删除,下面命令会从配置文件中永久删除public zone中的http服务:



firewall-cmd --zone=public --remove-service=http --permanent


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注系统运维Linux频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程