核工程数字档案馆系统从零部署到合规上线全流程实操指南

一、前置准备(所有资源均符合核行业涉密要求)

1.1 硬件要求

采用物理服务器主备部署,单台配置:CPU 16核及以上、内存32G及以上、国密加密SSD存储10T及以上,符合《核行业电子文件归档与管理规范》物理隔离要求。

1.2 软件依赖与下载地址

  • 操作系统:CentOS 7.9 2009 minimal,下载地址:https://vault.centos.org/7.9.2009/isos/x86_64/CentOS-7-x86_64-Minimal-2009.iso
  • 运行环境:JDK1.8国密适配版、MySQL 8.0.32、MinIO RELEASE.2023-05-04T21-44-30Z、Nginx 1.24.0

1.3 合规材料准备

提前准备:单位涉密信息系统集成资质复印件、核工程档案密级划分表(绝密/机密/秘密/公开四级)、EJ/T 20003-2012核工业电子文件元数据模板。

二、系统部署实操步骤

2.1 基础环境初始化

登录服务器执行以下命令,关闭防火墙、SELinux,配置时间同步(核工程档案时间精度要求≤1秒):

``` systemctl stop firewalld && systemctl disable firewalld setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config yum install -y chrony && systemctl start chronyd && systemctl enable chronyd timedatectl set-timezone Asia/Shanghai ```

安装JDK:yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel,执行java -version返回openjdk 1.8.0版本即为成功。

2.2 核心依赖服务部署

MySQL部署(开启国密加密插件):

``` yum install -y https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm yum install -y mysql-community-server systemctl start mysqld && systemctl enable mysqld ```

获取初始密码:grep 'temporary password' /var/log/mysqld.log,登录后修改强密码,写入/etc/my.cnf完整配置:

``` [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid default_authentication_plugin=caching_sha2_password plugin-load-add=keyring_file.so keyring_file_data=/var/lib/mysql-keyring/keyring early-plugin-load=keyring_file.so default-character-set=utf8mb4 max_allowed_packet=1G ```

创建业务库与授权用户:

``` CREATE DATABASE nuclear_archive DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'archive_admin'@'%' IDENTIFIED BY '替换为16位以上含大小写数字特殊字符的强密码'; GRANT ALL PRIVILEGES ON nuclear_archive. TO 'archive_admin'@'%'; FLUSH PRIVILEGES; ```

核工程数字档案馆系统从零部署到合规上线全流程实操指南

MinIO对象存储部署(存储涉密档案文件):

``` wget https://dl.min.io/server/minio/release/linux-amd64/minio chmod +x minio && mv minio /usr/local/bin/ mkdir -p /data/minio ```

写入systemd配置/etc/systemd/system/minio.service

``` [Unit] Description=MinIO After=network.target [Service] User=root ExecStart=/usr/local/bin/minio server /data/minio --console-address ":9001" Environment="MINIO_ROOT_USER=minio_admin" Environment="MINIO_ROOT_PASSWORD=替换为16位以上强密码" Restart=always LimitNOFILE=65536 [Install] WantedBy=multi-user.target ```

启动服务:systemctl daemon-reload && systemctl start minio && systemctl enable minio,登录后台创建bucket名为nuclear-archive,开启SSE-S3国密加密。

2.3 核心应用部署

获取核工业统一发放的部署包nuclear-archive-v1.2.0.jar上传到/opt/archive目录,创建配置文件application.yml

``` server: port: 8080 spring: datasource: url: jdbc:mysql://127.0.0.1:3306/nuclear_archive?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf8 username: archive_admin password: 替换为你的MySQL密码 driver-class-name: com.mysql.cj.jdbc.Driver servlet: multipart: max-file-size: 10GB max-request-size: 10GB minio: endpoint: http://127.0.0.1:9000 accessKey: minio_admin secretKey: 替换为你的MinIO密码 bucketName: nuclear-archive nuclear: secret-level: 3 0公开1秘密2机密3绝密,按单位实际配置 meta-standard: EJ/T20003-2012 encrypt-algorithm: SM4 ```

写入systemd启动配置/etc/systemd/system/nuclear-archive.service

``` [Unit] Description=NuclearArchiveSystem After=network.target mysqld.service minio.service [Service] User=root ExecStart=/usr/bin/java -jar /opt/archive/nuclear-archive-v1.2.0.jar --spring.config.location=/opt/archive/application.yml Restart=always LimitNOFILE=65536 [Install] WantedBy=multi-user.target ```

启动应用:systemctl daemon-reload && systemctl start nuclear-archive && systemctl enable nuclear-archive

2.4 核行业专属功能配置

  • 登录后台http://服务器IP:8080,默认账号admin、默认密码Nuclear@2024,首次登录必须修改为16位以上强密码,90天强制更换
  • 进入【系统设置-元数据管理】,导入EJ/T20003-2012统一元数据模板
  • 进入【权限管理-密级分配】,绑定人员涉密等级与档案访问权限,绝密级档案仅核心涉密人员可访问,访问日志保留10年以上
  • 进入【流程管理-归档配置】,开启“双审双签”机制,归档需部门负责人+档案馆管理员双人审核签字

三、合规校验与上线

3.1 功能验证

  • 上传1份秘密级核工程设计图纸,确认系统自动提取元数据、SM4加密存储,明文无法直接打开
  • 用非涉密账号访问该档案,确认无权限且操作记录进入审计日志
  • 手动停止主服务器服务,确认备服务器自动接管,数据无丢失

3.2 合规校验

对照EJ/T 1176-2004《核工业电子文件归档与管理规范》逐项检查:元数据完整率100%、加密算法符合国密要求、审计日志保存≥10年、销毁流程全留痕。全部校验通过后报单位保密委员会审批,方可正式上线

四、日常运维应急操作

  • 档案恢复:执行java -jar /opt/archive/nuclear-archive-v1.2.0.jar --action=restore --date=2024-01-01即可恢复指定日期的档案数据
  • 非法访问应急:立即执行systemctl stop nuclear-archive停止服务,导出日志mysqldump -u archive_admin -p nuclear_archive audit_log > audit_log_$(date +%Y%m%d).sql提交保密部门排查
  • 定期备份:crontab配置每日凌晨2点全量备份:0 2 /usr/bin/mysqldump -u archive_admin -p'你的MySQL密码' nuclear_archive > /data/backup/db_$(date +\%Y\%m\%d).sql && /usr/local/bin/mc mirror nuclear-archive /data/backup/file_$(date +\%Y\%m\%d),备份文件异地存储≥30年
AI咨询
热线电话

028-85154420

15388110056

全国售前咨询电话

扫码咨询
安答联动微信公众号二维码

微信扫码关注安答联动

申请试用
热线电话
申请试用

安答联动档案管理系统