Linux安全防护三件套:Swap、防火墙、SELinux
文章目录Linux安全防护三件套Swap、防火墙、SELinux前言一、Swap交换空间管理1.1 计算机存储层次结构1.2 Swap的作用1.3 Swap大小参考1.4 查看内存1.5 创建和使用Swap二、Firewalld防火墙2.1 防火墙概述2.2 静态防火墙 vs 动态防火墙2.3 Firewalld区域zone2.4 Firewalld配置模式2.5 firewall-cmd常用命令2.6 富规则Rich Rules2.7 panic模式2.8 综合案例三、SELinux安全增强3.1 什么是SELinux3.2 SELinux上下文3.3 SELinux三种模式写在最后查看当前区域规则SELinuxLinux安全防护三件套Swap、防火墙、SELinux内存不够用网络被攻击系统被入侵一文搞定Swap配置、Firewalld防火墙和SELinux加固前言今天的课程是Linux安全与资源管理的核心内容涵盖三个关键模块Swap交换空间——内存不够时用磁盘“顶一顶”理解计算机存储层次结构Firewalld防火墙——控制哪些流量能进出你的服务器网络防护第一道防线SELinux安全增强——即使进程被攻破也能保护用户数据不被窃取一、Swap交换空间管理1.1 计算机存储层次结构计算机中各种存储器组成层状塔式结构取长补短协调工作寄存器 → 最快、最小、最贵CPU内部 CPU Cache → 极快、小SRAM 主存(内存) → 快、中等DRAM 辅助存储 → 慢、大、持久化磁盘/U盘内存带宽计算带宽 频率 × 位宽 / 81.2 Swap的作用Swap是受Linux内核控制的磁盘区域有三个核心功能扩展内存物理内存不足时将不活跃数据暂存磁盘页面交换需要访问磁盘上的页面时交换到内存Hibernate支持休眠时保存RAM内容到Swap⚠️ Swap只是临时方案比物理内存慢得多根本解决是加大物理内存。1.3 Swap大小参考物理内存交换空间允许Hibernate时≤2GB2×RAM3×RAM2-8GB1×RAM2×RAM8-64GB≥4GB1.5×RAM≥64GB≥4GB不建议1.4 查看内存[rootcentos7 ~]free-mtotal usedfreeshared buff/cache available Mem:393133035291213616683485Swap:4063040631.5 创建和使用Swap# 1. 创建分区并设为swap类型[rootcentos7 ~]parted/dev/sdb mklabel gpt[rootcentos7 ~]parted/dev/sdb unit MiB mkpart swap01 linux-swap12049# 2. 格式化swap[rootcentos7 ~]mkswap/dev/sdb1 Setting up swapspace version1, size2097148KiBUUID2bf4e179-3648-4412-9495-3b278df4acd6# 3. 激活swap[rootcentos7 ~]swapon/dev/sdb1# 4. 查看swap设备[rootcentos7 ~]swapon-sFilename Type Size Used Priority /dev/dm-1 partition40632280-2/dev/sdb1 partition20971480-3# 5. 设置优先级数字越大越优先使用[rootcentos7 ~]swapon-p4/dev/sdb1# 6. 停用swap[rootcentos7 ~]swapoff /dev/sdb1# 7. 持久化/etc/fstabUUID2bf4e179-3648-4412-9495-3b278df4acd6 swap swappri400# 8. 激活所有swap[rootcentos7 ~]swapon-a二、Firewalld防火墙2.1 防火墙概述防火墙工作在网络或主机边缘对进出数据包基于规则进行过滤。按实现方式分为硬件防火墙和软件防火墙按网络协议分为网络层防火墙和应用层防火墙。Netfilter子系统是Linux内核的网络过滤子系统用户通过不同工具配置规则工具作用iptables过滤IPv4数据包ip6tables过滤IPv6数据包arptables过滤ARP协议ebtables过滤数据链路层Firewalld是Red Hat开发的动态防火墙CentOS 7起替代iptables成为默认底层仍调用iptables/nftables干活。2.2 静态防火墙 vs 动态防火墙对比项静态防火墙iptables动态防火墙firewalld规则加载修改一条也重新加载全部只更新变更部分连接影响会导致网络连接中断不中断现有连接配置方式service iptables reloadfirewall-cmd --reload2.3 Firewalld区域zonefirewalld将所有网络流量分为多个区域每个区域是一套过滤规则集区域特性trusted允许所有传入流量public仅允许ssh/dhcpv6-client默认区域home/work/internal允许ssh/mdns/samba-client/dhcpv6-clientdmz/external仅允许sshblock拒绝所有传入流量drop丢弃所有传入流量无响应数据包匹配区域优先级源地址匹配 → 应用该区域规则传入接口匹配 → 应用关联区域规则以上都不匹配 → 默认区域2.4 Firewalld配置模式模式选项特点运行时runtime默认立即生效重启丢失永久permanent--permanent写入配置文件需reload生效建议修改防火墙时写两条命令——一条带--permanent永久保存一条不带立即生效。2.5 firewall-cmd常用命令zone管理# 查看zone[rootcentos7 ~]firewall-cmd --get-zones[rootcentos7 ~]firewall-cmd --get-default-zone[rootcentos7 ~]firewall-cmd --get-active-zones# 设置默认zone[rootcentos7 ~]firewall-cmd --set-default-zonetrusted# 查看所有zone规则[rootcentos7 ~]firewall-cmd --list-all-zones[rootcentos7 ~]firewall-cmd --list-all# 查看默认zone[rootcentos7 ~]firewall-cmd --list-all--zonehome# 查看特定zone服务管理[rootcentos7 ~]firewall-cmd --get-services# 查看预定义服务[rootcentos7 ~]firewall-cmd --add-servicehttp# 放行http服务[rootcentos7 ~]firewall-cmd --list-services# 查看已放行服务[rootcentos7 ~]firewall-cmd --query-servicehttp# 检查是否放行[rootcentos7 ~]firewall-cmd --remove-servicehttp# 删除放行端口管理[rootcentos7 ~]firewall-cmd --add-port5900/tcp[rootcentos7 ~]firewall-cmd --list-ports[rootcentos7 ~]firewall-cmd --query-port5900/tcp[rootcentos7 ~]firewall-cmd --remove-port5900/tcp伪装SNAT# 开启伪装让内网机器通过本机访问公网[rootserver ~]firewall-cmd --add-masquerade[rootserver ~]firewall-cmd --query-masquerade[rootserver ~]firewall-cmd --remove-masquerade端口转发DNAT# 访问本机8000 → 本机80[rootcentos7 ~]firewall-cmd --add-forward-portport8000:prototcp:toport80# 访问本机1022 → 10.1.1.11:22[rootcentos7 ~]firewall-cmd --add-forward-portport1022:prototcp:toport22:toaddr10.1.1.11# 查看/删除[rootcentos7 ~]firewall-cmd --list-forward-ports[rootcentos7 ~]firewall-cmd --remove-forward-portport8000:prototcp:toport80⚠️ 端口转发前需确保对应zone已启用masquerade。禁止ping# 方法一禁止特定ICMP类型[rootcentos7 ~]firewall-cmd --add-icmp-block echo-request[rootcentos7 ~]firewall-cmd --list-icmp-blocks# 方法二富规则[rootcentos7 ~]firewall-cmd --add-rich-rulerule protocol valueicmp drop2.6 富规则Rich Rules富规则可灵活实现允许特定IP访问某服务、配置日志审计、限速等。常用语法rule[source][destination]service|port|protocol[log][audit][accept|reject|drop]示例1禁止所有主机ping本机[rootcentos7 ~]firewall-cmd --add-rich-rulerule protocol valueicmp drop示例2只允许10.1.8.10 ping本机# 方法禁止所有再单独允许[rootcentos7 ~]firewall-cmd--permanent--add-icmp-block-inversion[rootcentos7 ~]firewall-cmd--permanent--add-rich-rulerule familyipv4 source address10.1.8.10 icmp-type nameecho-request accept[rootcentos7 ~]firewall-cmd --complete-reload示例3限制特定IP访问HTTP的频率[rootcentos7 ~]firewall-cmd --add-rich-rulerule familyipv4 source address10.1.8.0/24 service namehttp log prefixhttp-error levelerror limit value2/s accept limit value3/s2.7 panic模式# 紧急切断所有网络被攻击时使用[rootcentos7 ~]firewall-cmd --panic-on[rootcentos7 ~]firewall-cmd --query-panic[rootcentos7 ~]firewall-cmd --panic-off2.8 综合案例案例1禁止10.1.8.10主机ping本机[rootcentos7 ~]firewall-cmd--permanent--add-rich-rulerule familyipv4 source address10.1.8.10 icmp-type nameecho-request reject[rootcentos7 ~]firewall-cmd --complete-reload案例2只允许10.1.8.10主机ping本机[rootcentos7 ~]firewall-cmd--permanent--add-icmp-block-inversion[rootcentos7 ~]firewall-cmd--permanent--add-rich-rulerule familyipv4 source address10.1.8.10 icmp-type nameecho-request accept[rootcentos7 ~]firewall-cmd --complete-reload三、SELinux安全增强3.1 什么是SELinuxSELinuxSecurity Enhanced Linux是额外的系统安全层主要目标是防止已被攻破的系统服务访问用户数据。传统文件权限只控制“谁能访问”不控制“如何使用”。例如apache进程被攻破后攻击者拥有apache用户的权限可以访问/tmp等目录。SELinux通过强制访问控制明确定义每个进程、文件、目录、端口的安全标签上下文默认禁止任何未授权的交互。3.2 SELinux上下文每个进程、文件、目录和端口都有SELinux上下文格式为用户:角色:类型:敏感度# 查看进程上下文[rootcentos7 ~]ps-Csshd-Zsystem_u:system_r:sshd_t:s0-s0:c0.c1023951? 00:00:00 sshd# 查看文件上下文[rootcentos7 ~]ls-Z/home unconfined_u:object_r:user_home_dir_t:s0 laoma3.3 SELinux三种模式模式行为用途enforcing强制执行规则拒绝并记录日志生产环境默认permissive加载策略但不强制只记录违规测试和故障排查disabled完全关闭不拒绝不记录不推荐# 查看当前模式[rootcentos7 ~]getenforce# 临时切换不需重启[rootcentos7 ~]setenforce0# 切换为permissive[rootcentos7 ~]setenforce1# 切换为enforcing# 修改默认模式/etc/selinux/config[rootcentos7 ~]vim/etc/selinux/configSELINUXenforcingSELINUXTYPEtargeted模式切换注意事项enforcing ↔ permissive不需重启enforcing/permissive ↔ disabled需要重启写在最后今天的内容是Linux安全与资源管理的核心模块核心工具主要作用Swapmkswap / swapon / swapoff内存不足时的缓冲Firewalldfirewall-cmd网络访问控制SELinuxgetenforce / setenforce进程级访问控制一句话建议Swap根据内存大小合理配置生产环境建议≥4GBFirewalld默认只开放必要的端口和服务public区域SELinux生产环境保持enforcing排障时可临时切permissive核心命令速查# Swapfree-m# 查看内存swapon-s# 查看swap设备swapon/dev/sdb1# 激活swapoff /dev/sdb1# 停用# Firewalldfirewall-cmd --list-all# 查看当前区域规则firewall-cmd --add-servicehttp# 放行服务firewall-cmd --add-port8080/tcp# 放行端口firewall-cmd --add-masquerade# 开启伪装firewall-cmd --add-rich-rulerule ...# 富规则# SELinuxgetenforce# 查看模式setenforce0# 切换permissivesetenforce1# 切换enforcing查看当前区域规则firewall-cmd --add-servicehttp # 放行服务firewall-cmd --add-port8080/tcp # 放行端口firewall-cmd --add-masquerade # 开启伪装firewall-cmd --add-rich-rule‘rule …’ # 富规则SELinuxgetenforce # 查看模式setenforce 0 # 切换permissivesetenforce 1 # 切换enforcing 点点关注持续更新欢迎技术讨论。

相关新闻

CUDA 概述

CUDA 概述

CUDA 概述CUDA 全称 Compute Unified Device Architecture,即统一计算设备架构,由 NVIDIA 推出简单理解,CUDA 是一种让显卡(GPU)不止能画图,还能进行通用计算的技术平台CUDA 包含如下三个层面一个并行计算架…

2026/8/4 3:23:11 阅读更多 →
DMA与AXI总线协同工作原理:从概念到嵌入式系统高效数据传输实践

DMA与AXI总线协同工作原理:从概念到嵌入式系统高效数据传输实践

如果你正在开发一个嵌入式系统,尤其是基于 ARM Cortex-M 或 Zynq 这类 SoC 的平台,那么“DMA”和“AXI”这两个词一定不会陌生。它们经常出现在芯片手册、参考代码和调试日志里,但很多开发者对它们的理解,可能还停留在“DMA 能搬数…

2026/8/4 3:22:11 阅读更多 →
电动汽车充电调度优化与蒙特卡罗仿真实践

电动汽车充电调度优化与蒙特卡罗仿真实践

1. 电动汽车充电调度问题的背景与挑战随着电动汽车保有量的快速增长,充电需求对电网的冲击已成为不可忽视的问题。我曾在某充电站运营项目中亲眼目睹过这样的场景:傍晚6点下班高峰时段,30辆电动汽车同时接入充电桩,导致该片区电网…

2026/8/4 3:22:11 阅读更多 →

最新新闻

UE4/UE5 Pak文件分析器:资源管理、哈希校验与自动化实战

UE4/UE5 Pak文件分析器:资源管理、哈希校验与自动化实战

1. 项目概述:为什么我们需要一个Pak文件分析器? 如果你在UE4/UE5项目开发中摸爬滚打过一段时间,尤其是涉及到内容打包、热更新或者资源安全,那么“Pak文件”这个词对你来说绝对不陌生。它本质上就是虚幻引擎用来打包游戏资源&…

2026/8/4 8:07:21 阅读更多 →
百度网盘提取码智能查询工具:3秒解锁任何分享资源

百度网盘提取码智能查询工具:3秒解锁任何分享资源

百度网盘提取码智能查询工具:3秒解锁任何分享资源 【免费下载链接】baidupankey 在线查询网盘提取码(维护中 rm repo) 项目地址: https://gitcode.com/gh_mirrors/ba/baidupankey 还在为找不到百度网盘提取码而烦恼吗?每次…

2026/8/4 8:07:21 阅读更多 →
S7-200 PLC汽车自动清洗系统设计与实现

S7-200 PLC汽车自动清洗系统设计与实现

1. 项目概述:基于S7-200 PLC的汽车自动清洗系统设计 这个项目实现了一套完整的汽车自动清洗控制系统,核心控制器采用西门子S7-200系列PLC,配合MCGS人机界面实现操作交互。系统通过梯形图编程控制清洗流程,包含喷淋、刷洗、风干等多…

2026/8/4 8:07:21 阅读更多 →
汽车零部件降尘试验箱 整车电子沙尘可靠性测试

汽车零部件降尘试验箱 整车电子沙尘可靠性测试

一、汽车行业沙尘可靠性测试的应用场景 车辆在山区、工地、荒漠、乡村非铺装路面行驶时,空气中悬浮细沙、粉尘会持续冲击车身外部零部件与车载电子总成。车灯外壳、雷达传感器、ECU 控制模块、线束接头、轮毂密封胶圈、车载中控等部件,若防尘结构存在缝隙…

2026/8/4 8:07:21 阅读更多 →
瑞德克斯平台:把客户支持做到位——清单盘点与提示整理

瑞德克斯平台:把客户支持做到位——清单盘点与提示整理

在外汇相关服务里,瑞德克斯平台是否值得长期关注,往往取决于几个清晰的体验点:说明是否好理解、提示是否到位、流程是否连贯、支持是否稳定。下面从这些维度对瑞德克斯平台做一次正向梳理与要点归纳。外汇相关平台的价值,体现在长…

2026/8/4 8:06:21 阅读更多 →
Windows安卓子系统(WSA)开发指南:让安卓应用在Windows 11上完美运行

Windows安卓子系统(WSA)开发指南:让安卓应用在Windows 11上完美运行

Windows安卓子系统(WSA)开发指南:让安卓应用在Windows 11上完美运行 【免费下载链接】WSA Developer-related issues and feature requests for Windows Subsystem for Android 项目地址: https://gitcode.com/gh_mirrors/ws/WSA 你是否曾想过在Windows电脑上…

2026/8/4 8:06:21 阅读更多 →

日新闻

AI Agent白手起家26: 使用标准事件驱动大模型实践

AI Agent白手起家26: 使用标准事件驱动大模型实践

纲要 练习目标:掌握大模型标准事件的调用回顾 LangChain 中的核心标准事件 invokestreambatchastream_eventswith_structured_output 环境准备实战代码:多种事件调用对比 同步调用与流式输出批量处理异步事件流监听结构化输出 运行说明与预期结果总结与扩…

2026/8/4 0:00:40 阅读更多 →
dealsea是什么?跨境卖家必知的美国deal站入门指南

dealsea是什么?跨境卖家必知的美国deal站入门指南

说实话,第一次听说美国这个老牌折扣网站的跨境卖家,十个有八个会问同一个问题:这个平台到底是干嘛的?我见过一个做家居出口的朋友,他在亚马逊上月销二十万美金,却从来没用过它。我给他看了首页——一屏一屏…

2026/8/4 0:01:40 阅读更多 →
清华大学重磅EST:植物自导电闪蒸焦耳热600°C/2600°C两步法!稀土超积累植物秒级转化为CeO₂-石墨烯电催化剂!

清华大学重磅EST:植物自导电闪蒸焦耳热600°C/2600°C两步法!稀土超积累植物秒级转化为CeO₂-石墨烯电催化剂!

通讯作者:邓兵、刘建国通讯单位:清华大学DOI:https://doi.org/10.1021/acs.est.6c00603研究背景稀土元素(REEs)是清洁能源技术与电子器件不可或缺的核心原料,然而传统提取方式依赖能耗高、排放大的采矿与强…

2026/8/4 0:01:40 阅读更多 →

周新闻

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

最大流算法详解:从水管网络到Ford-Fulkerson与Dinic实战

1. 从水管网络到最大流:一个核心问题的诞生想象一下,你是一个城市供水系统的总工程师。你的城市有多个水源(水库),需要通过一个复杂的地下管道网络,将水输送到各个居民区。每条管道都有其最大通水能力&…

2026/8/3 4:58:13 阅读更多 →
基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

基于Springboot的企业门户网站(源码+LW+调试文档+讲解)

温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:本人主页置顶文章(点我)开头有 CSDN 平台…

2026/8/3 1:53:31 阅读更多 →
MATLAB xcorr函数详解:从互相关原理到四大实战应用

MATLAB xcorr函数详解:从互相关原理到四大实战应用

1. 从一次信号“找茬”说起:为什么我们需要互相关几年前,我在处理一组声学传感器数据时遇到了一个棘手的问题。我有两个麦克风记录了一段相同的音频信号,理论上它们接收到的声音波形应该非常相似,只是由于麦克风位置不同&#xff…

2026/8/4 5:26:40 阅读更多 →

月新闻

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南

免费解锁百度网盘SVIP加速:macOS用户必备的下载提速终极指南 【免费下载链接】BaiduNetdiskPlugin-macOS For macOS.百度网盘 破解SVIP、下载速度限制~ 项目地址: https://gitcode.com/gh_mirrors/ba/BaiduNetdiskPlugin-macOS 还在为百度网盘macOS版的龟速下…

2026/8/3 13:07:03 阅读更多 →
终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换

终极ncmdump指南:3分钟实现网易云NCM音乐解密与格式转换 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump解密工具帮你轻松解决这个困…

2026/8/3 5:19:38 阅读更多 →
HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

HarmonyOS 应用开发《掌上英语》第81篇: 智能体卡片:为英语学习 App 打造桌面级学习助手

AgentCard 智能体卡片:为英语学习 App 打造桌面级学习助手适用平台:HarmonyOS 7.0 (API 26 Beta)一、引言 HarmonyOS 7.0(API 26 Beta)新增了 AgentCard 智能体卡片能力,这是继 HMAF(鸿蒙智能体框架&#x…

2026/8/3 8:27:36 阅读更多 →