86 lines
3.3 KiB
Markdown
86 lines
3.3 KiB
Markdown
# 11.8 安全加固清单
|
||
|
||
:::tip 概述
|
||
安全加固按层次组织:配置层(密钥/开关)、网络层(暴露面/代理)、数据层(账号/备份)、应用层(上传/权限)。威胁→控制全景见 [4.10 安全架构设计](../architecture/security)。
|
||
:::
|
||
|
||
## 配置层加固(上线必须)
|
||
|
||
```text
|
||
□ jwt.secret 高强度随机(≥32 字节随机串),与环境隔离
|
||
□ captcha.bypassCode = ""(万能验证码清空)
|
||
□ app.demo = false
|
||
□ app.errorMsg = false(不暴露内部错误)
|
||
□ server.errorStack = false
|
||
□ database.default.debug = false
|
||
□ redis.default.pass 强密码(非 123456)
|
||
□ file.fileExt 按业务收紧(公网上传移除 js/css/sql)
|
||
□ cors.allowOrigin 收敛为具体域名(非同域部署时)
|
||
```
|
||
|
||
## 网络层加固
|
||
|
||
```text
|
||
□ 数据库/Redis 内网访问(安全组/防火墙仅放应用网段)
|
||
□ 后端 :8000 不直接对外(仅 Nginx 反代)
|
||
□ HTTPS 全站(前置代理终止;HSTS 可选)
|
||
□ api.proxyIps 只列真实反代出口(防 XFF 伪造)
|
||
□ /swagger 与 /api.json 收紧(内网/Basic Auth/关闭暴露)
|
||
□ 管理后台可加 IP 白名单(Nginx allow/deny)
|
||
```
|
||
|
||
## 数据层加固
|
||
|
||
```text
|
||
□ 数据库独立账号(非 root;仅目标库 DML 权限)
|
||
□ 定期备份(见 11.9 备份与恢复)+ 恢复演练
|
||
□ 初始 admin 强密码(导入种子后立即改)
|
||
□ 敏感配置不进 git(.env 注入;私有仓库)
|
||
□ 日志目录权限最小化(含操作日志脱敏后仍属敏感)
|
||
```
|
||
|
||
## 应用层加固
|
||
|
||
```text
|
||
□ 限流开启(authLimit 10/分钟/IP 不调大——防暴力破解)
|
||
□ 权限最小化授予(新接口必须声明 permission;定期审计角色授权)
|
||
□ 超管账号专人管理(通配权限 *:*:*)
|
||
□ 在线用户定期巡检(异常会话强退——双令牌拉黑)
|
||
□ 操作日志定期审计(登录日志看异常 IP/归属地)
|
||
□ 上传目录禁止执行权限(Nginx 对 /upload 不解析脚本)
|
||
□ 富文本外链不本地化已防 SSRF(保持该行为,勿自行"增强")
|
||
```
|
||
|
||
## 运维层加固
|
||
|
||
```text
|
||
□ 服务器最小化安装(关无用端口/服务)
|
||
□ SSH 密钥登录、禁 root 直登
|
||
□ 系统安全补丁定期更新
|
||
□ 容器场景:非 root 运行、镜像扫描
|
||
□ 日志采集与告警(错误激增/登录失败激增)
|
||
□ 应急预案:禁用账号/封禁 IP/回滚流程演练
|
||
```
|
||
|
||
## 定期审计项(月度)
|
||
|
||
```text
|
||
1. 角色权限盘点:长期不用的角色/权限回收
|
||
2. 在线用户:异地/异常会话清理
|
||
3. 登录日志:失败尝试 Top IP(配合限流阈值评估)
|
||
4. 操作日志:高危操作(删除/导出)追溯
|
||
5. 备份可用性:随机抽恢复演练
|
||
6. 依赖漏洞:go mod / pnpm audit
|
||
7. /api.json 权限点核对(防新接口漏配 permission)
|
||
```
|
||
|
||
## 应急响应
|
||
|
||
| 事件 | 动作 |
|
||
|------|------|
|
||
| 账号泄露 | 禁用账号 + 在线用户强退(双令牌拉黑)+ 改密 + 审计日志 |
|
||
| 令牌泄露 | RemoveToken 撤销指定令牌;必要时改 jwt.secret 全量失效 |
|
||
| 数据库泄露 | 改库密码/轮换密钥;评估备份与日志暴露面 |
|
||
| 恶意上传 | 收紧 fileExt;清理上传目录;审计上传记录 |
|
||
| DDoS/刷接口 | 调小 rateLimit 阈值;前置 WAF/CDN;封禁 IP 段 |
|