【操作系统】安全管理/防火墙

防火墙

防火墙工具

在这里插入图片描述

Netfilter

1. 是Linux操作系统核心层内部的一个数据包处理模块,Linux平台下的包过滤防火墙;

2.作用:
	网络地址转换
	数据包内容修改
	数据包过滤的防火墙功能 ***(要介绍的部分)
相关定义:
1. 表 tables:规则的集合(功能相似 的 规则 的集合)
2. 链 chains:关卡(一个关卡,可能有多个规则)
3. 规则 policy:匹配条件,处理动作

例子

在这里插入图片描述

链、表、规则

在这里插入图片描述

在这里插入图片描述

常见的4类表:
1. raw表:关闭nat表上启动的连接追踪机制 iptable_raw
2. mangle表:拆解报文,做出修改,并重新封装 iptable_mangle
3. nat表:Network Address Translation,网络地址转换 iptable_net
4. filter表:负责过滤功能,防护墙功能 iptable_filter

在这里插入图片描述

注意:
1 - 每个关卡能调用的 表 是不同的;
2 - 五个关卡基本是固定的:
	PREROUTING
	INPUT
	FORWARD
	POSTROUTING
	OUTPUT:4个表

规则

系统防火墙 - Firewalld

静态防火墙

只要修改规则,所有的规则都要重新载入,如:iptables service

动态防火墙

任何规则的变更都不需要对整个防火墙规则列表进行重新加载,只要将变更的部分保存并更新到运行中 的 iptables 即可,如 :firewalld

区域

Firewalld将网卡对应到不同的区域(zone)

zone默认有9个

1. block
2. dmz
3. drop
4. external
5. home
6. internal
7. public
8. trusted
9. work

可以理解为:9个样板间

不同的zone对待数据包的默认行为不同,

在kylinos中,默认区域是public

firewalld默认每个服务是拒绝的,需要去设置才能放行;

区域(zone) 默认策略规则
trusted 可接受所有网络连接,允许所有数据包进出
home 用于家庭网络,基本信任网络内的其他主机不会危害该主机。流量、ssh、mdns、ipp-client、amba-client 和 dhcpv6-client 服务相关,允许进入
internal 用于内部网络,等同于home
work 用于工作区,基本信任网络内的其他主机不会危害该主机。仅 流量、ssh、ipp-client和 dhcpv6-client 服务相关,允许进入
public 在公共区域使用,不信任网络内的其他计算机,只能接受经过选取的连接。流量、ssh和 dhcpv6-client 服务相关,允许进入
external 为路由器启用了 伪装功能 的外部网,不信任网络内的其他计算机。流量和ssh服务相关,可以进入
dmz 非军事区,此区域内可公开访问,可以有限的进入内部网络。流量和ssh服务相关,可以进入
block 限制,任何接收的网络连接都会被拒绝
drop 丢弃,任何接收的网络数据包都会被丢弃,仅能有发送出去的网络连接

命令行操作 firewall

基础命令

命令 功能
systemctl start firewalld 开启防火墙
systemct enable firewalld 开机自启防火墙
systemct stop firewalld 关闭防火墙
systemct disable firewalld 开机自动关闭防火墙
firewall-cmd state 查看防火墙状态
firewall-cmd --get-active-zones 查看防火墙管理的设备
firewall-cmd --get-default-zone 查看防火墙默认开启的区域
firewall-cmd --get-zones 查看防火墙的所有区域
firewall-cmd --zone=public --list-all 列出public区域的服务 设置
firewall-cmd --get-services 列出可使用的服务
firewall-cmd --set-default-zone=trusted 修改默认区域为trusted
firewall-cmd --list-all-zones 列出所有的域

查看防火墙状态

firewall-cmd state	#防护墙状态
systemctl status firewalld	#防火墙状态

关闭防火墙

systemctl stop firewalld.service	#关闭防火墙

启动防火墙

systemctl start firewalld.service

开机自启防火墙

systemctl enable firewalld.service

修改安全策略

命令 功能
firewalld-cmd --add-service=https 临时添加服务(默认区域)
firewalld-cmd --remove-service=https --permanent 永久删除服务
firewalld-cmd --add-port=80/tcp 临时添加端口
firewalld-cmd --remove-interface=eth0 删除接口
firewalld-cmd --permanent --change-interface=eth1 --zone=trusted 永久更改接口区域
firewalld-cmd --add-source=172.25.254.100 --zone=block 临时拒绝主机172.25.254.100的所有网络连接
firewalld-cmd --remove-source=172.25.254.100 --zone=block --permanent 永久移除限制
firewalld-cmd --complete-reload 中断连接,重启防火墙策略
firewalld-cmd --reload 不中断连接,重启防火墙策略
firewalld-cmd --direct --get-all-rules 查看设置的规则

猜你喜欢

转载自blog.csdn.net/Sanayeah/article/details/126923244