档案数据加密管理员实操培训:全流程配置运维与应急处置指南
前置准备
环境与工具准备
所有工具均符合《档案数据加密规范》DA/T 78-2019国密要求,可直接下载使用:
- 加密工具:OpenSSL 1.1.1及以上版本(支持SM2/SM3/SM4国密算法),下载地址:https://www.openssl.org/source/
- 权限管理工具:Casdoor v1.40.0(开源身份权限管理系统,符合三权分立要求),下载地址:https://github.com/casdoor/casdoor/releases/tag/v1.40.0
- 服务器配置:2核4G,磁盘剩余空间不小于档案总存量的2倍,关闭不必要的公网端口
- 必备材料:单位档案目录清单、管理员身份Ukey、档案加密等级定级表
实操步骤1:档案加密体系初始化配置
1.1 加密密钥生成与存储
所有密钥生成操作需在离线服务器上执行,全程断网:
- 生成SM4对称加密密钥(用于档案内容加密),执行命令: ``` openssl rand -hex 16 > sm4_file_key.key ```
- 生成SM2非对称密钥对(用于密钥加密传输、身份验签),执行命令: ``` 生成SM2私钥 openssl ecparam -name SM2 -genkey -noout -out sm2_private.key 导出SM2公钥 openssl ec -in sm2_private.key -pubout -out sm2_public.key ```
- 密钥存储要求:SM2私钥拆分3份,分别由3名核心管理员离线存储在独立Ukey中,禁止联网存储;SM4密钥加密后存储在Casdoor密钥管理模块,仅授权加密进程可读取
1.2 权限体系配置
- 登录Casdoor后台,默认地址http://服务器IP:8000,默认账号admin、密码123456,首次登录必须强制修改密码,复杂度要求8位以上,含大小写、数字、特殊字符,绑定管理员Ukey校验
- 新建3个独立角色,配置最小权限:档案查看员仅可解密查看权限范围内的档案、档案录入员仅可上传档案触发自动加密、加密审计员仅可查看操作日志,不可访问任何档案内容
- 配置访问规则:所有用户访问档案系统必须插入对应身份Ukey,校验通过才可操作,无Ukey直接拒绝所有请求
实操步骤2:存量/增量档案加密执行
2.1 存量档案批量加密
使用以下可直接复制的shell脚本执行批量加密,执行前需将明文档案存入/data/raw_archives目录:
``` !/bin/bash 存量档案批量加密脚本,支持所有格式档案 KEY=$(cat sm4_file_key.key) INPUT_DIR="/data/raw_archives" OUTPUT_DIR="/data/encrypted_archives" LOG_PATH="/var/log/archive_encrypt.log" mkdir -p $OUTPUT_DIR for file in $(find $INPUT_DIR -type f) do 生成随机IV,避免相同内容加密后结果一致 IV=$(openssl rand -hex 16) openssl enc -sm4 -e -in $file -out $OUTPUT_DIR/$(basename $file).enc -K $KEY -iv $IV 记录加密文件哈希值与IV,用于后续校验 RAW_HASH=$(openssl dgst -sm3 $file | awk '{print $2}') echo "$(date '+%Y-%m-%d %H:%M:%S') 加密完成 原文件:$file 哈希值:$RAW_HASH IV:$IV" >> $LOG_PATH done ```
加密完成后必须逐文件校验:随机抽取10%的加密文件解密,比对解密后文件与原文件的SM3哈希值,完全一致才可删除明文原始档案,明文档案需离线备份至少3份
2.2 增量档案自动加密配置
- 安装目录监控工具:CentOS系执行
yum install inotify-tools -y,Debian系执行apt install inotify-tools -y - 创建自动加密脚本/opt/auto_encrypt.sh,内容如下: ``` !/bin/bash KEY=$(cat sm4_file_key.key) MONITOR_DIR="/data/upload_archives" OUTPUT_DIR="/data/encrypted_archives" LOG_PATH="/var/log/archive_encrypt.log" mkdir -p $MONITOR_DIR $OUTPUT_DIR inotifywait -m $MONITOR_DIR -e create,moved_to | while read path action file do IV=$(openssl rand -hex 16) openssl enc -sm4 -e -in $path$file -out $OUTPUT_DIR/${file}.enc -K $KEY -iv $IV RAW_HASH=$(openssl dgst -sm3 $path$file | awk '{print $2}') echo "$(date '+%Y-%m-%d %H:%M:%S') 增量加密完成 原文件:$file 哈希值:$RAW_HASH IV:$IV" >> $LOG_PATH 自动删除上传目录明文文件 rm -f $path$file done ```
- 设置开机自启:执行
chmod +x /opt/auto_encrypt.sh && echo "/opt/auto_encrypt.sh &" >> /etc/rc.local && chmod +x /etc/rc.local
实操步骤3:日常运维与审计
3.1 加密体系巡检
- 每周检查加密日志,确认无未授权加密/解密操作,日志异常告警规则配置到Casdoor告警模块,触发异常立即推送短信给管理员
- 每月随机抽取5%的存量加密文件解密校验哈希值,确认文件未被篡改、加密体系正常运行
- 每90天更换一次SM4加密密钥,更换前全量解密存量档案,用新密钥重新加密,密钥更换全过程必须3名管理员同时在场,全程录像存档
3.2 审计日志留存
所有加密、解密、权限变更、密钥更换操作日志必须留存10年以上,不得删除、篡改,日志每月导出一次,同步备份到离线存储介质。
实操步骤4:应急处置
4.1 密钥丢失处置
- 丢失1份SM2私钥:立即用剩余2份私钥重组,生成新的密钥对,全量重新加密所有档案,废弃原有密钥
- 丢失2份及以上私钥:立即断开加密服务器公网连接,启用离线备份的密钥副本,排查密钥泄露风险,确认无泄露后重新生成密钥对加密全量档案
4.2 加密文件损坏处置
首先从离线备份介质恢复明文文件,重新加密;如果明文备份也损坏,使用SM4密钥解密损坏文件,修复后重新加密,修复过程需审计员全程在场,所有操作记录完整日志存档。