Linux运维知识之linux下防火墙的管理工具firewall-cmd
小标 2018-12-07 来源 : 阅读 784 评论 0

摘要:本文主要向大家介绍了Linux运维知识之linux下防火墙的管理工具firewall-cmd,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。

本文主要向大家介绍了Linux运维知识之linux下防火墙的管理工具firewall-cmd,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。

关于firewalld

作为内核的管理软件firewall-cmd,通过使用这个软件来间接管理linux内核的开启与关闭等等,而firewall-cmd软件也本身支持firewall-cmd(命令)firewall-config(图形管理工具)两种管理模式来管理kerne lnetfilte。

配置文件:/usr/lib/firewalld/和/etc/firewalld/中的各种XML文件里。


Firewall能将不同的网络连接归类到不同的信任级别,Zone提供了以下几个级别:

drop:丢弃所有进入的包,而不给出任何响应

block:拒绝所有外部发起的连接,允许内部发起的连接

public:允许指定的进入连接

external:同上,对伪装的进入连接,一般用于路由转发

dmz:允许受限制的进入连接

work:允许受信任的计算机被限制的进入连接,类似workgroup

home:同上,类似homegroup

internal:同上,范围针对所有互联网用户

trusted:信任所有连接

1)安装   yum    install   firewall   -y     (一般都会装机时候自带)

firewall-config     ------firewalld  的图形管理工具

runtime : 改了当时生效,但所systemctl  restart   firewall 后就失效了。

permanent   :   y永久性生效,但是写完之后必须systemctl  restart   firewall

所有永久性的更改会保存在 /usr/lib/firewall/zones/ 目录下的对应xml文件中,比如下图就是保存在了/usr/lib/firewall/zones/public.xml文件中。

2)命令firewall-cmd 添加各种功能

firewall-cmd --state        ------------查看火墙状态

firewall-cmd --get-default-zone        ----------查看默认域

firewall-cmd --get-active-zones         ---------------查看当前生效域的状态

firewall-cmd -get-zones        -------------查看存在的所有域


firewall-cmd --zone=public --list-all                          ------------------查看public域的所有信息


firewall-cmd --list-all-zones             --------------查看所有域的所有信息

firewall-cmd  --set-default-zone=home                 ---------------将默认域设置为home

3)高级命令设置

  1、firewall-cmd -zone=public  --add-source=172.25.254.50/24           ---------将172.25.254.50的主机添加到本机public块中,使得它可以访问本地资源


firewall-cmd  --zone=public  --remove-source=172.25.254.50/24                  --------------移除172.25.254.50 主机。

firewall-cmd  --remove-intenface=eth0         ------------删除接口eth0

firewall-cmd  --add-interface=eth0                -----------添加接口eth0.

firewall-cmd  --permanent  --remove-port=80/tcp              ----------------删除端口80

firewall-cmd --reload  和  firewall-cmd --complete-reload的区别:

firewall-cmd --reload在执行之后并不会将正在运行的服务打断,而firewall-cmd --complete-reload 将会把正在运行的服务打断,比如先将172.25.254.50 通过ssh连接主机172.25.254.220,然后在将50主机加入到block域中,最后执行firewall-cmd --complete-reload  命令时候50主机将会连输入字符的机会都没有了。所以说通过firewall-cmd --complete-reload  可以随时禁止哪台主机。


3)、DirectRules

通过 firewall-cmd工具,可以使用--direct选项在运行时间里增加或者移除链。如果不熟悉iptables,使用直接接口非常危险,因为您可能无意间导致防火墙被入侵。直接端口模式适用于服务或者程序,以便在运行时间内增加特定的防火墙规则。直接端口模式添加的规则优先应用。


参数:filter(本地数据限制):(-s源地址,-d目的地址,-p协议,--dport端口,-j行为/REJECT拒绝/ACCEPT同意/DROP丢弃)

firewall-cmd--direct --add-rule ipv4 filter IN_public_allow 0 -p tcp --dport 80-jACCEPT ---添加规则

firewall-cmd--direct --get-all-rules ---列出规则


firewall-cmd --direct  -add -rule ipv4 filter INPUT  1 -s  172.25.254.50  -p  tcp   -dport  22 -j  REJECT   ----------拒绝50主机的22端口访问。

4)RichRules

通过该方法,可以用比直接接口方式更易理解的方法建立复杂防火墙规则。此外,还能永久保留保留设置,这种语法使用关键词值。

主要参数:source源地址,destination目的地址,service服务名称,port端口,protocol协议名

地址伪装示例:

连接220主机,但是220主机成功将连接请求转到了50主机。


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

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(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小时内训课程