良许Linux教程网 干货合集 Linux系统防火墙详解

Linux系统防火墙详解

防火墙可以有效保护系统的安装,Linux的防火墙主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙。下面良许教程网为大家分享一下Linux系统防火墙 的具体内容,有需要的朋友可以参考一下。

Linux系统防火墙详解

一、Linux防火墙简介

Linux的防火墙主要工作在网络层,针对TCP/IP数据包实施过滤和限制,属于典型的包过滤防火墙。

二、 Linux软件防火墙作用

防火墙可以单独/批量禁止/允许某个/多个端口的数据通过,也可以将某个端口的数据转发到另外一个端口/ip。

三、 Linux软件防火墙工具

在Centos 6中主要使用:

iptables(命令管理工具);操作较复杂。

在Centos 7中主要使用:

firewall-config(图形化管理工具);

firewall-cmd(命令管理工具),在生产环境中用的较多。

本文主要介绍Centos7 Firewalld防火墙。

四、Firewalld简介

(1)支持网络区域所定义的网络连接及接口安全等级的动态防火墙管理工具

(2)支持IPv4,IPv6防火墙设置

(3)支持服务或应用程序直接添加防火墙规则接口

(4)拥有两种配置模式,

运行时配置和永久配置。

4.1 firewalld防火墙区域介绍

为了简化管理,firewalld防火墙将所有的网络流量分为多个区域,每个区域都具有不同程度的规则,默认情况下,public公共区域是默认区域,包含所有接口网卡。 在这里插入图片描述

4.2 firewalld防火墙的工作流程

检查数据来源的源地址:

若源地址关联到特定的区域,则执行该区域所指定的规则;

若源地址未关联到特定的区域,则使用传入网络接口的区域并执行该区域所指定的规则;

若网络接口未关联到特定的区域,则使用默认区域并执行该区域所指定规则。

五、Firewalld防火墙的配置方法

5.1 运行时配置

实时生效,并持续至Firewalld重新启动或重新加载配置;

不中断现有连接;

不能修改服务配置。

5.2 永久配置

不立即生效,除非Firewalld重新启动或重新加载配置;

中断现有连接;

可以修改服务配置。

六、 Firewall-config图形工具

Firewal-config是firewalld防火墙自带的图形管理工具,可以直接使用命令firewall-config启动,可以简单的完成很多复杂的防火墙设置。

 [root@localhost ~]# firewall-config
 1

在这里插入图片描述

七、firewall-cmd 字符工具

firewall-cmd是firewalld防火墙自带的字符管理工具,可以用来设置防火墙的各种规则。

特点:

(1)支持全部防火墙特性;

(2)–permanent参数:携带该参数表示永久配置,否则表示运行时配置;

(3)[–zone=]选项:不携带此选项表示针对默认区域操作,否则针对指定区域。

7.1 防火墙进程操作命令
 [root@localhost ~]# systemctl 选项 firewalld
 1

选项:start stop restart status(开启,停止,重启,状态)

常用指令如下:

7.2 防火墙区域操作命令

(1)显示所有区域及其规则

 [root@localhost ~]# firewall-cmd --list-all-zones
 1

(2)显示internal区域的所有规则

 [root@localhost ~]# firewall-cmd --zone=internal --list-all
 1

(3)显示默认区域的所有规则

 [root@localhost ~]# firewall-cmd --list-all
 1

(4)显示网络连接或接口的默认区域

 [root@localhost ~]# firewall-cmd --get-default-zone
 public
 12

(5)设置网络连接或接口的默认区域为internal

 [root@localhost ~]# firewall-cmd --set-default-zone=internal
 success
 [root@localhost ~]# firewall-cmd --get-default-zone
 internal       '#默认区域已改为internal'
 [root@localhost ~]#
 12345

(6)显示已激活的所有区域

激活条件:区域至少关联一个接口或一个源地址/网段

 [root@localhost ~]# firewall-cmd --get-active-zones
 internal
   interfaces: ens33
 [root@localhost ~]#
 1234

(7)显示ens33网卡接口绑定的区域

 [root@localhost ~]# firewall-cmd --get-zone-of-interface=ens33
 internal     '#绑定在默认区域'
 [root@localhost ~]#
 123

(8)为work区域更改绑定的网络接口ens33

 [root@localhost ~]# firewall-cmd --zone=work --change-interface=ens33  '#更改接口'
 The interface is under control of NetworkManager, setting zone to work.
 success
 [root@localhost ~]# firewall-cmd --get-zone-of-interface=ens33      '#显示接口绑定区域'
 work                             '#更改成功'
 
 123456

(9)为work区域删除绑定的接口ens33

 [root@localhost ~]# firewall-cmd --zone=work --remove-interface=ens33 '#删除接口'
 The interface is under control of NetworkManager, setting zone to default.
 success
 [root@localhost ~]# firewall-cmd --get-zone-of-interface=ens33    '#显示接口绑定区域'
 internal                                               '#解绑成功'
 [root@localhost ~]#
 
 1234567

(10)查询区域中是否包含ens33接口

 [root@localhost ~]# firewall-cmd --zone=work --query-interface=ens33
 no
 [root@localhost ~]#
 
 1234
7.3 防火墙区域操作命令小结

在这里插入图片描述在这里插入图片描述

7.4 防火墙端口操作命令

(1)启用internal区域22端口的TCP协议组合

 [root@localhost ~]# firewall-cmd --zone=internal --add-port=22/tcp --timeout=5m
 success
 12

–timeout=5m:表示5分钟后删除该端口。

(2)显示internal区域内允许访问的端口号

 [root@localhost ~]# firewall-cmd --zone=internal --list-ports
 22/tcp
 
 123

(3)禁用internal区域22端口的TCP协议组合

 [root@localhost ~]# firewall-cmd --zone=internal --remove-port=22/tcp
 success
 12

(4)查询internal区域中是否启用了22端口TCP

 [root@localhost ~]# firewall-cmd --zone=internal --query-port=22/tcp
 no
 12
7.5 防火墙端口操作命令小结

在这里插入图片描述

7.6 防火墙阻塞ICMP操作命令

(1)为work区域设置阻塞echo-request类型的ICMP

 [root@localhost ~]# firewall-cmd --zone=work --add-icmp-block=echo-request
 success
 12

(2)显示work区域内阻塞的所有ICMP类型

 [root@localhost ~]# firewall-cmd --zone=work --list-icmp-blocks
 echo-request
 [root@localhost ~]#
 123

(3)删除work区域已阻塞的echo-request类型的ICMP

 [root@localhost ~]# firewall-cmd --zone=work --remove-icmp-block=echo-request
 success
 12

(4)查询work区域的echo-request类型的ICMP是否阻塞

 [root@localhost ~]# firewall-cmd --zone=work --query-icmp-block=echo-request
 no
 12
7.7 防火墙阻塞ICMP操作命令小结

在这里插入图片描述

至此关于Linux系统防火墙的教程分享结束,大家有任何疑问都可以在评论区留言。

以上就是良许教程网为各位朋友分享的Linux系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你!

137e00002230ad9f26e78-265x300

本文由 良许Linux教程网 发布,可自由转载、引用,但需署名作者且注明文章出处。如转载至微信公众号,请在文末添加作者公众号二维码。
良许

作者: 良许

良许,世界500强企业Linux开发工程师,公众号【良许Linux】的作者,全网拥有超30W粉丝。个人标签:创业者,CSDN学院讲师,副业达人,流量玩家,摄影爱好者。
上一篇
下一篇

发表评论

电子邮件地址不会被公开。 必填项已用*标注

联系我们

联系我们

公众号:良许Linux

在线咨询: QQ交谈

邮箱: yychuyu@163.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

关注微博
返回顶部