CloudPanel 是一款免费、轻量的控制面板,可通过网页界面管理 Nginx、PHP-FPM、数据库和 SSL 证书。把它装在 Infrawire Linux VPS 上,几分钟就能把一台空服务器变成可托管多个网站的平台。本文适用于 Ubuntu 24.04 和 Debian 12。
📋 前提条件
- 一台全新的 KVM VPS,系统为 Ubuntu 24.04 或 Debian 12,未安装任何其他软件(没有 Apache、Nginx、MySQL 或其他面板)。
- 至少 2 GB 内存,以及 root SSH 访问权限。在客户中心可以找到 VPS 的 IP 和 root 密码。
- 一个域名,其 DNS A 记录(如使用 IPv6 还需 AAAA 记录)指向
VPS_IP。 - 22、80、443 和 8443 端口可从互联网访问。
🔄 1. 准备系统
以 root 身份连接并更新软件包。CloudPanel 需要 curl、wget 和 sudo。
Bashssh root@VPS_IP apt update && apt -y upgrade && apt -y install curl wget sudo
如果内核已更新,请先用 reboot 重启并重新连接,再继续操作。
⬇️ 2. 运行官方安装脚本
先下载安装脚本,运行前校验其 SHA-256 校验和。每个安装脚本版本的校验和都不同:请从官方页面 https://www.cloudpanel.io/docs/v2/getting-started/other/ 复制当前的校验值和最新的数据库引擎列表(替换下方的 SHA256_FROM_DOCS)。
Bashcurl -sS https://installer.cloudpanel.io/ce/v2/install.sh -o install.sh echo "SHA256_FROM_DOCS install.sh" | sha256sum -c sudo CLOUD_PANEL_DB_ENGINE=MARIADB_11.4 bash install.sh
CLOUD_PANEL_DB_ENGINE 变量用于选择数据库服务器。文档列出的取值有 MYSQL_8.4、MYSQL_8.0、MARIADB_11.4 和 MARIADB_10.11。省略时安装脚本使用其默认值。sha256sum -c 必须输出 install.sh: OK;如果输出 FAILED,请停止并重新下载文件。安装需要几分钟。
🔑 3. 创建第一个管理员账户
在浏览器中打开 https://VPS_IP:8443。证书是自签名的,浏览器会显示警告:首次登录时请选择接受。
第一个访问者将成为管理员,所以请立即创建。填写用户名、电子邮箱和一个足够长的密码,然后登录。创建账户前不要让面板长时间暴露在外。
🌐 4. 添加 PHP 站点
在面板中依次点击 Sites、Add Site、Create a PHP Site。选择应用模板(Generic、WordPress、Laravel 等),将域名填写为 example.com,选择 PHP 版本,并设置站点用户和密码。CloudPanel 会创建 Nginx vhost、一个 PHP-FPM 池以及该站点专用的系统用户。
请使用站点用户(不是 root)通过 SFTP 将文件上传到 /home/USER/htdocs/example.com。你也可以在 Databases 中为站点创建数据库。
🔒 5. 签发 Let's Encrypt 证书
先确认 example.com 已经解析到 VPS_IP:
Bashdig +short example.com
然后打开该站点,进入 SSL/TLS 选项卡,点击 Actions,选择 New Let's Encrypt Certificate。勾选要包含的域名并确认。续期由 CloudPanel 自动完成。
🛡️ 6. 加固面板
- 在 Admin Area > Security > Firewall 中,将 8443 端口限制为只允许你自己的 IP 地址,并删除允许任意来源访问的规则。22、80 和 443 端口按需保持开放。
- 在 Admin Area > Security 中为面板启用 Basic Auth,作为第二道防线。
- 在你的用户资料中启用双重身份验证。
- 使用长且唯一的密码,并保持系统更新:
Bashapt update && apt -y upgrade
✅ 7. 验证安装
Bashss -tlnp | grep -E ':(80|443|8443)\b' systemctl is-active nginx clp-agent curl -I https://example.com
80、443 和 8443 端口应处于监听状态,两个服务都应返回 active,最后一条命令应返回 HTTP 200 或带有效证书的跳转。
🧰 故障排查
- 安装脚本拒绝运行或中途失败:CloudPanel 必须安装在干净的系统上。如果服务器上已有其他 Web 服务器或数据库,请在客户中心重装系统后重新开始。
- 8443 端口无响应:检查防火墙(面板规则及任何其他防火墙)是否放行,以及你的 IP 是否被从允许列表中移除。在服务器上运行
ss -tlnp | grep 8443。 - Let's Encrypt 失败:域名尚未指向 VPS,或代理隐藏了真实 IP。修正 DNS 记录,等待生效后重试。80 端口必须开放。
- 忘记管理员密码:在 shell 中用
clpctl user:reset:password --userName='admin' --password='NEW_PASSWORD'重置。
🎉 CloudPanel 已经运行:添加你的网站,加固 8443 端口,在你的 VPS 上享受整洁的托管环境吧。