跳转到内容

安全最佳实践

后台被入侵 = 整站灾难。本节给安全管理员一份必看清单。

详见 用户管理 - 强密码策略

核心

  • ≥ 12 字符
  • 字母 + 数字 + 符号
  • 不与用户名相同
  • 不是常见弱密码

强密码示例

❌ 弱✅ 强
password123T#h!sIsAStr0ngP@ssw0rd
12345678M@yp1neapple&Rain^2026
company2026Sunset/Mountain/3Apples!

用密码管理器(1Password / Bitwarden / LastPass)—— 不要手记 / 不要 Excel 存。

强烈推荐

  • 管理员强制 2FA
  • 内容编辑 / 销售推荐 2FA
类型优势劣势
Authenticator App(Google Authenticator / Authy)离线、安全换手机麻烦
短信验证码简单SIM 卡劫持风险
硬件 YubiKey最安全贵、需要购买
  1. 用户进自己资料 → 安全 → 开启 2FA

  2. 选 Authenticator App

  3. 用 App 扫二维码 → 录入

  4. 输入 App 显示的 6 位码 → 验证

  5. 系统给恢复码(Backup Code)→ 保存到密码管理器(手机丢了用这个恢复)

  6. 启用成功 → 下次登录除了密码还要输入 6 位码

某些角色只在特定 IP 登录:

  • 管理员:仅 VPN IP / 公司 IP
  • 销售:仅公司 IP / 家庭 IP(提前登记)
  • 内容编辑:仅公司 IP(远程工作通过 VPN)

让运维 / 安全管理员配。

意义

  • 即使密码泄漏,海外攻击者无法用其他 IP 登录
  • 第一道防线

异常征兆

征兆行动
凌晨登录(员工通常不工作时段)立刻确认是否本人
国外 IP 登录确认是否员工出差
多次密码错误可能正在被尝试爆破
账号长期不用突然登录可能被劫持
同一账号同时多 IP 登录可能账号共享 / 被盗

响应

  • 立刻强制下线
  • 让用户改密 + 启用 2FA
  • 操作日志确认有无误操作
  • 必要时通知所有员工警惕

多重防御

访客 → 公网 IP
Cloudflare / WAF(防 DDoS、防 SQL 注入)
反向代理(Nginx)
后台 admin.example.com(限制 IP)
BangNiCMS 后台(密码 + 2FA)
具体操作(最小权限角色)
操作日志(审计)

每一层都要做好。

关键:员工离职当天完成账号处理。

  1. 立刻禁用账号(不要等”明天再说”)

  2. 改密(防止恢复账号时密码留存)

  3. 撤销 2FA

  4. 撤销 API Key(如果该用户创建过)

  5. 重新分配该用户的资源

    • 跟进中的询盘 → 转给其他销售
    • 待审核的内容 → 转给其他编辑
  6. 保留账号 6-12 月(追溯期)→ 然后删除

  7. 审计该用户最近的操作日志

    • 是否有异常下载?
    • 是否有恶意删除?
    • 是否泄露了数据?

保持最新

  • BangNiCMS 系统升级(看 备份与升级
  • 主题 / 插件升级
  • 数据库 / 系统补丁

漏洞响应

  • 关注 BangNiCMS 安全公告
  • 严重漏洞24h 内升级
  • 公开关键安全事件后,立刻看自己站点是否中招

核心:每日自动备份 + 异地存储。

详见 备份与升级

安全角度

  • 备份异地存储(云端 + 本地)
  • 备份加密(防止泄漏)
  • 定期演练恢复(每季度跑一次”假想灾难恢复”)

如果你用了 BangNiCMS 的 API(详见 开发者):

  • API Key严格保密(不发群、不传到 GitHub)
  • API Key定期轮换(每 6-12 月)
  • 限制 API Key 的权限范围(只读 vs 写)
  • 限制 API Key 的访问 IP

每季度做一次

  • 用户清单审计(离职已禁用?)
  • 角色权限审计(最小权限?)
  • 长期不活跃账号
  • 管理员人数 ≤ 3
  • 2FA 启用率
  • 操作日志异常检查
  • 备份是否正常
  • 系统 / 主题 / 插件已升级
  • API Key 轮换
  • DNS / SSL 证书未过期
  • 安全公告处理情况

怀疑被入侵时立刻:

  1. 断网 / 隔离:让运维临时关闭后台访问(白名单 IP 才能进)

  2. 强制全员下线 + 改密 + 启用 2FA

  3. 审计操作日志:找异常操作

  4. 数据库备份当前状态(取证用)

  5. 看备份:找到入侵前的干净备份点

  6. 决定是否回滚

    • 严重数据破坏 → 从备份恢复
    • 仅信息泄漏 → 不回滚但加固防御
  7. 通知所有受影响用户(GDPR 要求 72h 内)

  8. 复盘 + 加固

必须——HTTP 时密码明文传输,黑客一抓就得手。

详见 DNS 与 HTTPS

我能让某些用户只能访问站内某些页面吗?

Section titled “我能让某些用户只能访问站内某些页面吗?”

通过自定义角色 + 权限粒度。

如需到具体页面级的精细控制,让开发者扩展。

通常不算——它们是公开访问的。

内部资料(PDF、内部文档)如果通过媒体库公开 URL访问 → 任何知道 URL 的人都能看 → 不是真正”私有”。

需要”仅登录用户访问”的资料,让开发者实现”权限文件”功能。

后台被攻击了怎么联系 BangNiCMS 官方?

Section titled “后台被攻击了怎么联系 BangNiCMS 官方?”
  • 邮件 security@bangnicms.com(如果有)
  • GitHub 提 issue 标 security 标签(公开)
  • 严重漏洞:先私下报给官方(避免被坏人利用)