部署PbootCMS后必做的安全自检清单(上线前一定要逐条检查)
很多站点上线后“看起来能访问就结束了”,但实际上,真正的风险往往就在部署完成后的前30分钟内埋下。
PbootCMS 作为一款轻量级CMS,默认配置偏“开发友好”,如果不做安全加固,很容易被扫描器、批量脚本甚至自动化攻击盯上。

这篇文章整理一份上线前必做的安全自检清单,建议你部署完成后逐条执行。
一、基础环境安全检查(服务器层)
1. 是否关闭目录浏览
检查 Nginx / Apache 是否允许目录结构被访问。
Nginx:
autoindex off;
Apache:
Options -Indexes
否则用户可能直接看到 /runtime/、/app/ 等结构。
2. PHP 禁用危险函数
建议在 php.ini 中禁用:
disable_functions = exec,passthru,shell_exec,system,proc_open,popen
很多入侵不是 CMS 漏洞,而是 PHP 执行能力被利用。
3. 文件权限是否合理
推荐权限原则:
文件:644
目录:755
不可使用 777
重点目录:
/runtime//upload//config/
错误权限是最常见的“低级漏洞入口”。
二、PbootCMS核心安全检查
4. 后台路径是否默认
安装后第一件事:
修改后台入口路径(如
/admin.php)避免默认
/admin
攻击者扫描的第一目标就是默认后台。
5. debug模式是否关闭
检查配置文件:
config.php
确保:
DEBUG = false
开启调试模式可能泄露:
SQL结构
文件路径
系统信息
6. 错误信息是否暴露
确认线上环境不输出:
SQL错误
文件路径
服务器版本信息
三、文件上传与资源目录安全
7. 上传目录是否可执行PHP
重点检查:
/upload/ /static/ /runtime/
确保上传目录禁止 PHP 执行:
Nginx示例
location ~* /upload/.*.(php|php5|phtml)$ {
deny all;
}这是防止“上传一句话木马”的核心配置。
8. 是否限制上传文件类型
建议只允许:
jpg
png
gif
pdf
禁止:
php
js(在某些场景下)
html
四、模板与解析安全
9. 是否存在模板注入风险
PbootCMS 的模板系统灵活,但也容易出现:
标签注入
未过滤变量输出
动态执行代码风险
检查点:
是否直接输出
{$变量}是否存在未过滤的
eval类逻辑
10. 是否关闭不必要的模板标签
如果业务不需要:
自定义SQL标签
动态执行标签
建议限制或关闭,减少攻击面。
五、数据库安全检查
11. 数据库账号权限是否过大
不要使用:
root权限账号
ALL PRIVILEGES
建议:
仅赋予当前库权限
禁止远程登录(如不需要)
12. 是否开启SQL注入防护(基础层)
虽然 PbootCMS 已做一定过滤,但仍建议:
开启 WAF(Web应用防火墙)
加入基础SQL规则拦截
六、访问与HTTP安全
13. 是否开启HTTPS
必须检查:
HTTP自动跳转 HTTPS
禁止混合内容(Mixed Content)
14. 是否设置安全响应头
推荐基础配置:
X-Frame-Options: SAMEORIGIN X-Content-Type-Options: nosniff X-XSS-Protection: 1; mode=block Referrer-Policy: no-referrer-when-downgrade
七、后台登录安全
15. 是否开启登录保护机制
建议增加:
登录错误次数限制
IP限制访问后台
验证码(必须开启)
16. 是否使用弱密码
常见被攻击原因:
admin / 123456
生日组合
简单数字密码
建议:
12位以上
混合大小写+符号
八、上线后的持续检查
17. 是否开启日志监控
重点日志:
登录日志
404异常
上传行为
18. 是否定期扫描文件变更
建议:
每日扫描
/upload/检查异常
.php文件
29. 是否做备份策略
必须具备:
数据库每日备份
网站文件每周备份
异地存储
经验分享
部署 PbootCMS 不只是“能打开网站”,而是要确保它在公网环境中是“抗扫描、抗入侵、抗误配置”的。
真正安全的网站,往往不是靠“一个功能”,而是靠一整套上线前检查 + 持续维护机制。
如果你能把上面20项逐条做完,你的网站安全等级至少能提升一个量级。