DZPage Panel 能把你自己的 Linux 服务器变成 DayZ 主机,而且全部在 dzpage.com 上管理:创建服务器、安装游戏文件、启动、监控、安排定时重启。用起来就像那些大型服务器管理平台,只不过它是免费的,并且运行在你自己的机器上。面板本身只是守在机器上的帮手,真正的管理都在浏览器里完成。
这篇教程会带你走完全程:从一台空服务器到 DayZ 跑起来,再加上日常使用和遇到问题时需要知道的一切。
简要版
- 在 dzpage.com 的 RCon 页面,在连接服务器卡片上点击获取我的命令。
- 通过 SSH 把命令粘贴到服务器的终端里。
- 确认显示的 DZPage 账户是你的,然后登录 Steam。
- 在 dzpage.com 的你的服务器下点击新建服务器,提交表单。
- 等游戏文件下载完,然后点管理,再点启动。
面板不需要开放端口,不需要域名,也不用手动输入任何密钥。
你需要准备什么
- 一台 x86_64 架构、使用 systemd 的 Linux 服务器。 已测试 Ubuntu 22.04、Ubuntu 24.04、Debian 12 和 Debian 13,其中两个 Debian 版本的最小化安装也测试过。租一台服务器(VPS 或独立服务器)就够了。树莓派这类 ARM 设备不行,因为 DayZ 服务端只有 x86_64 版本。
- 内存和硬盘空间:一个 DayZ 服务器运行时需要 3 到 6 GB 内存和大约 6 GB 硬盘空间,装了模组会多得多。相比之下,面板本身几乎不占什么资源。
- 一个拥有 DayZ 的 Steam 账户。 没买游戏的话,Steam 会拒绝下载服务端。这一点任何面板都绕不过去。
- 一个 DZPage 账户。 通过 Discord 登录,完全免费。
- 服务器的 SSH 访问权限,可以是能用
sudo的用户,也可以直接用 root。
其余的东西安装程序都会自己准备:git、SteamCMD 需要的 32 位库,以及在需要时装进单独文件夹的 Node.js。SteamCMD 本身则由面板在你登录 Steam 时再下载。
第 1 步:获取命令
登录 dzpage.com,打开 RCon。在连接服务器卡片上点击获取我的命令。你会得到一条命令,里面带有一个一次性配对码:
curl -fsSL https://dzpage.com/panel/install.sh | sudo bash -s -- --pair dzp_pair_…这个代码只能用一次,有效期 30 分钟。之后如果需要新的,刷新页面再点一次就行。
在命令上方,你可以在使用 sudo 和以 root 运行,不用 sudo 之间切换。第二种适用于没有 sudo 的服务器,例如安装时设置了 root 密码的 Debian。在这类服务器上,sudo 版本会立刻报错“sudo: command not found”并中止。
配对码在有效期内和密码一样重要:谁拿到它,谁就能把一台服务器连接到你的账户。不要分享给别人,也不要在直播里展示。
第 2 步:粘贴到终端
通过 SSH 连接到你的服务器,粘贴命令并按 Enter。安装程序会运行几分钟:
- 检查机器(架构、系统、内存、剩余空间),哪里不够会提醒你。
- 创建一个专用用户
dzpage。面板永远不会以 root 身份运行。 - 安装 SteamCMD 需要的 32 位库,必要时还会安装 Node.js。
- 设置并启动服务。
之后它会在 dzpage.com 上兑换这个代码。在面板正式接管连接之前,终端会显示服务器将要连接到哪个 DZPage 账户,并用德语问你这是不是你的账户:
Der Server wird mit dem DZPage-Konto »DeinName« verbunden. Ist das dein Konto? [J/n]如果那里显示的是你的名字,直接按 Enter 就行,回车表示“是”([J/n] 里的 J 是德语的 Ja)。就像 AirDrop 在接收前会先问你一样,这一步确认能防止你的服务器被误连到别人的账户。如果你回答 n(或按 Ctrl+C),服务器就保持未连接状态,面板会自动撤销刚刚签发的密钥,它不会占用你的十个名额。
Steam 登录
最后,如果连接成功,安装程序会询问 Steam 账户名。随后 SteamCMD 会直接在你的终端里启动,询问密码;如果你开启了 Steam 令牌(Steam Guard),还会要求输入验证码。
你的 Steam 密码只在你自己机器上的 SteamCMD 里输入。它只会由 SteamCMD 发给 Steam,永远不会经过 dzpage.com,面板也不会保存它。保存下来的只有 SteamCMD 自己存放的登录状态,以及你的 Steam 账户名。
如果想以后再登录,把账户名留空即可,之后用这条命令补上:
sudo dzpage-panel steam-login yourSteamAccount完成。现在在 dzpage.com 的 RCon 页面上,你的机器会出现在你的服务器下,状态为已连接,并显示面板的版本。
第 3 步:创建服务器
在你的服务器下,点击你那台机器旁的新建服务器。表单会要求填写:
- 服务器名称:之后在游戏里和你的总览中显示的就是这个名字。
- 游戏端口、Steam 查询端口、RCON 端口:三个互不相同的端口,范围 1024 到 65535。推荐的是这个面板上没有其他服务器占用的端口。同一台机器上的第二个服务器需要另外三个端口。
- RCon 密码:8 到 64 个字符,不含空格。默认推荐一个随机密码,你不需要在任何地方手动输入它。
- 玩家槽位和任务(Mission),例如切尔诺鲁斯用
dayzOffline.chernarusplus。 - 限制:服务器最多能用多少内存(MB)和 CPU(100% = 一个核心)。
- 立即下载游戏文件(约 4 GB):创建完成后,面板会马上开始下载 DayZ 文件。
点击创建服务器后,指令会发送到你的面板。面板会自己再检查一遍填写的内容,创建服务器,并把它添加到你的 DZPage 账户。服务器一旦运行,你就能直接通过 RCon 使用它的控制台、玩家列表、消息和封禁功能。
第 4 步:安装并启动
游戏文件下载期间,总览里会显示一个进度条,以及 SteamCMD 当前输出的那一行。第一次下载视网速而定,需要几分钟。
下载完成后,服务器会显示为已停止,并显示它的 DayZ build。点击管理打开它的页面,再点启动。片刻之后,它会显示为运行中,并附带运行时长和内存。第一次需要你自己启动,之后每次机器重启,它都会自动启动。
没有勾选下载游戏文件?
那么在管理里,游戏文件一栏会显示未安装。在那里点击安装游戏文件开始下载。
防火墙和端口
玩家和 DZPage 的 RCon 都是从外部连接你的服务器的。所以服务器的三个 UDP 端口(游戏、查询、RCon)必须开放。
- 如果机器上启用了
ufw或firewalld,面板会在每次启动前自动开放这些端口,删除服务器时再把它们关上。 - 服务商那边的防火墙(比如 Hetzner Cloud Firewall,或者客户后台里的安全配置)面板是看不到的。你需要在那里自己放行这三个 UDP 端口。
- 面板本身不需要开放任何端口。它从内部主动向外连接 dzpage.com,所以在路由器后面也能正常工作。不过这只针对面板本身:玩家和 RCon 必须能从外部访问你的服务器,如果你在 CGNAT 后面、没有自己的公网地址,就做不到这一点。
服务器在运行,玩家却进不来?几乎总是服务商那边的防火墙在拦。
日常使用
所有操作都在 dzpage.com 的 RCon 页面完成:
- 你的服务器列出每个服务器的状态(运行中、已停止、已崩溃)、运行时长、内存和 build。
- 管理打开某个服务器的运行控制:启动、停止、重启和更新文件。
- 重启计划:设置时间,例如
04:00,16:00;提前预告,例如提前15,5,1分钟;再加一段自定义文字。预告通过 RCon 发到游戏里,重启由面板执行。 - 服务器日志:获取服务器进程日志的最后 200 行,服务器起不来的时候特别有用。
- 通过服务器页面顶部的标签页可以使用 RCon 功能:控制台、玩家、消息、封禁和审计日志。
- 删除会移除服务器,连同游戏文件、存档和配置。为了安全,你需要输入服务器名称来确认。此操作无法撤销。
服务器崩溃后,机器会在十秒后自动把它重新启动。在管理里的重启次数计数器上就能看到这一点。如果它还是起不来,就会显示为已崩溃,这时用启动把它重新拉起来。这正是单靠 RCon 做不到的:RCon 跟游戏打交道,面板跟进程打交道。
更新
面板会自动更新。 它每六小时检查一次新版本并自动安装。期间你的游戏服务器照常运行,只有面板会短暂重启。如果新版本出了问题,它会自动恢复到上一个版本。
DayZ 游戏文件用更新文件来更新。正在运行的服务器会先停止,更新完再重新启动。因为这个过程不会在游戏里提前预告,最好趁没人在线的时候做。
面板只有在你允许的情况下,才会检查 Steam 上有没有更新的 DayZ 版本:在本地界面的 Updates 菜单里开启,出厂时是关闭的。开启后,总览里 build 旁边会提示有可用更新。
多台机器和上限
- 一个账户最多可以有十个有效的面板密钥,也就是十台已连接的机器。每台机器都有自己的密钥,你可以在 RCon → 面板密钥 里单独撤销。
- 一台机器上能跑多少服务器,取决于内存和 CPU 够不够。在 dzpage.com 上可以一直新建服务器,直到这台机器上有 20 个为止。
- 每个服务器都在独立的 Linux 用户下运行,有各自的限制,既碰不到其他服务器的文件,也碰不到面板的配置。
不用命令也能连接
如果你安装面板时没有用配对码,比如用的是下面这条命令:
curl -fsSL https://dzpage.com/panel/install.sh | sudo bash那么安装结束时,终端会显示一个类似 https://dzpage.com/link?code=K7QF-M2XP 的链接。打开它,确认名称和地址确实是你的服务器,然后点击连接。之后终端会像上面一样,问你显示的 DZPage 账户是不是你的;按 Enter 后服务器就连接好了。链接里的代码 15 分钟内有效。
如果服务器还没有连接,随时可以用这条命令补上:
sudo dzpage-panel link密钥被撤销后同样可以这样做:面板会发现 dzpage.com 拒绝了它,然后重新连接。只有当你想把密钥仍然有效的服务器换到另一个账户时,才需要加 --force。这时面板会在 dzpage.com 上撤销旧密钥,前提是没有其他机器在使用它。
dzpage-panel 命令
安装程序会在机器上放一个命令,用来做浏览器里做不了的事。如果你用的是 root,去掉 sudo 即可。
sudo dzpage-panel status:服务、版本、地址,以及与 dzpage.com 的连接(最后一次联系,或密钥被拒绝)sudo dzpage-panel link:连接到你的 DZPage 账户,密钥被撤销后也一样(--force只用于换到另一个账户)sudo dzpage-panel steam-login <account>:为下载游戏文件登录 Steamsudo dzpage-panel logs:实时查看面板日志sudo dzpage-panel setup-code:本地界面的设置码sudo dzpage-panel reset-password:为本地界面设置新密码sudo dzpage-panel https enable <domain>:让本地界面通过 HTTPS 访问sudo dzpage-panel uninstall:卸载面板(--purge会同时删除数据并撤销密钥)
本地界面(可选)
面板另外还有一个自己的小型网页界面,作为应急入口。日常使用中你用不到它。它只监听机器本身(127.0.0.1:8410),特意设计成从外部无法访问。
如果确实要用,可以从你自己的电脑上通过 SSH 隧道访问:
ssh -L 8410:127.0.0.1:8410 you@your-server然后在浏览器中打开 http://127.0.0.1:8410。第一次打开时,它会要求输入设置码(界面上写作 Setup code),用 sudo dzpage-panel setup-code 就能拿到;之后会让你创建一个管理员账户。
通过自己的域名长期访问本地界面
让一条 DNS 记录(A 记录)指向你的服务器,然后执行:
sudo dzpage-panel https enable panel.yourdomain.com
这会配置好 Caddy 和 Let's Encrypt 的免费证书;如果 ufw 或 firewalld 其中之一处于启用状态,还会在里面放行 80 和 443 端口。服务商那边的防火墙需要你自己开放。用 sudo dzpage-panel https disable 可以撤回。千万不要在没有 HTTPS 的情况下把这个界面开放到互联网上。
安全要点
- 面板永远不以 root 运行,每个游戏服务器都在自己的用户下运行。
- 面板不需要开放任何端口。它从内部主动连接 dzpage.com。
- 配对时,连接之前会先显示你的账户,而且代码只能用一次,有效期也很短。
- 面板只拿到它自己的密钥。这个密钥无法访问你的账户,随时可以在面板密钥里撤销。
- 你的 Steam 密码只会由 SteamCMD 发给 Steam,绝不会发给 dzpage.com。
- 面板的源代码公开可查:github.com/006mi4/dayz-linux-gameserverpanel
卸载
sudo dzpage-panel uninstall为了安全,它会先要求你输入“entfernen”这个词(终端提示是德语,entfernen 意为“移除”,请原样输入这个德语单词),然后停止面板和所有游戏服务器,并移除服务、游戏服务器的用户、面板的防火墙规则和程序本身。游戏文件、存档和配置会保留下来。重新安装后,面板会重新接管这些服务器;它们那时处于停止状态,自动启动需要你在本地界面里重新打开。如果连这些数据也想删掉(无法恢复),在命令后面加上 --purge;这样面板还会事先在 dzpage.com 上撤销自己的密钥,前提是没有其他机器在使用它。不加 --purge 的话,密钥会继续有效,这样重新安装后就能直接恢复连接。
常见问题
“sudo: command not found”
你是以 root 登录的,而服务器上没有 sudo。在连接服务器卡片上切换到以 root 运行,不用 sudo,改用那条命令。
配对码已过期或已被使用
直接在 dzpage.com 上获取一条新命令就行。如果面板已经装好了,不用命令也可以:sudo dzpage-panel link 会显示一个带代码的链接。
游戏文件下载不了(“No subscription”)
这个 Steam 账户没有 DayZ,或者 SteamCMD 没有登录。如果 dzpage.com 上提示 SteamCMD 没有登录 Steam,就在机器上运行 sudo dzpage-panel steam-login <account>。匿名登录的话,Steam 不允许下载 DayZ 服务端。
机器显示“未连接”
用 sudo dzpage-panel status 查看:DZPage 这一行会显示最后一次联系的时间,或者 dzpage.com 拒绝了密钥。如果密钥被拒绝(例如已被撤销),用 sudo dzpage-panel link 重新连接。如果最后一次联系已经很久,sudo dzpage-panel logs 会显示服务报告了什么。面板需要能通过 HTTPS 向外访问 dzpage.com。
玩家找不到服务器,或者 RCon 连不上
检查服务商那边的防火墙:服务器的三个 UDP 端口必须在那里放行。如果同一台机器上还跑着第二个服务器,它需要自己的端口。
服务器反复自动重启
如果管理里的重启次数一直在增加,说明服务器一启动就崩溃。在那里获取服务器日志;原因往往就写在里面,比如任务填错了,或者内存不够。拿不准的话,就把内存上限调高。
“无上报”或“低于 0.5.0”
旧版面板还不会上报它的服务器。它会在几个小时内自动更新。想马上解决,就不带代码再运行一次安装命令:curl -fsSL https://dzpage.com/panel/install.sh | sudo bash。第二次运行只会更新,你的服务器和数据都会保留。刚连接完的几秒钟里,第一份上报到达之前,也可能会出现这个提示;这时刷新一下页面就行。
“此账户连接的服务器已达上限”
每个账户最多可以有十个有效的面板密钥。在 RCon → 面板密钥 里撤销一个不再需要的密钥即可。
有问题、发现错误或者有想法?直接在这个帖子里回复,或者发到技术与问题论坛。
· 已编辑
