管理网络安全

1.管理服务器的防火墙

(1)netfilter

Linux 内核提供了 netfilter 框架,它是网络流量操作(如数据包过滤、网络地址转换和端口转换)的框架。netfilter 框架包含用于内核模块的 hook。

(2)nftables -->定义防火墙规则

nftables 数据包分类框架基于netfilter 框架而构建,可将防火墙规则应用到网络流量。在 RHEL9 中,nftables 是系统防火墙核心,取代了已弃用的 iptables 框架

(3)firewalld

firewalld 是一个防火墙管理器,它是 nftables 框架的前端(使用 nft 命令)

在 nftables 之前,firewalld 是一种 iptables 服务的替代方案,firewalld 曾使用 iptables 命令来直接配置 netfilter

借助 firewalld,可以将所有网络流量分为多个 zone,从而简化防火墙。根据数据包源 IP 地址或传入网络接口等条件,流量将转入相应 zone 的防火墙规则。每个 zone 都有自己的端口和服务列表,它们处于打开或者关闭状态

预定义服务

Firewalld 上有一些预定义服务。这些服务定义可帮助识别要配置的特定网络服务。例如,可指定预构建的 nfs 服务来配置正确的端口和协议,而无需研究 nfs 服务的相关端口

服务名称 配置
SSH 本地 SSH 服务器,到 22/tcp 的流量
dhcpv6-client 本地 DHCPv6 客户端,到 fe80::/64 IPv6 网络中 546/udp 的流量
ipp-client 本地 IPP 打印,到 631/udp 的流量
samba-client 本地 Windows 文件和打印共享客户端,到 137/udp 和 138/udp 的流量
mdns 多播 DNS (mDNS) 本地链路名称解析,到 5353/udp 指向 224.0.0.251 (IPv4) 或 ff02::fb (IPv6) 多播地址的流量

(3)从命令行定义防火墙

firewall-cmd是firewalld的客户端

几乎所有命令都作用于 runtime 配置,当指定 --permanent 选项时除外

如果指定了 --permanent(修改配置文件),还须通过运行 firewall-cmd --reload 命令来激活设置,它将读取当前的永久配置并将其作为新的 runtime 配置来应用

许多命令都采用 --zone=ZONE 选项来确定所影响的区域

如果需要子网掩码,可使用 CIDR 表示法,如 192.168.1/24

2.SElinux端口标记

列出端口标签 --> semanage port -l

使用 grep 命令,通过服务名称过滤 SELinux 端口标签

root@host \~# semanage port -l | grep ftp

ftp_data_port_t tcp 20

ftp_port_t tcp 21, 989, 990

ftp_port_t udp 989, 990

tftp_port_t udp 69

使用 grep 命令,通过端口号过滤 SELinux 端口标签

root@host \~# semanage port -l | grep -w 70

gopher_port_t tcp 70

gopher_port_t udp 70

管理端口标签

使用 semanage 命令可以分配新端口标签、删除端口标签或修改现有端口标签,-a 添加;-t 类型;-p 协议

删除端口标签

  • 删除自定义端口标签的语法与添加端口标签的语法相同,使用 -d 选项

    shell

    复制代码
    [root@host ~]# semanage port -d -t gopher_port_t -p tcp 71

修改端口标签

  • 使用 -m 选项更改端口绑定,这种流程比删旧添新更高效

    shell

    复制代码
    [root@server ~]# semanage port -m -t http_port_t -p tcp 71
相关推荐
名字还没想好☜4 小时前
Kubernetes 用 kubectl port-forward 和 proxy 调试集群内服务:两者区别、断连自动重连与为什么别用在生产
运维·docker·kubernetes
H_oRIZoN_5 小时前
Linux入门DAY44 ARM 入门 Day02|ARM 汇编指令、模式切换、栈操作、汇编 C 混合编程
linux·单片机·嵌入式硬件·arm·linux应用编程
程序员-Benothing6 小时前
Linux文件查看与编辑:cat、less、tail、vim快速入门
linux·运维·服务器
考虑考虑12 小时前
docker compose V2版本新属性
运维·后端·自动化运维
AlanBruce13 小时前
摩尔信使MThings功能综述与应用使用指南
linux·自动化·plc·mthings·摩尔信使
小小的木头人13 小时前
Ubuntu Samba修改端口绕过445封禁挂载
运维·ubuntu
wdfk_prog15 小时前
ROS教程:01 搭建 ROS1 Noetic Docker 开发环境
运维·缓存·docker·容器·ros
SEO_juper15 小时前
Java 并发编程实战:从线程基础到高并发架构
运维·人工智能·爬虫·chatgpt·seo
szephyr16 小时前
Docker + Compose 实战:把本地项目一键搬到云服务器,附完整配置
运维·docker·容器·部署·云服务器
wdfk_prog16 小时前
ros教程02:创建 catkin Workspace、Package 与第一个 ROS1 C++ Node
运维·缓存·docker·容器·ros