5、防火墙

防火墙:

firewalld 隔离功能

病毒防护:

1、入侵检测系统:在互联网访问的过程中,不阻断任何网络访问,也不会定位网络的威胁,提供警告和事后的监督,类似于监控。

2、入侵防御系统:透明工作模式,在判定为攻击行为或者是病毒威胁时,主动的隔断。

防水墙:

防止内部信息泄露的产品,网络,外设接口等等全访问的实现监控。

防火墙的隔离规则:

对进出网络或者主机的数据包基于一定的规则进行检查,匹配规则的侧方行,不匹配的就会隔离在主机之外,网络边缘或者是主机边缘。

主机防火墙

网络防火墙

linux系统主机自带防火墙

iptables:centos7以前是系统的默认防火墙

firewalld:centos7的默认防火墙

ufw:ubuntu的防火墙,自带的,默认就没有规则。

iptables:

属于用户态防火墙,通过表匹配链---------》 规则对数据包的方行或者拒绝进行匹配。

表是自带的

链是已有的

规则是人工配置,规则一旦配置,立即生效,不需要重启

四表五链

表:四表

raw表:用来控制数据包的状态跟踪,决定是否跳过后续的处理流程

mangle表:用于修改数据包的头部信息

nat表:网络地址转换,改变数据包的源地址和目的地址。用于内网和外网之间的通信

filter表:用来过滤数据包,可以控制数据包的进出,以及时候接受或者拒绝数据包

表的优先级:

raw----->mangle--------->nat-------->filter(不指定表名时,默认就是filter)

链:五链

INPUT:处理数据包进入本机的规则

OUTPUT:处理本机发出或者是其他请求响应的数据包的规则,一般不做限制。

FORWARD:处理数据包转发到其他主机的规则

PREROUTING:处理数据包进入本机之前的规则(地址转换)

POSTROUTING:处理数据离开本机之后的规则(地址转换)

规则内的匹配顺序:

1、自上而下按照顺序依次进行检查,找到了匹配的规则停止。

2、链内没有规则,就会按照链的默认策略进行处理。

iptables命令:

iptables -t 表名(默认是filter)管理选项 链名 匹配的条件 -j 控制类型

管理选项:

-A: 在指定链的末尾添加一条规则

-i:在指定链中插入一条新的规则,根据序号来进行插入

-p:指定链的默认规则(没有特殊的需求不要修改)

-D: 删除链里的规则,根据规则的序号进行删除

-R:修改,替换某一条规则(不常用)

-L:查看规则

-n:数字化的展示规则的字段

-v:查看详细信息

--line-number:查看规则时带有编号

-F:清除链中所有规则(慎用)

-X:清空自定义链的规则

匹配条件:

-p:匹配数据包的协议

-s:匹配数据包的源地址

-d:匹配数据包的目的地址

-i:指定数据包进入本机的网络接口

-o:数据包离开本机使用的网络接口

--sport:指定源端口

--dport:指定目的端口

控制类型:

1、ACCEPT:允许数据包通过

2、DROP:直接丢弃数据包,没有任何回显信息

3、REJECT:拒绝数据包通过,但是会有一个回显信息

4、SNAT:修改数据包源地址

5、DNAT:修改数据包目的地址

-m 扩展模块

多开端口

-n multiport --sport 源端口列表

-m multiport --dport 目的端口列表

mac地址

操作不方便,用的比较少

-m mac --mac-source 源mac地址

-m mac --mac-destin 目的macdz

ip范围

-m iprange --src-range 源ip地址的范围

-m iprange --dst-range 目的ip地址的范围

自定义链:

在filter表中创建一个自定义链,链名 custom

修改自定义的链名

系统不识别自定义链,需要引入到INPUT链中

删除自定义链

SNAT和DNAT

SNAT:源地址转换

DNAT:目的地址转换

NAT:地址转换

内----------外:内网的ip不能直接和公网的ip通信,必须要把内网地址转换成可以和公网ip通信的地址

外----------内:外网的ip也不能直接和内网的ip通信,必须要把外网地址转换成可以和内网ip通信的地址

实验

test1 192.168.233.10 内网 192.168.233.254

test2 192.168.233.20 网关服务器 ens33 ens36

test3 192.168.233.30 外网 12.0.0.10 12.0.0.254

sysctl.conf: linux系统内核的接口文件,修改配置内核的参数使之永久生效

test2 网关服务器

test1 test3

systemctl restart nginx

test1

test3

test1 test2 test 3

netplan apply 重启生效

test2

test1

打开浏览器访问查看日志 12.0.0.10

test3

DNAT

目的地址转换和内网的映射

test2

test3

打开浏览器访问查看日志11.0.0.11

test1

怎么在linux系统中抓包

抓包命令 tcpdump

静态抓包

tcpdump 开头

tcp:协议 icmp udp

-i ens33 指定设备名称 从哪个设备经过的数据包

-t 不显示时间戳

-s0:默认抓包的长度是68字节,s0就是抓取完整的数据包

-c 10 :抓取多个数据包

and dst port 目标端口 80 和80相关的数据包

and src net 源ip是190.168.233.0/24这个网段的ip地址

-w:抓包的结果保存到指定目标文件中

.cap :只是抓取数据包的内容,但是linux系统不能查看抓包的数据包,需要在Wireshark中查看

sz 目标文件文件

动态抓包

firewalld:

firewalld是根据区域来进行配置不同的规则,和硬件防火墙相似

区域:

1、trusted 信任区,所有的流量都可以进入

2、public 公共区域,默认区,只允许系统默认的规则(ssh和icmp协议),其他的流量传入全部拒绝

3、external 外部区域,只允许系统默认的规则(ssh和icmp协议),其他的流量传入全部拒绝,经过此区域的流量可以将ipv4的地址进行伪装

4、home 家庭区域 只允许系统默认的规则(ssh和icmp协议,dhcpv6协议),其他的流量传入全部拒绝

5、internal 内部区域 只允许系统默认的规则(ssh和icmp协议,dhcpv6协议),其他的流量传入全部拒绝

6、work 工作区域 只允许系统默认的规则(ssh和icmp协议,dhcpv6协议),其他的流量传入全部拒绝

7、block 限制区 拒绝所有流量的传入

8、drop 丢弃区域 拒绝所有流量的传入,没有回显信息

9、DMZ 非军事区域 只允许系统默认的规则(ssh协议),其他的流量传入全部拒绝

命令行的配置方法:

firewall-cmd

1、查看系统的默认区域

2、查看区域的默认规则

3、修改默认区域

4、把80端口放行,添加到公共区域

5、添加多个服务

6、移除服务

7、添加端口

一次性添加多个端口

案例

查看的配置文件

禁止指定IP地址ping通本机以及允许

协议在前端口在后

断开目的主机的指定端口

删除规则

修改规则

修改链的默认策略

拒绝所有

禁止233这个网段从ens33这个设备进入

禁止网段访问nginx服务

一次性匹配多个端口(小的端口在前,大的端口在后)

永久保存配置文件

apt -y install iptables-persistent

ubuntu

方法一:

方法二:(还是临时)

centos

方法一

方法二(也是临时)

面试题

四表五链

通信的要素:协议 ip 端口

通信的5大要素:协议 源ip目的ip 源端口 目的端口

通信的四大要素:源ip目的ip 源端口 目的端口

端口:就是对应的应用在主机上的唯一标识

相关推荐
Lightning-py6 分钟前
Linux命令cat /proc/net/snmp查看网络协议层面统计信息
网络·网络协议·tcp/ip
newxtc11 分钟前
【JJ斗地主-注册安全分析报告】
开发语言·javascript·人工智能·安全
wo32586614534 分钟前
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
开发语言·网络·php
光路科技2 小时前
TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?
服务器·网络·重构
毒果3 小时前
网络安全全景解析
安全·web安全
云盾安全防护3 小时前
CC攻击与WAF的对抗战
网络·安全·ddos
还是鼠鼠4 小时前
HTTP 请求协议简单介绍
java·开发语言·网络·网络协议·http
网硕互联的小客服5 小时前
如何在服务器上部署 Python Django 应用
linux·运维·服务器·网络·安全
渗透好难5 小时前
CTF show 数学不及格
安全·系统安全·密码学
百度安全6 小时前
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
安全·百度