如何安装VestaCP和迁移用户数据
介绍
Vesta 控制面板 是一个免费的开源控制面板,具有网站、电子邮件、数据库和 DNS 功能。 在本教程中,您将在 Ubuntu 或 CentOS 服务器上安装控制面板,更新默认管理界面端口,并了解如何从现有安装迁移用户数据。
注意: 2018 年 4 月 8 日,VestaCP 中发现了一个漏洞,攻击者可以利用该漏洞破坏主机系统并发送针对其他服务器的恶意流量。 因此,DigitalOcean 禁用了 VestaCP 的默认 port 8083
。 本教程将更新安装以改用 port 5600
。 有关此漏洞的更多最新信息,请阅读这个社区问答帖 .
先决条件
完成本教程需要以下资源:
- Ubuntu 16.04 或 CentOS 7 服务器
- 指向您的服务器的域名。 如何使用 DigitalOcean 设置主机名 将向您展示如何使用 DigitalOcean 控制面板管理域。 我们将在本教程中使用 panel.example.com
- 两条 A 记录将 ns1.example.com 和 ns2.example.com 指向您的服务器
安装 VestaCP
通过 SSH 登录到您的服务器。 因为 VestaCP 处理个人用户帐户的创建,所以本教程将假设您以 root 用户身份登录以进行初始设置。
登录后,移动到/tmp
临时目录,下载安装脚本:
cd /tmp curl -O https://assets.digitalocean.com/vesta/install-vesta-do.sh
该脚本是官方 VestaCP 安装脚本的封装。 你可以在你最喜欢的文本编辑器中打开它,看看它做了什么。 它使用官方脚本安装软件,然后更新管理界面使用port 5600
。
使脚本可执行:
chmod +x install-vesta-do.sh
最后,运行脚本来安装 VestaCP。 您可以传入官方安装脚本支持的任何选项,您可以在VestaCP的安装页面找到。 我们将使用 --force
选项,否则安装程序可能会抱怨某些机器上现有的 admin 组:
./install-vesta-do.sh --force
该脚本会以交互方式询问几个问题,然后大约需要 5-15 分钟才能完成安装。 您的管理界面的 URL 将与管理员登录信息一起打印出来:
OutputCongratulations, you have just successfully installed Vesta Control Panel https://panel.example.com:8083 username: admin password: a-random-password
注意: 这些初始 URL 将不正确,因为它们仍将使用 port 8083
。 安装输出的最后一行应该是
Configuring to use port 5600 as admin port
在尝试连接之前更新所有 port 8083
对 port 5600
的引用。 例如,示例 URL 是 https://panel.example.com:5600。 初始安装后,任何后续发送给用户的电子邮件都将使用正确的端口。
VestaCP 现在已在您的服务器上启动并运行。 如果您有现有的 VestaCP 安装,请继续下一步,我们会将您的用户数据迁移到新服务器。
在服务器之间迁移 VestaCP 用户数据
VestaCP 附带一些脚本来帮助备份和恢复用户数据。 我们将使用这些脚本迁移所有用户。
在 您要从 迁移的服务器上,使用 v-backup-users
备份所有用户:
v-backup-users
注意: 如果您在运行备份程序时遇到 command not found
错误,您可能需要通过运行以下命令更新您的 PATH
:
export PATH=$PATH:/usr/local/vesta/bin
如果您在安装 VestaCP 后注销并重新登录,则会自动处理此问题。
该命令将不输出任何状态信息。 您可以在 /backup
中检查生成的备份文件:
ls /backup
Outputadmin.2018-04-11_13-07-02.tar exampleuser.2018-04-11_13-07-02.tar
上面的输出显示了两个备份的用户,admin 和 exampleuser。 要将这些文件传输到您的新服务器,我们将使用 scp
实用程序。 无论您有一个或多个备份文件,以下步骤都将起作用。
如果您在新服务器上使用密码身份验证,最简单的方法是将文件直接从旧服务器传输到新服务器,如下所示:
scp /backup/* root@panel.example.com:/backup/
如果您使用 SSH 密钥而不是密码,这将不容易工作。 在这种情况下,最简单的方法是将文件下载到本地计算机,然后将它们上传到新服务器。 我们将首先创建一个临时本地目录来保存文件。 在本地命令行上,执行以下操作:
mkdir /tmp/vesta-backups scp root@old-server.example.com:/backup/* /tmp/vesta-backups/ scp /tmp/vesta-backups/* root@panel.example.com:/backup/
现在,将备份的 .tar
文件上传到新服务器的 /backup
目录,重新登录到新服务器并使用 v-restore-user
命令完成该过程:
v-restore-user admin admin.2018-04-11_13-07-02.tar
注意v-restore-user
命令需要.tar
文件的文件名,而不是文件的完整路径。 假设您提供的文件名在 /backup
目录中。
该命令将输出已恢复项目的摘要。 对需要恢复的每个用户重复此命令,根据需要替换用户名和 .tar
文件名。 您的迁移现已完成。
结论
在本教程中,您安装了 VestaCP 控制面板,更新了其默认管理界面的端口,并从预先存在的安装中迁移了用户数据。 要了解更多关于使用 VestaCP 软件设置网站和电子邮件的信息,请参阅 如何在 Ubuntu 14.04 上安装 VestaCP 和设置网站的步骤 3 和 4。 也可以参考【X22X】官方文档【X52X】。