安全
生产环境服务器基础运维安全操作规范
网络安全专项排查综合指南-2026.md
本文档使用 MrDoc 发布
-
+
首页
网络安全专项排查综合指南-2026.md
# 网络安全运维操作指导 ## 🌟 前言 本指南适用于服务器、网络设备、云平台、数据库、业务应用及相关运维管理。各系统统一执行最小权限、强身份认证、最小网络开放、敏感数据保护和操作可追溯原则,将安全措施落实到日常配置、发布、维护和故障处置中。 文中的账号、IP、端口和路径为配置示例,使用时替换为实际值。生产变更先在测试环境验证,准备备份与回滚方案,并在维护窗口执行。 --- ## 🔒 一、服务器篇 ### 🔑 1.1 访问控制 * **核心原则:最小权限原则。** * **🔐 禁用 Root 直接登录:** 使用个人普通账号登录服务器,通过 `sudo` 按需执行管理操作,禁止多人共用管理员账号。 * **✅ 精确分配 sudo 权限:** 使用 `visudo` 为指定用户或用户组授权必要命令,限定命令路径和参数。避免授予无限制的 `ALL` 权限,并审查可间接执行任意命令的编辑器、解释器和脚本权限。 * **🏰 统一运维入口:** 生产管理访问通过 VPN、堡垒机或受控跳板机接入,启用 MFA 和会话审计;管理端口仅允许可信固定出口或运维网段访问。 * **🔐 强化 SSH 认证:** * 使用 SSH 密钥认证,关闭 Root 登录和密码登录。编辑 `/etc/ssh/sshd_config` 或实际生效的配置文件: ```text PermitRootLogin no PubkeyAuthentication yes PasswordAuthentication no KbdInteractiveAuthentication no PermitEmptyPasswords no MaxAuthTries 3 ``` * 上述示例适用于纯密钥认证;采用 SSH 交互式 MFA 的环境,按认证方案配置 `KbdInteractiveAuthentication` 和 `AuthenticationMethods`。 * 修改后先校验语法与最终配置,再重载服务。不同发行版的服务名可能为 `sshd` 或 `ssh`。 ```bash sudo sshd -t sudo sshd -T sudo systemctl reload sshd ``` * 保留当前管理会话,使用另一终端验证新会话可以登录,再结束原会话。 * **🗝️ SSH 密钥管理:** * 为每位运维人员单独配置密钥,优先使用云服务商密钥管理或统一密钥管理平台。 * 私钥设置口令并妥善保管,禁止在聊天、邮件、代码库或公共目录中传递。 * 建议每 60-90 天轮换密钥;人员离职、设备丢失或密钥疑似泄露时立即撤销对应公钥。 * 定期清理 `authorized_keys` 中无使用人、无用途或已失效的公钥。 * **🔐 调整默认 SSH 端口:** * 可将默认端口调整为业务未占用的高端口,并同时落实来源限制和密钥认证。 ```text Port 22222 ``` * 先放通新端口,同步调整主机防火墙、云安全组及堡垒机连接配置;启用 SELinux 的系统同步配置 SSH 端口标签。验证新连接正常后关闭旧入口。 ### 👤 1.2 账号与口令管理 * **🔐 统一强口令:** * 管理、数据库、中间件和服务账号使用**超过 16 位**的独立随机口令,包含大写字母、小写字母、数字和特殊字符,禁止默认口令、常用词和跨系统复用。 * 所有采用口令认证的账号至少落实“831”策略:**长度不少于 8 位、四类字符中至少三类、每月至少更新 1 次**。已执行更高长度和复杂度要求的账号继续按较高标准配置。 * 统一覆盖管理员、普通用户、测试用户、设备账号及 API、认证服务访问口令,避免只约束管理员。 * 使用密码管理工具或密钥管理平台生成、保存和分发口令,禁止记录在源码、注释、工单正文和共享文档中。 * **🔄 服务口令更新:** * 先确定依赖该口令的应用、定时任务、接口和连接池,再更新凭证及配置。 * 使用凭证版本或双凭证能力完成平滑切换;不支持时安排维护窗口,验证连接与业务正常后撤销旧凭证。 * 口令泄露时立即失效或轮换,并核查相关登录及调用记录。 * **🧹 账号清理:** * 禁用默认、测试、僵尸和离职账号,临时账号设置有效期,服务结束后及时回收。 * 定期复核个人账号、服务账号及权限,收回与当前职责无关的授权。 * Linux 可使用以下只读命令辅助核对账号及近期登录情况: ```bash getent passwd sudo lastlog last -a ``` ### 📦 1.3 服务身份与目录权限 * **👤 独立服务账号:** * 每个服务使用独立、无交互登录权限的系统账号。禁止使用 Root 运行应用及业务定时任务。 * Linux 示例: ```bash sudo useradd --system --no-create-home --shell /usr/sbin/nologin appsvc sudo install -d -o appsvc -g appsvc -m 0750 /var/lib/appsvc ``` * 在 systemd 服务中指定运行身份,业务任务放入相应服务账号的计划任务或受控调度平台。 ```ini [Service] User=appsvc Group=appsvc UMask=0027 NoNewPrivileges=true ``` * **📂 分离代码与可写数据:** * 应用代码和发布文件由发布账号管理,运行账号仅保留必要读取权限。 * 缓存、日志、临时文件和上传目录单独授权写入,禁止向整个应用目录开放写权限。 * 配置文件中的敏感信息仅允许运行账号及必要管理员读取,禁止使用 `chmod -R 777`。 * Nginx 工作进程使用专用用户,上传目录与代码目录分离,具体处理规则见应用篇。 ### 🛡️ 1.4 系统加固与补丁 * **🔄 补丁与版本管理:** * 定期更新操作系统、内核、SSH、中间件及运行组件,优先处理高危、严重和已被利用的漏洞。 * 先验证兼容性并准备回滚;停止维护的操作系统和组件制定升级或替换计划。 * RHEL 系发行版可按安全公告安装更新,例如: ```bash sudo dnf update --security ``` * Debian/Ubuntu 使用发行版安全源及适配的更新方案;升级完成后确认服务状态和内核是否需要重启。 * **🚫 关闭非必要服务:** * 检查运行服务和监听端口,停用无用途的打印、发现、测试及远程控制服务。 ```bash systemctl list-unit-files --type=service systemctl --type=service --state=running sudo ss -tulnp ``` * 确认依赖关系后,对指定非必要服务执行 `sudo systemctl disable --now 服务名`。 * **⚙️ 内核与协议加固:** * 根据服务器角色配置安全基线,普通业务主机可在 `/etc/sysctl.d/99-security.conf` 中配置: ```ini net.ipv4.conf.all.accept_redirects = 0 net.ipv4.conf.default.accept_redirects = 0 net.ipv4.tcp_syncookies = 1 ``` * 使用 `sudo sysctl --system` 加载后验证。IP 转发按网关、容器及网络功能需要配置。 * 停用 Telnet、明文 FTP 和过时 SSL/TLS 协议,使用 SSH、SFTP、SCP 及 TLS 1.2 或以上版本。 ### ⚠️ 1.5 操作安全与资源限制 * **☠️ 高危操作控制:** * 执行删除、重启、磁盘格式化、迁移或大范围权限变更前,确认主机、路径、参数、影响范围和可恢复性。 * 删除前先列出目标,重要数据先备份;交互式文件删除可使用经验证的回收站工具。 * 生产变更经过测试和审批,批量操作先在小范围验证,再逐步执行。 * **📊 限制服务资源:** * 通过 `ulimit`、systemd 或 cgroups 控制文件描述符、进程数、CPU、内存和磁盘 I/O,避免单服务耗尽资源。 * `/etc/security/limits.d/appsvc.conf` 的登录会话示例: ```text appsvc soft nofile 65535 appsvc hard nofile 65535 appsvc hard nproc 2048 ``` * systemd 服务使用 drop-in 配置,以下资源值按实际容量调整: ```ini [Service] LimitNOFILE=65535 TasksMax=2048 CPUQuota=80% MemoryHigh=2G MemoryMax=3G ``` * `CPUQuota=80%` 表示该服务全部进程合计最多使用单核 CPU 的 80%。修改后执行 `sudo systemctl daemon-reload`,在维护窗口重启服务使相应限制生效。 ### 🦠 1.6 主机入侵与异常外联防护 * **🛡️ 开启主机防护:** 在生产主机部署受支持的主机安全 Agent,开启恶意代码、WebShell、异常登录和提权告警,及时处理安全平台通知。 * **🔍 定期核查异常:** 关注陌生进程、异常计划任务、启动项、未知 SSH 公钥、新增高权限账号及可疑外联。 ```bash ps aux sudo ss -tpn systemctl list-timers --all sudo crontab -l ``` * **👥 覆盖业务账号任务:** 除 Root 任务外,继续检查业务账号的 crontab、服务定义和自动启动配置。 * **🚨 异常处置:** 发现挖矿、僵尸网络、恶意代码或异常数据外传时,按应急流程隔离受影响主机、保全现场、撤销泄露凭证并追查入口。 --- ## 🌐 二、网络与设备篇 ### 🔥 2.1 防火墙与访问策略 * **🌐 最小网络开放:** * 主机防火墙、云安全组和边界设备仅开放必要业务端口,管理端口按固定 IP 或最小网段授权。 * 同时核查 IPv4、IPv6、安全组、NAT、负载均衡和代理入口,防止旁路访问。 * 按办公、生产、数据库、管理和访客等用途划分网络区域,限制跨区域访问。 * **📝 firewalld 配置示例:** * 先确认网卡实际使用的 zone 和现有规则。以下假设使用 `public`,示例 IP 必须替换为实际可信固定出口。 ```bash sudo firewall-cmd --get-active-zones sudo firewall-cmd --zone=public --list-all sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="203.0.113.10/32" port port="22222" protocol="tcp" accept' sudo firewall-cmd --permanent --zone=public --add-service=https sudo firewall-cmd --reload ``` * 验证新管理入口和业务访问正常后,删除旧 SSH 放行、面向全网的管理端口及多余 rich rule;同步收紧其他 zone、IPv6 和云安全组规则。 * 仅在确有 HTTP 业务或跳转需求时开放 80 端口。生产调整默认策略前确认已有连接、必要出站和业务转发规则。 ### 🚪 2.2 公网服务与暴露面 * **🚫 数据服务禁止直连公网:** Redis、Elasticsearch、MongoDB、MySQL、Memcached 等仅监听必要内网地址,通过 VPC 和来源限制供授权应用访问,启用认证与加密传输。 * **🔐 管理后台限制访问:** 数据库管理工具、运维平台、监控后台、设备控制台和应用管理后台通过受控网络访问,重要入口开启 MFA。 * **🧹 清理无用途入口:** 关闭停用域名解析、闲置公网 IP、过期端口映射、调试入口、演示站点、测试环境入口和不再使用的认证服务。 * **🔗 整合接口与接入口:** 对外接口统一接入受控网关,逐步合并重复服务和接入点,停用旧接口时同步撤销令牌、账号和网络规则。 * **🔍 验证实际可达性:** 变更后从授权的内外网位置验证必要业务可访问、非授权入口不可访问,确认域名、IP 直连及备用路径均受到控制。 ### 🛜 2.3 VPN 与 Wi-Fi * **🏰 VPN 按人授权:** 使用独立账号并启用 MFA,只授权所需系统及网段;临时接入设置到期时间,任务结束后撤销权限。 * **🧹 清理遗留账号:** 禁用离职、长期不用、测试及供应商任务结束后遗留的 VPN 账号,核查近期异常登录。 * **🔄 更新接入设备:** 及时安装 VPN 网关和无线控制器安全补丁,管理页面仅允许管理网访问。 * **🔐 无线认证:** 优先使用支持的 WPA2/WPA3 企业认证;采用共享口令的网络使用强口令并按月更新,人员变化或疑似泄露时立即更换。 * **🧱 访客隔离:** 访客 Wi-Fi 与办公、生产和设备管理网络隔离,限制访问内部资源;关闭非必要 WPS 和远程管理功能。 ### 📹 2.4 网络、安全及物联设备 * **🔑 设备口令:** 路由器、交换机、防火墙、摄像头、录像设备、LED 控制器、物联网及 Wi-Fi 设备启用独立强口令,清理默认账号。 * **🚫 收紧管理面:** 禁止将设备管理端口直接开放到公网,停用无用途的云端共享、UPnP 和远程控制通道。 * **🔄 固件维护:** 使用厂商可信固件,及时处理高危漏洞;无法更新且缺少必要认证的设备,采取网络隔离、替换或下线措施。 * **👁️ 监测设备行为:** 关注设备异常外联、被控、异常流量及配置变化,开启可用的登录和操作日志。 * **🏭 工控设备:** 与办公及互联网区域隔离,远程维护使用受控通道;扫描、升级和重启先与生产负责人确认影响,在适用窗口实施。 ### 🏢 2.5 办公出口访问控制 * **📌 核实实际固定出口:** 管理访问优先使用公司 VPN、堡垒机或经确认的固定出口 IP,并按最小来源范围放行。 * **🗂️ 出口网段参考:** 以下为 11 楼、12 楼、16 楼已有网段信息。设置白名单前确认当前有效出口和业务归属,进一步收紧到必要地址。 | 出口网段 | | --- | | 113.248.0.0/16 | | 113.249.0.0/16 | | 116.168.0.0/16 | | 123.144.0.0/16 | | 14.108.0.0/16 | | 211.92.0.0/16 | | 222.182.0.0/16 | | 27.10.0.0/16 | | 27.8.0.0/16 | --- ## ☁️ 三、云平台篇 ### 👥 3.1 身份与权限管理 * **👤 保护主账号:** 主账号启用强口令和 MFA,仅用于必要的账户级管理与紧急操作,日常运维使用个人子账号。 * **🔐 子账号独立使用:** 每位人员创建独立 RAM/IAM 账号,绑定有效联系信息并强制 MFA;口令遵循 1.2 的统一策略。 * **📌 最小权限授权:** 按职责、资源和操作授权,使用用户组统一管理相同职责权限,定期清理闲置身份、过宽策略和跨账号信任。 * **🚫 限制高权限:** 禁止将 `AdministratorAccess` 等全局管理权限分配给应用、普通运维和供应商账号。 ### 🗝️ 3.2 AccessKey 与角色 * **🎭 优先使用角色:** 云主机、容器及服务通过 RAM/IAM 角色访问所需云资源,减少实例、镜像和代码中的长期 AK。 * **⏳ 临时访问使用 STS:** 根据任务设置临时凭证的最小资源范围和有效期,禁止由客户端持有长期高权限凭证。 * **🔑 按需创建 AK:** 仅为确需 API 调用的身份创建 AK,限定具体资源和操作,避免 `AliyunOSSFullAccess` 等过宽权限。 * **🔄 定期轮换:** 长期 AK 建议每 90 天轮换,先更新调用方并验证,再撤销旧 AK;发现泄露立即失效并排查调用记录。 * **🔒 受控存储:** 使用云密钥管理或机密管理服务分发凭证,限制读取权限,避免在启动脚本、构建日志、镜像和代码中保存。 ### 🧱 3.3 云资源与存储访问控制 * **🌐 云安全组:** 管理端口仅允许可信固定出口或 VPN,数据库和缓存仅允许必要应用来源,持续清理临时放行规则。 * **🔗 VPC 隔离:** 生产、测试及管理资源按用途分离,跨 VPC、跨账号和公网连接逐项按业务需要授权。 * **🪣 存储桶默认私有:** OSS 等对象存储禁止匿名读写;公开静态资源使用独立桶和最小只读策略,与上传文件、备份及敏感数据分离。 * **🔐 下载与上传授权:** 私有文件使用短期签名链接或临时凭证,限制有效期、路径和操作范围,禁止向客户端发放全桶权限。 * **💾 版本与容灾:** 关键文件开启版本控制;按数据存储和合规安排配置跨区域复制,并单独保护备份及复制目标的访问权限。 * **👁️ 控制台审计:** 开启云平台操作审计、关键资源变更告警及凭证异常调用告警,日志按日志篇统一保留。 --- ## 🗃️ 四、数据库篇 ### 🔐 4.1 访问控制与最小权限 * **🚫 禁止公网直连:** 数据库只监听必要内网地址,云数据库通过内网 VPC 访问,管理操作经 VPN、堡垒机或受控 SSH 隧道进入。 * **👤 应用账号独立:** 按应用、环境和职责创建专用账号,读写分离,禁止使用 `root`、`sa` 等高权限账号连接业务。 * **📌 限定来源与操作:** 将账号绑定到必要应用来源,仅授权所需库、表和 SQL 操作,避免向业务账号授予建用户、授权、文件操作等管理能力。 * **🧹 清理账号:** 删除默认、测试、无用途和供应商任务结束后的账号,服务口令按 1.2 更新。 * **📝 MySQL 授权示例:** 以下使用占位口令,在受控会话中替换为独立随机值;来源 IP 按实际应用地址配置。 ```sql CREATE USER 'app_user'@'10.0.1.10' IDENTIFIED BY 'REPLACE_WITH_UNIQUE_RANDOM_PASSWORD' REQUIRE SSL; GRANT SELECT, INSERT, UPDATE ON app_db.* TO 'app_user'@'10.0.1.10'; SHOW GRANTS FOR 'app_user'@'10.0.1.10'; ``` * **⚠️ 保护真实凭证:** 不将包含真实口令的 SQL、命令或连接串提交到代码库、聊天记录或共享文档;避免客户端历史和自动化日志记录敏感值。 ### 🛡️ 4.2 数据服务认证与加密 | 服务 | 认证与传输配置 | | --- | --- | | MySQL | 在受支持版本中使用 `caching_sha2_password` 等安全认证机制,开启 TLS,客户端校验证书;按账户限制连接来源和权限。 | | PostgreSQL | 使用 SCRAM-SHA-256,通过 `pg_hba.conf` 精确限制库、用户和来源,采用 `hostssl` 并校验服务端证书。 | | Redis | 使用受支持版本,优先通过 ACL 限制账号、命令和 key 范围,绑定必要内网地址并启用保护模式;按支持能力配置 TLS。 | | MongoDB | 启用身份认证,使用 SCRAM-SHA-256、最小权限角色及 TLS,绑定必要内网地址,关闭无用途的外部访问。 | | Elasticsearch 等数据服务 | 启用身份认证、角色权限及 TLS,管理接口和数据接口仅供授权来源访问,禁用无业务依据的匿名访问。 | * **🔑 统一口令规则:** 所有数据服务账号执行强口令及每月至少更新 1 次的策略,及时轮换泄露凭证。 * **🔐 管理入口 MFA:** 云数据库控制台、数据库运维平台和堡垒机启用 MFA,限制管理员权限。 * **🔄 漏洞修复:** 及时更新数据库及扩展组件,处理未授权访问、认证绕过和远程代码执行等高危问题。 ### ☁️ 4.3 云数据库高可用 * **🏗️ 生产采用高可用架构:** 使用一主多备或相应高可用方案,生产环境避免单机部署。 * **📍 主备跨可用区:** 主备节点分布在不同可用区,核实自动故障切换和连接切换方式。 * **🧱 限制连接来源:** 使用 VPC、安全组及数据库白名单限制访问,避免授权整个公网或无关网段。 * **💾 独立备份:** 开启自动备份和时间点恢复能力,主备高可用之外仍需执行数据备份策略。 ### ⚠️ 4.4 数据库操作安全 * **🚫 禁止直接试验生产数据:** 批量更新、删除、插入、结构变更及迁移先在测试环境验证,确认影响行数和执行计划。 * **🔍 执行前确认范围:** 使用相同条件先查询受影响数据,准备回滚或恢复方案;按业务需要使用事务、分批执行及速率控制。 * **⏱️ 安排维护窗口:** 大批量操作、备份清理、表重组和数据迁移在业务低峰执行,监控锁等待、复制延迟和资源使用。 * **🚨 监控告警:** 连接数使用率达到 80% 预警、90% 升级告警;磁盘使用率超过 90% 及时处置;慢查询数量突增(如超过 25 次/分钟)结合基线设置告警。 * **👁️ 审计关键操作:** 关注管理员登录、账号授权、批量读取、数据导出及异常连接,日志按统一要求保留。 --- ## 💻 五、应用与代码篇 ### 🗝️ 5.1 敏感信息与凭证保护 * **🚫 禁止硬编码:** 用户名口令、数据库连接串、第三方 API 密钥、支付私钥和云 AK 不得写入源码、注释、前端配置或构建产物。 * **🔐 集中管理秘密:** 优先使用 HashiCorp Vault、云 Secrets Manager、KMS 等服务,按应用身份授权读取;使用配置文件时限制权限并加密保护,运行时按需注入。 * **🔍 扫描泄露:** 使用 `git-secrets`、`trufflehog` 等工具检查工作区、版本历史、脚本及构建输出,将扫描接入提交或发布流程。 * **🔄 泄露后撤销:** 发现已提交或已分发的凭证时立即轮换或失效,排查访问记录,并清理仍在分发的镜像、包和配置。 * **🔒 用户口令保存:** 使用带独立盐值的 Argon2id、scrypt 或 bcrypt 等专用密码哈希方案,禁止明文保存,避免日志输出口令。 ### ⚡ 5.2 框架、依赖与容器 * **🔄 使用受支持版本:** 及时更新应用框架、SDK、运行时、中间件及依赖库,关注安全公告并优先处理高危漏洞。 * **🧪 更新前验证:** 在测试环境验证核心流程、兼容性及性能,再分批发布并保留回滚能力。 * **🐳 镜像安全:** 使用可信基础镜像,避免停止维护的版本;构建时扫描漏洞和秘密,定期重建,生产容器以非 Root 身份运行。 * **🧹 精简生产组件:** 移除调试插件、演示页面和无用途组件,关闭调试模式、详细错误堆栈及公网调试接口。 ### 🛡️ 5.3 输入校验与 SQL 注入防护 * **✅ 服务端校验:** 按字段校验长度、类型、格式、范围和允许值,拒绝超出业务边界的数据。 * **🔒 参数化查询:** 使用 ORM 或参数化 SQL,禁止将用户输入拼接为 SQL 语句;使用 ORM 原生查询接口时同样绑定参数。 * **📌 动态标识符白名单:** 表名、字段名和排序字段由服务端允许列表映射生成,禁止直接使用客户端输入。 * **🧱 限制请求消耗:** 对请求体、文件大小、分页范围和批量操作数量设置上限,结合账号及来源限制调用频率。 ### 📂 5.4 文件上传与目录隔离 * **📎 校验文件:** 同时检查扩展名、MIME 类型和实际文件内容,限制大小;使用服务端生成的文件名,阻止路径穿越和覆盖已有文件。 * **🧱 隔离上传:** 上传目录与程序代码、可执行脚本及配置目录分离;运行账号仅对必要上传路径有写权限。 * **🚫 禁止脚本解析:** 在 Web 服务和应用路由中阻止上传文件进入 PHP、CGI 或其他代码执行处理器。目录保留必要遍历权限,普通文件仅授予必要读写权限。 * **🔐 私有文件鉴权:** 下载前校验用户对文件的访问权限,私有文件不得仅依赖不可猜测的 URL 保护。 * **📝 Nginx 下载目录示例:** 以下适用于允许公开下载的附件目录,`/uploads/a.pdf` 对应 `/srv/app-data/uploads/a.pdf`。 ```nginx location ^~ /uploads/ { root /srv/app-data; autoindex off; types { } default_type application/octet-stream; add_header X-Content-Type-Options nosniff always; add_header Content-Disposition attachment always; try_files $uri =404; } ``` * **⚙️ 配置生效:** 该路径不配置脚本解释器或代码执行转发;修改后执行 `sudo nginx -t`,校验通过再执行 `sudo systemctl reload nginx`。私有附件应通过鉴权服务或受控内部路径下载。 ### 🔗 5.5 API、认证与权限 * **🔐 逐接口鉴权:** 管理、数据读写和导出接口在服务端校验身份;按功能、数据对象及租户边界校验权限,防止跨用户和跨租户越权。 * **🧹 清理旧接口:** 关闭不再使用的 API 版本、测试接口、默认账号和临时认证入口,同步回收访问令牌及网络授权。 * **⏳ 令牌有效期:** 为访问令牌设置合理有效期和撤销能力,重要权限变化、离职或异常登录后撤销相关会话。 * **🛡️ 保护认证流程:** 对登录、验证码、找回密码等入口限流,统一错误提示,防止账号枚举和暴力猜测。 * **📤 控制返回内容:** 接口仅返回当前操作需要的数据,过滤密码哈希、密钥、内部配置及多余个人信息。 * **👥 覆盖各类应用:** 网站、APP、公众号、小程序、邮件及运维平台后台执行一致的账号和权限规则;重要管理账号启用 MFA。 --- ## 💾 六、数据保护与备份篇 ### 👤 6.1 敏感数据处理 * **📌 最小化采集:** 按业务必要性和授权范围采集、使用和共享数据,限制读取及导出权限,避免超范围收集和长期无用途留存。 * **🗂️ 分类保护:** 区分个人信息、重要数据、业务秘密及一般数据,分别配置访问、传输、存储和备份保护措施。 * **🔒 存储与展示分离:** 身份证号、手机号等需要保留原值时加密存储;页面、接口和日志按用途脱敏展示,限制明文查看权限。 * **🧪 测试数据脱敏:** 测试、开发和演示环境使用合成或经处理的数据,禁止直接复制真实敏感生产数据。 * **🛡️ 匿名化按场景设计:** 需要不可逆处理的数据采用合适的匿名化或不可逆转换方案,并评估重新识别风险;需要恢复原值的数据使用加密和独立密钥管理。 ### 🔐 6.2 传输与存储加密 * **🌐 加密传输:** 敏感数据使用 HTTPS、SFTP 或其他安全协议传输,TLS 使用 1.2 或以上版本,客户端校验证书,禁止关闭校验以绕过错误。 * **💽 加密存储:** 核心数据按需要启用磁盘、数据库字段或应用层加密,对象存储及备份启用适用的存储加密。 * **🗝️ 密钥独立保护:** 数据与解密密钥分开管理,限制密钥读取和解密调用权限,定期轮换并保留必要恢复能力。 * **📤 控制数据外传:** 共享、导出及发送数据前核对接收方、范围和用途,使用受控下载或加密通道,禁止通过个人网盘和未授权渠道传输。 ### 💾 6.3 备份策略 * **✅ 执行 3-2-1:** * 保留生产数据及至少两份备份,共三份数据副本。 * 备份保存在两类独立存储介质或故障域中。 * 至少一份采用离线、不可变或其他隔离保护,并安排异地副本以应对站点故障。 * **📦 覆盖必要数据:** 备份系统关键配置、应用代码与配置、数据库、用户文件及需要保全的日志。凭证和密钥按专门机制加密备份并限制权限。 * **⏱️ 数据库备份:** 每日全量备份,结合引擎能力配置每 5-10 分钟增量备份、事务日志归档或相应恢复点。 * **🗓️ 保留周期:** 生产备份至少保留 30 天,核心数据至少保留 180 天;安全日志按不少于 6 个月的独立要求管理。 * **🧱 隔离备份权限:** 备份账号与生产运行身份分离,限制删除和覆盖权限,避免主机或应用失陷后同时破坏全部副本。 * **🚨 监控任务:** 对备份失败、中断、容量不足和异常删除设置告警,及时处理失败任务。 ### 🔁 6.4 恢复与容灾 * **🧪 定期恢复演练:** 建议每季度在隔离环境恢复数据库、文件和关键配置,验证完整性、业务可用性及恢复耗时。 * **🎯 明确恢复目标:** 按业务要求设置可接受的数据丢失范围和恢复时间,调整备份频率、保留和容灾架构。 * **🔐 保护恢复环境:** 限制访问恢复出来的真实数据,演练结束后清理临时实例、导出文件、共享入口和临时账号。 * **☁️ 跨区域副本:** 关键数据配置适用的异地复制或容灾,核实地域选择、复制范围、访问权限和存储合规要求。 ### 🤝 6.5 第三方与跨境数据使用 * **📌 限定处理范围:** 向开发、运营、运维和数据服务商提供数据时,明确目的、字段、访问权限和处理期限。 * **🚫 禁止擅自留存与使用:** 供应商不得超范围采集、截留、复制生产数据,或用于其他项目和未经授权的商业用途。 * **🔐 临时数据保护:** 调试、故障分析和迁移所需副本加密存储并限制访问,任务结束后按约定返还或安全删除。 * **🌍 跨境处理:** 向境外提供或在境外存储个人信息、重要数据前,完成适用的评估、审批或其他合规手续,并落实必要风险控制。 * **🔗 覆盖隐含传输:** 配置境外日志接收、远程支持、分析 SDK、备份地域和数据同步时,同步审查实际数据流向。 --- ## 💳 七、支付安全篇 ### 🗝️ 7.1 支付密钥与凭证 * **🔐 服务端保管:** 支付 Access Key、私钥和敏感支付凭证仅保存在受控服务端或密钥管理平台,禁止下发到浏览器、APP、小程序和公共配置中。 * **🌐 加密传输:** 支付配置分发、接口调用和回调使用经过证书校验的安全通道,禁止通过明文 HTTP、FTP、邮件正文或聊天传递秘密。 * **🔒 加密保存:** 应用服务器、数据库和备份中的敏感支付凭证采用加密或受控托管,限制读取身份,避免与解密密钥一起明文存放。 * **🧹 避免输出:** 关闭可能泄露支付秘密的调试输出,清理日志、异常堆栈、配置下载和构建产物中的敏感信息。 * **🔄 生命周期管理:** 测试和生产使用不同凭证,限制调用权限;定期轮换,疑似泄露时立即撤销并核查交易和调用情况。 ### 🔐 7.2 交易验证与权限 * **🔑 转账二次验证:** 转账、提现、退款、变更收款账户及调整支付权限等高风险操作,实施二次身份校验,并按金额和风险设置必要审批。 * **🧱 服务端强制校验:** 二次验证状态与当前用户、交易内容和有效时间绑定,校验失败、过期或交易内容变更后重新验证,防止绕过前端直接调用接口。 * **💰 订单一致性:** 在服务端确定订单、金额、币种和收款方,不直接信任客户端提交的支付结果及关键交易字段。 * **✅ 回调验签:** 按支付机构规则验证签名、商户及订单信息,必要时通过服务端查询确认状态,拒绝未认证的支付成功通知。 * **🔁 防重放与重复支付:** 使用支付机构支持的时间戳、随机数和幂等标识,确保重复请求或重复回调不造成重复扣款、退款或发货。 * **🚨 交易告警:** 对异常金额、频繁失败、异常收款方及非预期时段交易设置告警,并限制支付管理权限。 ### 🛑 7.3 支付应急控制 * **⛔ 一键关停:** 为支付、转账和退款等能力设置受控开关,可在异常时停止新交易;只有指定人员能够操作。 * **🔌 隔离调用:** 准备撤销支付凭证、关闭支付任务或限制支付网络访问的方案,确认对已有订单和回调的影响。 * **🏦 止付与冻结:** 预先确认银行或支付机构的应急联系人、授权人和办理路径,发生盗用或异常转账时及时发起止付、冻结。 * **🧪 演练流程:** 在测试环境或桌面推演中验证关停、凭证撤销、外部联动和恢复步骤,确保值班人员能按流程执行。 * **🔁 恢复前复核:** 完成风险处置、凭证更新和异常交易核对后,经授权恢复支付,并持续观察告警及交易状态。 --- ## 🗂️ 八、日志审计与监控篇 ### 📋 8.1 日志内容与分级 * **📚 覆盖关键日志:** 服务器、应用、数据库、云平台、VPN、网络及安全设备开启系统维护、登录退出、安全审计及操作日志。 * **👤 追溯操作主体:** 记录访问时间、源 IP、账号、操作行为,并补充目标对象、结果及关联 ID;覆盖登录失败、权限变更、配置调整、数据导出和支付等操作。 * **🕒 统一时间:** 使用可信时间源同步主机和设备时间,保留时区信息,便于关联不同系统的记录。 * **📌 统一日志等级:** 应用区分 DEBUG、INFO、WARN、ERROR、FATAL 等级,生产按需要控制 DEBUG 输出;安全审计日志独立保存,避免因业务日志等级调整而停记。 * **📝 结构化日志示例:** ```json { "timestamp": "2026-10-20T10:00:00+08:00", "level": "INFO", "event": "permission_changed", "actor_id": "operator-123", "source_ip": "203.0.113.10", "target_id": "role-456", "result": "success", "request_id": "unique-request-id" } ``` * **🌐 代理后的来源识别:** 仅信任受控代理提供的来源信息,结合网关和服务端日志追溯真实来源,防止客户端伪造转发头。 ### 🔒 8.2 日志脱敏与访问权限 * **🚫 禁止记录秘密:** 日志不得包含用户口令、完整访问令牌、云 AK、支付私钥及其他可直接使用的凭证。 * **👤 个人信息脱敏:** 身份证号、手机号、银行卡号等按用途遮蔽,避免记录不必要的完整请求体或响应体。 * **📌 按职责授权:** 日志读取仅向必要运维、安全和经授权人员开放,限制下载、批量导出及跨系统检索。 * **🧱 权限分离:** 应用仅具备必要的日志写入能力,限制修改、删除和保留策略变更权限,对管理操作进行审计。 ### 🗓️ 8.3 日志留存与完整性 * **💾 保留不少于 6 个月:** 统一配置主机、设备、集中日志平台、云审计和对象存储生命周期,确保相关日志实际可检索、可调阅;存在更长适用要求时执行更长期限。 * **📦 容量与轮转:** 按日志产生量规划空间、分层归档和轮转,避免因磁盘空间、套餐容量或自动清理提前覆盖历史日志。 * **🔗 集中采集:** 可采用 ELK/EFK、Splunk、云日志服务等统一接收日志,监控采集中断、解析失败和时间异常。 * **🛡️ 防篡改与防删除:** 根据平台能力启用不可变存储、对象锁、保留保护或独立备份,分离日志写入、读取和管理权限。 * **🔁 验证可恢复:** 定期抽查历史日志和备份恢复,确认能够覆盖所需时间段并关联关键操作。 * **⏳ 历史不足时保全现有记录:** 立即停止过早清理,扩大容量并持续积累,明确当前最早可用时间,禁止补造历史日志。 ### 👁️ 8.4 资源与安全监控 * **📈 系统资源:** 在服务器安装云监控或适配 Agent,监控 CPU、内存、Swap、磁盘容量、I/O、网络流量及关键进程。 * **🚨 告警阈值:** 根据业务基线设置,例如 CPU 超过 80% 持续 5 分钟、内存超过 80%、磁盘超过 90%;数据库阈值结合 4.4 配置。 * **🛡️ 安全事件:** 监控异常登录、暴力尝试、新增高权限账号、敏感配置变化、恶意代码、异常外联及批量数据导出。 * **📣 告警触达:** 按严重程度通过邮件、短信或企业协作工具通知值班人员,设置接收人和升级路径,验证通知实际可达。 * **🔍 日常处置:** 定期查看云安全中心、WAF、主机防护和设备告警,对确认的风险执行隔离、修复、凭证轮换及必要追查。 --- ## 🤝 九、供应链与外包运维篇 ### 👥 9.1 外包身份与访问 * **👤 实名独立账号:** 为设计、开发、建设、运维及安全服务人员按实际任务开通独立身份,禁止共用账号或借用内部管理员账号。 * **📌 限时限权:** 限定可访问系统、数据、操作和有效期,任务结束、人员更换或服务退出时立即回收。 * **🏰 统一远程入口:** 供应商通过受控 VPN 或堡垒机接入,启用 MFA 和会话审计,禁止私建隧道及使用未经批准的远程控制工具。 * **🧱 关键权限自主管理:** 系统所属单位掌握最高管理权限和必要恢复能力;政务系统的操作系统、数据库及机房等最高权限由相应政府部门管理。 * **🔄 服务退出交接:** 回收账号、公钥、VPN、令牌和 API 凭证,轮换接触过的共享秘密,关闭临时网络规则和远程工具。 ### 🔗 9.2 分包、转包与数据边界 * **📌 明确实际服务方:** 将各参与方的职责、实际服务人员和权限边界落实到合同及授权,分包转包须经相应审批。 * **🔒 明确保密义务:** 约定数据处理范围、事件报告、远程运维、分包管理及退出处置责任,重要变更及时同步系统所属单位。 * **🚫 限制生产数据:** 外包人员仅接触任务所需数据,优先使用脱敏数据;临时生产副本按数据篇实施加密、授权和任务结束后处置。 * **🧹 禁止残留:** 服务结束后返还或删除生产数据、备份、调试文件和本地副本,禁止擅自截留及复用。 ### 🛡️ 9.3 产品与安全服务采购 * **✅ 可信来源:** 从可信渠道采购网络及安全产品,核实适用的销售许可、认证、检测和供应商支持能力。 * **🏗️ 安全可信:** 第三级及以上网络按适用要求选用安全可信产品和服务,并及时更新补丁及规则库。 * **🔍 检测机构:** 使用具备相应资质和能力的机构,明确保密义务、检测范围、时间窗口及数据处理方式。 * **⚙️ 运维能力:** 采购时确认日志、身份认证、权限管理、补丁支持及安全退出能力,避免引入无法持续维护或无法回收权限的组件。 --- ## 🚨 十、安全管理与应急篇 ### 🛠️ 10.1 变更与漏洞整改 * **👤 明确负责人员:** 每个生产系统落实业务、运维和安全负责人,重要变更及异常按约定路径协调处置。 * **🧪 先验证后发布:** 补丁、配置、权限、网络及数据变更先在测试环境验证,明确影响、备份、回滚和执行窗口。 * **🚨 高风险优先:** 对正在被利用、已泄露、未授权访问、涉及支付损失及公网高危漏洞优先处置;暂不能修复时先实施隔离、访问收紧或功能停用,并安排后续修复。 * **🔁 修复后验证:** 重新验证漏洞入口、认证和权限控制,确认风险消除且业务正常,再恢复临时停用的能力。 * **🧹 下线同步清理:** 系统退役时关闭域名入口、公网映射、账号、公钥和调用凭证,按数据保留及销毁策略处理数据库、对象存储和备份。 ### 🏗️ 10.2 等级保护与安全建设 * **🛡️ 落实等级保护:** 按系统实际情况完成定级、备案和适用测评,依据对应安全基线配置身份认证、访问控制、审计及数据保护。 * **🔍 持续检测:** 在授权范围内安排恶意代码扫描、漏洞检测、风险评估及必要的渗透测试,对发现问题落实修复和验证。 * **🏢 关键信息基础设施:** 对已认定且适用的系统落实检测评估、整改及安全保障,将安全措施同步纳入规划、建设和运行。 * **📦 新技术应用:** 大数据、云计算、物联网、工控和移动应用在上线前明确网络边界、身份权限、数据处理和监测措施,避免使用默认配置直接接入生产。 ### 🧯 10.3 安全事件处置 * **📣 接收与研判:** 值班人员发现入侵、异常外联、恶意代码、数据泄露或支付异常后,立即通知安全负责人,判断影响系统、账号及数据范围。 * **🧱 控制扩散:** 通过网络隔离、安全组或应用开关限制受影响系统,保留必要应急管理通道;及时停止异常导出和高风险交易。 * **🔍 保全现场:** 保存告警、登录记录、进程、连接、可疑文件及相关日志,必要时采集快照和磁盘副本,控制现场变更。 * **🗝️ 撤销凭证:** 在可信环境撤销受影响的口令、密钥、令牌和会话,检查权限变更及其他关联系统。 * **🛠️ 修复入口:** 修复漏洞和错误配置,清除持久化通道;主机可信性无法确认时,使用可信镜像重建并恢复已验证数据。 * **🔁 分步恢复:** 确认入侵入口已关闭、凭证已更新、数据和业务验证通过,再逐步恢复服务并持续监控。 * **📞 联动报告:** 按适用报告机制与主管部门、属地公安网安、云服务商及支付机构联动,及时升级重大风险和无法自行处理的问题。 ### 🧑🏫 10.4 培训与应急演练 * **👥 岗位管理:** 明确关键岗位职责和替补安排,按适用要求开展关键人员审查;人员转岗或离职同步调整权限。 * **🔐 定期培训:** 覆盖口令、密钥、防钓鱼、生产变更、数据保护和事件报告,确保相关人员掌握本岗位操作要求。 * **🧪 按场景演练:** 定期演练系统入侵隔离、数据恢复、凭证泄露处置和支付关停,验证联系人、操作权限和恢复步骤有效。 * **🔄 持续改进:** 将演练、故障和事件中发现的问题落实到配置、操作流程及培训中,避免重复发生。 --- ## 🏁 总结 通过独立身份、最小权限、受控接入、及时修复、加密保护、可靠备份和完整审计,将服务器、网络、云平台、数据库与应用纳入一致的安全运维流程。每次变更验证实际效果,每次异常及时处置,持续收紧无用途的入口与权限。
admin
2026年10月20日 14:05
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码