--- title: 防于未然,先固不破 — Debian 12 快速加固实战 description: 在数字化浪潮席卷全球的今天,服务器已成为承载企业核心业务与数据的“心脏”。一旦这颗心脏被攻破,轻则业务中断,重则数据泄漏、引发监管问责、品牌声誉坍塌,甚至于法律诉讼。 date: 2025-08-15 img: https://img.lijue.net/20250815215319708.png navigation: icon: simple-icons:debian --- ### 前言 在数字化浪潮席卷全球的今天,服务器已成为承载企业核心业务与数据的“心脏”。一旦这颗心脏被攻破,轻则业务中断,重则数据泄漏、引发监管问责、品牌声誉坍塌,甚至于法律诉讼。也正因如此,“我不知道漏洞藏在那里”已经不是借口,而是失责;真正负责任的运维与安全团队,必须把“ **防于未然,先固不破** ”当作铁律。 然而,系统配置千头万绪——从 BIOS 到内核参数,从系统服务到用户策略,从网络栈到文件权限——**千里之堤,溃于蚁穴**,任何一个角落的配置失误,都可能成为攻击者趁虚而入的跳板。“人眼”已无法在短时间内遍历所有细节,唯有借助安全团队丰富的经验与标准化的自动安全审计工具,将复杂环境拆解成可度量的检查项,才能在海量主机、混部容器与虚拟化场景中抽丝剥茧,还原安全真相。 本文将以 **Lynis** 审计工具来还原一次服务器加固实战。 ### 正文 #### 什么是Lynis? Lynis 是一款开源、针对基于 UNIX 系统(如 Linux、macOS、BSD 等)的安全审计工具。它能检测系统配置、文件权限、日志、网络等多个方面,提供详细的安全建议,帮助系统管理员加强系统的安全性。Lynis 通常被系统管理员和网络安全工程师用来评估其系统的安全防御能力。 - 除了“蓝队”之外,如今的渗透测试人员也将 Lynis 作为他们的工具之一。 #### 环境 - **OS**:Debian 12 (bookworm) 全新 Server 最小化安装 - **内核**:6.1.0-12-amd64(Debian 12 官方 6.1 LTS 最新版) - **架构**:x86_64 - **软件源** :启用 Debian Security 及官方主仓库 - **用户**:root 初始登录,已创建 sudo 普通用户 `estel`,后续所有操作便于演示均以 su - 模式执行 - **时间**:NTP 已启用,与 `pool.ntp.org` 同步,时区 UTC+8 - **防火墙**:iptables 未配置(默认空规则) - **已更新**:`apt update && apt full-upgrade -y` 三天前更新 - **已安装包**: Docker nfs-server openssh-server #### 使用 ```bash[bash] # ssh 连接进服务器 # 在合适的目录进行克隆 Lynis git clone https://github.com/CISOfy/lynis #执行安全审查脚本 cd lynis && sudo ./lynis audit system ``` #### 扫描结果部分摘录 ```bash[bash] **[ Lynis 3.1.6 ]** **Lynis security scan details**: **Scan mode**: Normal [▆]  Forensics [ ]  Integration [ ]  Pentest [ ] **Lynis modules**: - Compliance status      [**?**] - Security audit         [**V**] - Vulnerability scan     [**V**] **Details**: Hardening index : **63** [**############**        ] Tests performed : **280** Plugins enabled : **2** **Software components**: - Firewall               [**V**] - Intrusion software     [**X**] - Malware scanner        [**X**] **Files**: - Test and debug information      : **/var/log/lynis.log** - Report data                     : **/var/log/lynis-report.dat** ============================================================== **Lynis** 3.1.6 Auditing, system hardening, and compliance for UNIX-based systems (Linux, macOS, BSD, and others) 2007-2025, CISOfy - https://cisofy.com/lynis/ **Enterprise support available (compliance, plugins, interface and tools)** ``` #### 结果分析 - 根据 Lynis 的体检单 - Hardening Index 63/100 1. 系统概况 - Debian 12,无内核更新,无重启需求,存在 2 个高风险补丁(PKGS-7392)。 2. 关键问题 - GRUB 无密码 ,可单用户模式提权 - SSH 端口为 22,允许 root 登录,多项参数过宽 - 大量 systemd 服务暴露评分 9.x(atd、cron、docker、rsyslog 等) - 未挂载 /var /tmp /home 独立分区,可能导致 DoS - 缺乏防火墙规则审查、恶意软件扫描器、文件完整性监控、审计框架 3. 次要风险 - 仅 1 个 DNS 服务器,NFS 空 exports 文件却运行守护进程 - USB/火线驱动、编译器、核心参数未加固 - 日志未远程归档、登录 banner 未配置 #### 进行服务器加固 ```bash[Debian] # 为便于演示默认以下所有操作均在 root 权限下 su - ``` ```bash[Debian] # 更新系统补丁 apt update && apt dist-upgrade -y ``` 1. 给 GRUB 加密码 ```bash[Debian] apt install -y grub2-common grub-mkpasswd-pbkdf2 # 生成 PBKDF2 哈希 nano /etc/grub.d/40_custom # 追加到配置中 cat <> /etc/ssh/sshd_config </etc/sysctl.d/99-hardening.conf </etc/modprobe.d/blacklist-usb-storage.conf <