Firewalld(防火墙)课程总结

本文深入解析防火墙的分类、核心功能及iptables与firewalld的配置方法,同时探讨TCPwrappers的工作原理与配置实践,为网络管理提供实用指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

防火墙
(1)分类:1. 从软、硬件形式上分为 软件防火墙和硬件防火墙以及芯片级防火墙。
2.从防火墙技术分为 “包过滤型”和“应用代理型”两大类。
3.从防火墙结构分为 < 单一主机防火墙、路由器集成式防火墙和分布式防火墙三种。
4. 按防火墙的应用部署位置分为 边界防火墙、个人防火墙和混合防火墙三大类。
5. 按防火墙性能分为 百兆级防火墙和千兆级防火墙两类。
(2)linux防火墙的核心是数据报文过滤工作在主机或者网络的边缘,对进出的数据报文进行检查,监控,并且能够根据事先定义的匹配条件和规则做出相应的动作的组件,机制或者系统。
linux内核集成了网络控制功能,通过netfilter模块实现网络访问控制功能在用户层我们可以通过iptables程序对netfilter进行控制管理。iptables 是一个应用层的应用程序,它通过 Netfilter 放出的接口来对存放在内核内存中的 XXtables(Netfilter的配置表)进行修改。这个XXtables由表tables、链chains、规则rules组成,iptables在应用层负责修改这个规则文件。类似的应用程序还有 firewalld。
iptables service 首先对旧的防火墙规则进行了清空,然后重新完整地加载所有新的防火墙规则,而如果配置了需要 reload 内核模块的话,过程背后还会包含卸载和重新加载内核模块的动作,很可能对运行中的系统产生额外的不良影响,特别是在网络非常繁忙的系统中。如果我们把这种哪怕只修改一条规则也要进行所有规则的重新载入的模式称为静态防火墙的话,那么 firewalld 所提供的模式就叫做动态防火墙,任何规则的变更都不需要对整个防火墙规则列表进行重新加载,只需要将变更部分保存并更新到运行中的 iptables 即可,它具备对 IP v4 和 IP v6 防火墙设置的支持。
(3)netfilter可以对数据进行允许(ACCEPT)、丢弃(DROP)、拒绝(REJECT)netfilter支持通过以下方式对数据包进行分类:源ip地址、目标ip地址、接口、协议(TCP UDP ICMP)、端口号、连接状态(new established related invalid
(4)、 规则:就是指网络管理员预定义的条件,规则一般的定义为“如果数据包投符合这样的条件,就这样处理这个数据包“。
链:数据包传播的路径,每一条链其实就是众多规则中的一个检查清单,每一条链中可以有一条或者数条规则。
五个位置的钩子函数:
INPUT链:入站 mangle、filter
OUTPUT链:出站 raw、 mangle、nat、filter
FORWARD链:转发 mangle、filter
PREROUTING链:路由选择之前 raw、mangle、nat
POSTROUTING链:路由选择之后 raw、mangle、nat表:提供特定的功能,iptables内置了4个表。
filter表:数据包过滤主要用于对数据包进行过滤,根据具体的规则决定是否放行该数据包(如DROP、ACCEPT、REJECT)。
nat表(地址转换):主要用于修改数据包的IP地址、端口号等信息(网络地址转换SNAT、DNAT)。
mangle表(报文重构 ):拆解报文,作出修改并重新封装的功能Qos 。
raw表(原始报文,相关服务的包要传输可以定义raw表可以快速查询):主要用于决定数据包是否被状态跟踪机制处理。
4个表的优先级由高到低的顺序为:raw–>mangle–>nat–>filter
(5)iptables配置命令格式
在这里插入图片描述
· -A:新增一条规则,到该规则链列表的最后一行
· -I:插入一条规则,原本该位置上的规则会往后顺序移动,没有指定编号则为1·
· -D:从规则链中删除一条规则,要么输入完整的规则,或者指定规则编号加以删除
· -R:替换某条规则,规则替换不会改变顺序,而且必须指定编号。
· -P:设置某条规则链的默认动作
· -nL:-L、-n,查看当前运行的防火墙规则列表
· -F : 清除所有规则表
· [-i|o 网卡名称]:i是指定数据包从哪块网卡进入,o是指定数据包从哪块网卡输出
· [-p 协议类型]:可以指定规则应用的协议,包含tcp、udp和icmp等-p icmp --icmp-type 8:echo-request 请求
安装iptables
在这里插入图片描述
查看当前运行的防火墙规则列表
在这里插入图片描述
清除所有规则表
在这里插入图片描述
添加规则禁止当前主机ssh远程登录该服务器
在这里插入图片描述
添加规则允许当前主机ssh远程登录该服务器
在这里插入图片描述
查看规则列表
在这里插入图片描述
删除编号为2的规则
在这里插入图片描述
插入规则默认在最上面
在这里插入图片描述
将INPUT 默认的ACCEPT改为DROP
在这里插入图片描述
安装http服务
在这里插入图片描述
搭建web服务
在这里插入图片描述
开放web服务端口

在这里插入图片描述
能够访问web
在这里插入图片描述
用B主机能够ping通A主机

在这里插入图片描述
在A主机添加拒绝回复B主机的规则
在这里插入图片描述
在这里插入图片描述
B主机ping失败
在这里插入图片描述
添加规则:其他主机能连接当前主机,但新开的不可以
在这里插入图片描述
在这里插入图片描述
添加规则:SSH记录中的ip,300s内发起超过3次连接则拒绝此ip的连接
在这里插入图片描述
(6) Firewalld配置
预定义服务/添加端口有三种方式:
编辑配置文件/etc/firewalld/firewalld.conf、使用图形化工具firewall-config、使用firewall-cmd命令
查看所有支持的服务
在这里插入图片描述
添加http服务
在这里插入图片描述
重启后服务失效
在这里插入图片描述
设置服务超时时间,即服务的开启时间,单位为秒
在这里插入图片描述
添加永久生效的服务
在这里插入图片描述
重启后生效
在这里插入图片描述
查看紧急模式状态并启用紧急模式
在这里插入图片描述
命令行添加富规则(临时)
在这里插入图片描述
删除富规则
在这里插入图片描述
添加富规则实现端口转发,重载防火墙后生效
在这里插入图片描述
Firewalld练习题
1、配置防火墙规则
允许172.16.10.0/24 网段的用户对server和desktop进行ssh访问
禁止172.16.20.0/24 域的用户对server和desktop进行ssh
访问

重启防火墙服务
在这里插入图片描述
添加ssh允许规则
在这里插入图片描述
添加富规则拒绝172.16.20.0/24网段用户访问
在这里插入图片描述
重载防火墙

在这里插入图片描述
2、配置端口转发
在server和desktop配置端口转发,要求:
在172.24.8.0/24网段中的主机,访问server的本地端口5423将被转发到80端口此设置必须永久有效、设置开机启动防火墙
添加转发富规则
在这里插入图片描述
重载防火墙
在这里插入图片描述
二、TCP wrappers
(1)简介
TCP_Wrappers是一个工作在第四层(传输层)的安全工具,对有状态连接的特定服务进行安全检测并实现访问控制,凡是包含有libwrap.so库文件的程序就可以受TCP_Wrappers的安全控制。它的主要功能就是控制谁可以访问,常见的程序有rpcbind、vsftpd、sshd,telnet。
(2)工作原理
TCP_Wrappers有一个TCP的守护进程叫作tcpd。以ssh为例,每当有ssh的连接请求时,tcpd即会截获请求,先读取系统管理员所设置的访问控制文件,符合要求,则会把这次连接原封不动的转给真正的ssh进程,由ssh完成后续工作;如果这次连接发起的ip不符合访问控制文件中的设置,则会中断连接请求,拒绝提供ssh服务。
在这里插入图片描述
(3)配置文件
两个控制文件(配置改变,立即生效):/etc/hosts.allow 定义允许的访问/etc/hosts.deny 定义拒绝的访问tcp_wrappers的访问控制判断顺序:/etc/hosts.allow—>/etc/hosts.deny–>允许所有
(4)配置案例
案例一:
在A服务器上/etc/hosts.deny中写入如下内容:
在这里插入图片描述
在这里插入图片描述
在B服务器上通过ssh命令来远程登陆A服务器,已经没有响应
在这里插入图片描述
在A服务器上删除该条目后,B服务器即可正常登陆A服务器
案例二:
在A服务器上/etc/hosts.deny中写入如下内容:
在这里插入图片描述
在这里插入图片描述
通过B服务器可以正常登陆A服务器
在这里插入图片描述
案例三:
清空A服务器上的/etc/hosts.deny中的内容然后在/etc/hosts.allow中写入如下内容:
在这里插入图片描述
在这里插入图片描述
通过B服务器可以正常登陆A服务器
在这里插入图片描述
查看哪些服务支持TCP wrappers
在这里插入图片描述
(3) 练习:
1、拒绝haha用户登录到当前主机
锁定hah用户的密码
在这里插入图片描述
(2)对haha用户身份进行锁定
在这里插入图片描述
(3)编辑ssh默认配置文件
在这里插入图片描述
编辑允许登录的用户中排出haha用户
在这里插入图片描述
2、拒绝主机192.168.146.134 ssh远程登录到当前主机在控制文件/etc/hosts.deny添加

在这里插入图片描述
在这里插入图片描述
添加规则拒绝172.16.80.68 ssh远程登录当前主机
在这里插入图片描述
添加富规则拒绝172.16.80.68访问当前主机
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值