跳转到内容

安全防护

面板登录页使用 ALTCHA Proof-of-Work 机制,要求客户端在提交登录请求前完成计算挑战,有效防止自动化暴力破解攻击。

支持 TOTP 双因素认证:

  1. 设置 → 安全 中启用 2FA
  2. 使用 Google Authenticator / Authy 等应用扫描二维码
  3. 登录时需要输入动态验证码

所有 API 请求使用 JWT Token 认证:

  • Token 包含用户 ID 和角色
  • 密钥持久化到文件,重启不失效
  • 支持 Token 刷新

所有写操作(POST/PUT/DELETE)自动记录审计日志:

  • 操作时间
  • 操作用户
  • 请求路径和方法
  • 响应状态码

面板自动设置以下安全头:

  • X-Content-Type-Options: nosniff
  • X-Frame-Options: DENY
  • X-XSS-Protection: 1; mode=block
  • Referrer-Policy: strict-origin-when-cross-origin
  • Permissions-Policy

连续 5 次登录失败后,面板会发送 Webhook / 邮件告警通知(10 分钟节流)。

为每个站点独立配置禁用的 PHP 危险函数:

exec, passthru, shell_exec, system, proc_open, popen

使用 php_admin_value 指令,用户无法通过 .htaccess 覆盖。

LiteHttpd 完整支持 .htaccess,WordPress 安装时自动配置:

  • wp-config.php 访问保护(返回 403)
  • 上传目录 PHP 执行保护
  • xmlrpc.php 屏蔽
  • 安全头配置

定期检查 WordPress 插件和主题的安全状态,详见 WordPress 工具箱

LLStack 支持基于角色的访问控制(RBAC),实现多用户协作管理。

角色说明权限范围
Owner服务器所有者全部权限,管理所有用户和站点
Admin管理员管理站点和服务,不可修改 Owner 设置
Developer开发者管理分配的站点,部署和调试
Viewer只读用户查看分配的站点信息,不可修改

每个用户可以被分配到特定站点,只能访问和管理被授权的站点资源。Owner 和 Admin 默认拥有所有站点的访问权限。

为每个用户配置资源使用配额:

配额项说明
max_sites最大站点数量
max_databases最大数据库数量
disk_quota磁盘空间配额
  • 文件管理器仅限访问站点目录(站点根目录 + 用户主目录),无法访问 /etc/root 等系统目录
  • 文件上传具备符号链接逃逸保护,防止通过 symlink 访问受限目录
  • 文件写入前执行 TOCTOU 符号链接预检查,防止竞态条件攻击

面板遵循最小权限原则:

  • SSL 证书私钥:0600
  • 站点文件:用户所有,非 root
  • 面板操作通过 sudo 执行受限的 shell 脚本
  • sudoers 白名单严格限制可执行的脚本