防火墙的相关知识点与iptables源地址转换实验

一、防火墙

1、防火墙的分类:

  • 硬件防火墙:由厂商设计好的主机硬件,其操作系统主要以提供数据包数据的过滤机制为主,并去掉不必要的功能

  • 软件防火墙:保护系统网络安全的一套软件(或称为机制),如Netfilter(数据包过滤机制)

2、防火墙无法完成的任务

  • 防火墙并不能杀毒或清除木马程序(假设主机开放了www服务,防火墙的设置是一定要将www服务的port开放给client端的。假设www服务器软件有漏洞,或者请求www服务的数据包本身就是病毒的一部分时,防火墙是阻止不了的)

  • 防火墙无法阻止来自内部LAN的攻击(防火墙对于内部的规则设置通常比较少,所以就很容易造成内部员工对于网络无用或滥用的情况)

3、Netfilter(数据包过滤)

定义:

  • netfilter 是一个工作在 Linux 内核的网络数据包处理框架,用于分析进入主机的网络数据包,将数据包的头部数据(硬件地址,软件地址,TCP、UDP、ICMP等)提取出来进行分析,以决定该连接为放行或拒绝的机制,主要用于分析OSI七层协议的2、3、4层。

内容:

  • 拒绝让Internet的数据包进入主机的某些端口

  • 拒绝某些来源IP的数据包进入

  • 拒绝让带有某些特殊标志(flag)的数据包进入,如:带有SYN的主动连接标志

  • 分析MAC地址决定是否连接

二、iptables

1、iptables

  • 早期的 Linux 系统中,默认使用 iptables 防火墙来管理服务和配置防火墙,虽然新型的 firewalld 防火墙管理服务已经被投入使用多年,但iptables 在当前生产环境中还继续使用 ,具有顽强的生命力

2、iptables流量处理动作

  • 当规则链匹配后应采用以下几种动作来处理匹配流量

  • ACCEPT:允许流量通过

  • REJECT:拒绝流量通过,拒绝后回复拒绝信息

  • LOG:记录日志信息

  • DROP:拒绝流量通过,流量丢弃不响应

3、iptables的命令

(1)Euler中默认使用的是firewalld,且与iptables之间有冲突,如果需要使用 iptables 需要先停止firewalld再进行安装:

bash 复制代码
[root@server ~]# systemctl stop  firewalld	#关闭防火墙
[root@server ~]# systemctl disable  firewalld	#禁用firewalld服务,系统启动时不在运行

(2)安装iptables并检查iptables的状态

bash 复制代码
[root@server ~]# yum  install  iptables

[root@server ~]# systemctl status  iptables
○ iptables.service - IPv4 firewall with iptables
     Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; vendor preset: disabled)
     Active: inactive (dead)

(3)iptables的命令格式:

bash 复制代码
iptables [-t 表名] 选项 [链名] [条件] [-j 控制动作]



iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> --sport 源端口 <-d 目标IP/目标子网> --dport 目标端口 -j 控制动作

(4)iptables情况规则

bash 复制代码
[root@server ~]# iptables  -F  # 清空规则
[root@server ~]# iptables  -nL # 查看规则链
[root@server ~]# systemctl restart  iptables
[root@server ~]# iptables  -nL  # 由于未保存,则恢复原状

[root@server ~]# iptables -F              # 再次尝试清空规则链
[root@server ~]# service iptables save    # 保存服务状态
iptables: Saving firewall rules to /etc/sysconfig/iptables: [  OK  ]
[root@server ~]# systemctl restart  iptables  # 重启服务
[root@server ~]# iptables  -nL            # 查看

三、firewalld

1、firewalld的特点

  • firewalld可以动态修改单条规则,不需要像iptables那样,修改规则后必须全部刷新才可生效

  • firewalld默认动作是拒绝,则每个服务都需要去设置才能放行,而iptables里默认是每个服务是允许,需要拒绝的才去限制

  • iptables防火墙类型为静态防火墙firewalld 防火墙类型为动态防火墙

  • firewalld和iptables一样自身并不具备防火墙功能,它们的作用都是用于维护规则,而真正使用规则干活的是内核防火墙模块

  • firewalld 加入了区域(zone)概念

2、zone文件中的过滤规则

  • 过滤规则优先级:

    • source(最高)

    • interface(次之)

    • 默认zone(最低)

  • 规则:

规则 作用
scource 源IP地址过滤(常用)
interface 网卡过滤
service 服务名(实际是关联端口)过滤
port 端口过滤
icmp-block ICMP报文过滤
masquerade IP地址伪装
forward-port 端口转发过滤
rule 自定义规则

(1)firewall-cmd可视化界面工具

安装

bash 复制代码
# 注意:需要再可视化界面下使用

[root@server ~]# systemctl  start firewalld     # 启用

[root@server ~]# systemctl  enable  firewalld   # 开机启动

		# 安装DDE图形化桌面

[root@server ~]# yum  install  firewall-config  -y  # 安装图形化界面

不要在xshell执行

bash 复制代码
[root@server ~]# firewall-config

3、firewall-cmd基本命令

bash 复制代码
[root@server ~]# firewall-cmd --version  # 查看版本

[root@server ~]# firewall-cmd --help     # 查看帮助信息

[root@server ~]# firewall-cmd  --state   # 显示状态

[root@server ~]# firewall-cmd  --get-services  # 查看防火墙管理的服务

[root@server ~]# firewall-cmd  --list-all  # 查看区域中的规则

[root@server ~]# firewall-cmd  --panic-on   # 启用紧急模式

[root@server ~]# firewall-cmd  --panic-off  # 关闭紧急模式

四、iptables的源地址转换实验

1、首先需要三台虚拟机

(1)第一台网络适配器设置为nat模式(配置的地址假设为192.168.108.100/24,网关为192.168.108.200,dns为8.8.8.8)。

(2)第二台网络适配器要有两张,一张是nat模式(假设IP为192.168.108.200,网关为192.168.108.2,dns为8.8.8.8),另一张仅主机模式(假设IP为192.168.81.200,网关为192.168.81.2,dns为8.8.8.8).

(3)第三台网络适配器为仅主机模式(假设IP为192.168.81.100.网关为192.168.81.200.dns为8.8.8.8)

2、在有两张网络适配器上进行以下相关配置(设置源地址伪装)

3、由于是配置iptables源地址转换,所以我们去192.168.108.100的仅nat模式下进行操作并查看自己修改的虚假ip是否成功

画出来的就是以及配置好的源地址伪装的IP(w -i :是用于查询ip)

相关推荐
动感小麦兜1 小时前
00-华为hi3798mv100刷NAS
网络
CXH7282 小时前
架构师的登山之路-第四站-用架构师的视角重新理解网络和安全
网络·安全·php
爱学习的大牛1233 小时前
基于 FRP 实现内网穿透的跨网络 HTTP 服务转发方案
网络·网络协议·http
代码不停3 小时前
网络编程 UDP 和 TCP
网络·tcp/ip·udp
凯子坚持 c4 小时前
Doubao-Seed-Code模型深度剖析:Agentic Coding在Obsidian插件开发中的应用实践
网络·人工智能
小尧嵌入式4 小时前
基于HAL库实现ETH以太网
网络·arm开发·stm32·单片机·嵌入式硬件
元气满满-樱4 小时前
思科:路由条目优化实验
网络·智能路由器
tan180°4 小时前
Linux网络IP(下)(16)
linux·网络·后端·tcp/ip
视觉震撼4 小时前
本地机器远程连接配置与文件传输可行性检测工具
运维·服务器·网络·windows·php·apache