前期准备
系统环境要求
组件 | 推荐版本/配置 | 说明 |
---|---|---|
操作系统 | Ubuntu 20.04+/CentOS 7+ | 64位Linux内核 |
Web服务器 | Nginx/Apache | 默认端口80或443 |
PHP | >=7.4 | 启用mysqli 扩展 |
数据库 | MySQL >=5.7 / MariaDB | 建议独立部署数据库服务 |
SSL证书 | Let's Encrypt免费证书 | 强制HTTPS访问 |
安装云锁面板
通过官方脚本一键安装(以Ubuntu为例):

curl -fsSL https://yunso.cn/installer | sh
- 验证安装:访问
https://您的IP:9000
,使用初始账号登录(默认用户名admin,密码为随机生成的复杂字符串) - 安全策略初始化:首次登录后需完成基础配置向导,包括设置管理员密码、绑定手机号等双因素认证方式。
网站部署流程
步骤1:创建站点目录结构
/data/wwwroot/ ├── yourdomain.com # 站点根目录 │ ├── public # 静态资源存放处 │ └── application # 应用代码入口文件 └── logs # 日志存储路径(建议挂载到宿主机)
⚠️ 注意:避免直接将代码放在
/root
目录下,防止权限泄露风险。
步骤2:配置Web服务器反向代理
以Nginx为例,编辑配置文件:
server { listen 80; server_name yourdomain.com; location / { proxy_pass http://unix:/tmp/php-fpm.sock; # 根据实际PHP-FPM套接字路径调整 root /data/wwwroot/yourdomain.com; index index.php; try_files $uri $uri/ /index.php?$query_string; } # HTTPS重定向规则 if ($scheme = http) { return 301 https://$host$request_uri; } }
重启服务使配置生效:systemctl restart nginx
步骤3:数据库连接池设置
在应用程序中使用PDO连接时,推荐参数如下:
| 参数项 | 值示例 | 作用说明 |
|----------------|----------------------------|------------------------|
| DSN | mysql:host=127.0.0.1;dbname=testdb
| 指定数据库地址和名称 |
| charset | utf8mb4 | 支持Emoji表情存储 |
| attrs | {persistent: true} | 启用长连接复用机制 |

云锁安全防护配置
核心功能启用清单
模块 | 操作建议 | 预期效果 |
---|---|---|
CC攻击防护 | 开启频率限制(默认阈值:10次/分钟) | 阻止暴力破解尝试 |
SQL注入检测 | 启用正则表达式过滤模式 | 拦截恶意构造的SQL语句 |
XSS跨站脚本防御 | 设置为“严格模式” | 自动转义特殊字符 |
文件上传白名单 | 仅允许jpg/png/pdf格式 | 杜绝任意文件执行漏洞 |
访问控制列表(ACL) | IP段封禁+地理位置识别 | 限制非信任区域的访问请求 |
高级策略调优示例
修改/usr/local/yunso/conf/waf.json
文件:
{ "rules": [ { "id": 10086, "name": "自定义API限流", "condition": "request_uri ~ ^/api/v[0-9]+/", "action": "captcha", "threshold": {"period": 60, "count": 5} } ] }
该规则对/api/
路径下的请求实施每分钟5次的限制,超出后触发验证码验证机制。
性能优化建议
优化维度 | 实施方案 | 收益指标 |
---|---|---|
Gzip压缩 | Nginx开启gzip on; 指令 |
减少传输体积约70% |
CDN加速 | 接入阿里云DCDN节点 | 首屏加载时间降低至<2s |
OPcache预编译 | PHP配置opcache.enable=1 |
CPU占用下降40%~60% |
Memcached缓存 | 热点数据缓存有效期设为3600秒 | QPS提升3倍以上 |
相关问题与解答
Q1:云锁是否会影响现有网站的正常访问?
A:正确配置下不会产生影响,建议分阶段启用防护模块,先观察日志中的拦截记录,逐步调整误报规则,可通过控制面板的「流量分析」功能查看实时请求状态。
Q2:如何迁移已上线的老项目到云锁环境?
A:推荐采用灰度发布策略:①在测试环境完整复现生产拓扑;②使用云锁的「镜像同步」功能克隆配置;③通过DNS轮询逐步切换流量;④监控指标确认稳定性后全量切换,期间可开启调试模式记录详细事件以便排查问题
