Skip to content

等保测评设备配置备份目录安全整改报告

1. 整改概述

为落实等级保护2.0关于重要数据存储安全、配置变更管控、数据完整性、操作审计的相关要求,对网络设备、安全设备自动配置备份统一存储目录 /data/backup 进行专项安全整改。

本目录统一存放全网设备自动备份配置文件,属于系统重要配置数据,存在被篡改、删除、未授权读取等风险。本次整改完成目录权限加固、数据完整性校验、定时巡检、系统审计、配置变更管控闭环,满足等保核查要求。

2. 整改前风险现状

  • 备份目录默认权限宽松,存在越权访问风险;

  • 配置文件无完整性校验机制,无法发现文件篡改、替换、删除行为;

  • 目录操作无审计日志,无法追溯读取、修改、删除操作;

  • 自动备份文件无规范基线管理,无法区分临时快照与正式基线配置;

  • 配置变更未与基线更新联动,不符合配置变更管控要求。

3. 目录标准化加固(已落地)

3.1 目录归属与权限最小化

统一备份目录:/data/backup

执行权限加固:仅 root 用户具备读写权限,杜绝普通用户、Web 权限、第三方服务账号访问。

mkdir -p /data/backup
chown root:root /data/backup
chmod 700 /data/backup

权限说明:700 权限保证除 root 外无任何账号可读取、修改、遍历备份配置文件。

3.2 独立哈希基线存储目录(隔离防篡改)

为保障备份配置文件完整性,创建独立隔离哈希存储目录,与原始备份目录物理隔离,防止攻击者篡改文件同时篡改校验值。

哈希基线目录:/srv/net_backup/hash_baseline/all_device_config

mkdir -p /srv/net_backup/hash_baseline/all_device_config
chown root:root /srv/net_backup/hash_baseline/all_device_config
chmod 700 /srv/net_backup/hash_baseline/all_device_config

所有设备配置备份的 SHA256 校验值统一隔离存储,不与原始备份文件同目录,满足等保“校验值隔离存储”要求。

4. 数据完整性保障机制(全自动落地)

4.1 新增自动哈希基线生成机制

部署定时脚本,每15分钟自动扫描 /data/backup 新增配置备份文件,自动生成 SHA256 哈希基线,永久留存,实现“新增即存基线”。

脚本路径:/usr/local/bin/gen_all_device_config_hash.sh

完整可执行脚本内容:

#!/bin/bash
# 全网设备配置备份哈希自动生成脚本
# 适配目录:/data/backup
# 功能:自动为新增设备配置备份文件生成SHA256完整性哈希,隔离存储

# 全局路径变量
CONFIG_BACKUP_DIR="/data/backup"
HASH_STORE_DIR="/srv/net_backup/hash_baseline/all_device_config"
LOG_PATH="/var/log/all_device_config.log"

# 初始化目录并锁定权限
mkdir -p ${HASH_STORE_DIR}
chmod 700 ${HASH_STORE_DIR}
chown root:root ${HASH_STORE_DIR}

# 遍历所有配置备份文件,仅对未生成哈希的新文件进行处理
for cfg_file in "${CONFIG_BACKUP_DIR}"/*;
do
    # 仅处理普通文件,跳过文件夹、空文件、特殊文件
    if [ ! -f "${cfg_file}" ];then
        continue
    fi

    file_name=$(basename "${cfg_file}")
    hash_file_full="${HASH_STORE_DIR}/${file_name}.sha256"

    # 已存在哈希文件则跳过,避免重复生成
    if [ -f "${hash_file_full}" ];then
        continue
    fi

    # 生成SHA256哈希值并写入文件
    sha256sum "${cfg_file}" > "${hash_file_full}"

    # 锁定哈希文件权限,防止篡改
    chmod 600 "${hash_file_full}"
    chown root:root "${hash_file_full}"

    # 记录运行日志
    echo "$(date '+%Y-%m-%d %H:%M:%S') [INFO] 新增配置文件哈希生成成功:${file_name}" >> ${LOG_PATH}
done

exit 0

日志路径:/var/log/all_device_config.log

4.2 每日全量完整性巡检校验

每日凌晨自动对 /data/backup 目录下所有备份配置文件进行全量哈希比对,一旦发现文件被篡改、替换、删除,立即写入异常日志,留存审计证据。

脚本路径:/usr/local/bin/check_all_device_config_integrity.sh

完整可执行脚本内容:

#!/bin/bash
# 全网设备配置备份完整性校验脚本
# 适配目录:/data/backup
# 功能:全量比对配置文件与哈希基线,发现篡改、删除、异常并告警

# 全局路径变量
CONFIG_BACKUP_DIR="/data/backup"
HASH_STORE_DIR="/srv/net_backup/hash_baseline/all_device_config"
LOG_PATH="/var/log/all_device_config.log"

# 前置校验核心目录是否存在
if [ ! -d "${CONFIG_BACKUP_DIR}" ];then
    echo "$(date '+%Y-%m-%d %H:%M:%S') [ERROR] 配置备份目录${CONFIG_BACKUP_DIR}不存在,校验终止" >> ${LOG_PATH}
    exit 1
fi

if [ ! -d "${HASH_STORE_DIR}" ];then
    echo "$(date '+%Y-%m-%d %H:%M:%S') [ERROR] 哈希存储目录${HASH_STORE_DIR}不存在,校验终止" >> ${LOG_PATH}
    exit 1
fi

# 全局标记,统计异常数量
ERROR_COUNT=0

# 遍历所有哈希基线文件,逐一对校原始配置文件
for hash_file in "${HASH_STORE_DIR}"/*.sha256;
do
    if [ ! -f "${hash_file}" ];then
        continue
    fi

    # 执行哈希完整性校验
    if sha256sum -c "${hash_file}" >> ${LOG_PATH} 2>&1;then
        echo "$(date '+%Y-%m-%d %H:%M:%S') [PASS] 配置文件校验正常:${hash_file}" >> ${LOG_PATH}
    else
        echo "$(date '+%Y-%m-%d %H:%M:%S') [ALERT] 配置文件完整性异常(篡改/删除/修改):${hash_file}" | tee -a ${LOG_PATH}
        ERROR_COUNT=$((ERROR_COUNT+1))
    fi
done

# 汇总校验结果
if [ ${ERROR_COUNT} -eq 0 ];then
    echo "$(date '+%Y-%m-%d %H:%M:%S') [FINISH] 本次全量完整性校验完成,无异常" >> ${LOG_PATH}
else
    echo "$(date '+%Y-%m-%d %H:%M:%S') [FINISH] 本次校验发现${ERROR_COUNT}处配置文件异常,请及时核查修复" | tee -a ${LOG_PATH}
fi

exit 0

4.3 定时任务配置

4.4 脚本权限与定时任务部署命令

脚本权限固化(最小权限原则,防止篡改、越权执行):

# 脚本授权固化
chmod 700 /usr/local/bin/gen_all_device_config_hash.sh
chown root:root /usr/local/bin/gen_all_device_config_hash.sh
chmod 700 /usr/local/bin/check_all_device_config_integrity.sh
chown root:root /usr/local/bin/check_all_device_config_integrity.sh

系统定时任务配置(root用户级,全自动无人值守运行):

# 编辑定时任务
crontab -e

# 每15分钟自动生成新增配置哈希基线
*/15 * * * * /usr/local/bin/gen_all_device_config_hash.sh
# 每日凌晨2点全量校验配置文件完整性
0 2 * * * /usr/local/bin/check_all_device_config_integrity.sh

5. 目录全行为审计(auditd 完整审计)

安装系统审计服务 auditd,对 /data/backup 目录进行读、写、新增、删除、属性变更全行为审计,全程不可绕过、不可删除审计记录。

5.1 审计规则

文件路径:/etc/audit/rules.d/all_device_config.rules

-w /data/backup -p rwxa -k all_device_config_monitor

参数说明:

  • r:读取文件审计

  • w:写入修改审计

  • x:执行访问审计

  • a:属性变更审计

5.2 审计日志留存

审计日志路径:/var/log/audit/audit.log

支持关键字检索追溯:

ausearch -k all_device_config_monitor

所有人员对备份配置的访问、修改、删除行为均可追溯,满足等保审计留存要求。

6. 整改后安全能力总结

本次针对 /data/backup 设备配置备份目录整改后,已完全具备以下等保合规能力:

  • 目录权限最小化,杜绝未授权访问;

  • 备份文件 SHA256 完整性校验,可精准发现篡改、删除、替换行为;

  • 校验值独立隔离存储,不存在单点篡改风险;

  • 全操作行为审计留存,可追溯所有访问与修改记录;

  • 全自动巡检告警,长期保持合规状态。

  • 全自动巡检告警,长期保持合规状态。

7. 现场测评可出示证据清单

  • /data/backup 目录 700 权限截图

  • 哈希基线独立目录权限截图

  • 自动哈希生成、完整性校验脚本内容

  • crontab 定时任务配置

  • 完整性校验运行日志

  • auditd 审计规则、生效状态、审计日志

  • 配置变更工单与基线更新闭环记录