2026 年如何托管 Minecraft 服务器:新手完整指南
托管 Minecraft 服务器,就是在一台玩家游玩时保持在线的电脑上运行服务器软件,并接受游戏客户端的连接。入门流程是:安装兼容的 Java,下载服务器 JAR,运行一次,阅读并在同意后接受 EULA,配置世界,再通过网络防火墙允许玩家连接。
本指南主要面向 Minecraft:Java 版。 内容涵盖家用 Windows 电脑与 Ubuntu/Linux VPS,随后介绍 Paper、性能、备份和安全。你可以先学习流程,无需先购买主机服务。
常见的部署位置有三种:家用电脑、VPS 或云服务器,以及托管式 Minecraft 主机。家用电脑可从 Windows 部分开始;Linux 服务器可直接跳到 Ubuntu/VPS 安装。配置与维护部分适用于两者。
版本核查:2026 年 9 月 20 日: Paper 当前的兼容性表建议 Paper 1.20–1.21.11 使用 Java 21,Paper 26.1+ 使用 Java 25。Minecraft 官方 26.1 版本也要求 Java 25。务必检查准备运行的具体 Minecraft/Paper 版本对 Java 的要求。来源:Paper 要求与 Minecraft 26.1 发行说明。
托管 Minecraft 服务器需要什么?
| 要求 | 所需条件 |
|---|---|
| Minecraft 版本类型 | 与服务器版本兼容的 Java 版客户端 |
| Java | 支持所选服务器版本的运行时 |
| CPU | 较强的单线程性能;需求因负载而异 |
| 内存 | 足够的 Java 堆,以及操作系统和其他进程所需的内存 |
| 存储 | 优先选择 SSD/NVMe,为世界和备份预留空间 |
| 网络 | 稳定连接与足够的上传带宽 |
| 端口 | Java 游戏默认使用 TCP 25565 |
| 公网访问 | 可访问的公网地址、必要的家庭端口转发,或合适的托管连接端点 |
| 操作系统 | Windows 或受支持的 Linux 发行版 |
| 管理权限 | 本地文件访问,或 VPS 上具有 sudo 权限的 SSH 账户 |
Minecraft 没有通用的“必须四核”规则。许多 tick 运算对 CPU 单线程性能敏感。实体、红石、已加载区块、插件和模组决定该线程有多忙;额外核心仍有助于其他工作。仅凭 VPS 的 vCPU 数量无法预测玩家容量。
保持客户端与服务器版本兼容。基岩版玩家无法直接加入这种普通 Java 服务器。这里的 Minecraft 专用服务器指独立的服务器进程,并不要求租用整台物理专用服务器。
Minecraft 服务器需要多少内存?
以下实用起步建议指的是 Java 堆内存,并非官方最低要求或玩家数量保证:
| 服务器类型 | 建议起步堆大小 |
|---|---|
| 2–5 名 Vanilla 玩家 | 2–3 GB |
| 5–10 名 Vanilla 玩家 | 3–4 GB |
| 10–20 名玩家 | 4–6 GB |
| 带插件的 Paper | 4–8 GB,取决于负载 |
| 模组整合包 | 6–12+ GB,取决于整合包 |
玩家数量、视距、模拟距离、插件、模组、世界大小和新区块生成都会影响需求。大世界主要占用磁盘;活跃加载的部分及相关数据决定内存使用量。分配资源前,请检查整合包自身的服务器要求。
下文示例使用 -Xms2G -Xmx4G:初始堆 2 GB,最大堆 4 GB。仅在电脑还能为操作系统、Java 非堆分配、游戏客户端或其他服务保留足够内存时使用。4 GB VPS 上的小型服务器应从较小的堆开始,例如 -Xms1G -Xmx2G,并持续监测。
更多内存不会自动改善 tick 性能。受 CPU 限制的服务器即使有大量空闲内存,仍可能卡顿;不必要的大堆还会改变垃圾回收行为。增加前先测量。
方法一:在 Windows 上托管 Minecraft
第一步:安装兼容的 Java
根据 Paper 的 Java 安装指南,为服务器版本选择受支持的 64 位 Java。Windows 说明链接至 Amazon Corretto 安装程序;请选择所需的主版本与电脑架构。安装后打开新的 PowerShell 窗口检查:
java -version
Get-Command javaMinecraft/Paper 26.1 应使用 Java 25;其他版本应先检查要求。Minecraft 启动器内附带的 Java 不一定能被 PowerShell 使用。如果找不到 java,通过安装程序选项把运行时的 bin 目录加入 Windows PATH,再重新打开 PowerShell。若显示旧 Java,检查 Get-Command java 并修正 PATH。
第二步:创建服务器文件夹
使用独立文件夹,不要把文件散放在桌面上:
New-Item -ItemType Directory -Force -Path C:\MinecraftServer
Set-Location C:\MinecraftServer使用对该文件夹具有写入权限的账户。Minecraft 本身不需要管理员终端;后续配置防火墙规则时才需要提升权限。
第三步:下载 Minecraft 官方服务器
打开 Minecraft Java 服务器官方下载页,阅读提示,下载准备使用的版本对应的服务器 JAR。保存至 C:\MinecraftServer,命名为 server.jar。在文件资源管理器中显示文件扩展名,避免误命名为 server.jar.jar。
本教程链接至 Mojang 的官方发行文件,而不是重新分发 JAR。不要使用非官方下载镜像。如果需要插件,先完成基础安装,再参考 Paper 部分。
第四步:首次运行服务器
在同一个 PowerShell 窗口中运行:
Set-Location C:\MinecraftServer
java -Xms2G -Xmx4G -jar server.jar nogui-Xms 设置初始堆,-Xmx 设置上限,-jar 指定可执行文件,nogui 关闭服务器图形窗口。如果电脑无法提供 4 GB 堆,请先调整内存参数。
首次使用新文件夹时,服务器通常生成初始配置文件后,因尚未接受 EULA 而退出。这是正常的首次启动停止,并不是关闭安全设置的理由。
第五步:阅读 EULA,并在同意后接受
阅读 Minecraft EULA,打开生成的文件:
notepad C:\MinecraftServer\eula.txt只有在同意时,才将这一行:
eula=false改为:
eula=true保存文件。如果不同意,请不要继续。公开或商业化社区还应阅读 Minecraft 使用指南;本安装指南不授予忽略这些规则的许可。
第六步:再次启动并进行本地测试
java -Xms2G -Xmx4G -jar server.jar nogui等待世界生成和 Done 提示。常见文件包括 server.properties、whitelist.json、ops.json、world/ 与 logs/,部分只会在对应初始化后出现。世界目录保存游戏进度;只有 JAR 不算备份。
在 Minecraft Java 版中选择多人游戏 → 添加服务器,同机游玩时输入 localhost,并使用匹配的客户端版本。安全关闭时,在服务器控制台而非 PowerShell 中输入:
stop等待保存完成、返回 PowerShell。不要直接关闭终端或强制结束进程。朋友游玩时保持电脑唤醒,并避开游戏时间安排 Windows 重启。
配置 server.properties
编辑 server.properties 前停止服务器。Windows 使用记事本,Linux 使用 VPS 步骤中的编辑器。修改现有键,不要追加重复项。
这是私人服务器的建议配置,不代表每个值都是默认值:
server-port=25565
server-ip=
online-mode=true
white-list=true
enforce-whitelist=true
max-players=10
view-distance=10
simulation-distance=10
motd=My Minecraft Server
enable-rcon=false
enable-query=falsePaper 当前的 server.properties 参考列出 25565、online-mode=true 和距离 10 为默认值;默认的 max-players=20、white-list=false 则被本示例有意调整。以具体版本生成的文件与文档为准。
- server-port: 玩家连接的 TCP 端口。更改后同步修改防火墙和连接地址。
- server-ip: 通常留空。路由器公网 IP 不是分配给电脑的地址,不应填在这里。
- online-mode: 保持
true以验证账户,不要为解决连接问题或绕过正版验证而关闭。 - white-list: 仅允许获准玩家;
enforce-whitelist=true还会对已连接玩家执行移除。 - max-players: 限制同时加入人数;提高数值不会增加 CPU 或内存。
- view-distance: 影响玩家附近发送和保留的区块数量,增加 CPU、内存和带宽需求。
- simulation-distance: 控制活跃模拟范围,包括生物、实体和红石负载。
- motd: 多人游戏列表中的描述。除非确有需求并采取安全措施,否则关闭远程管理和查询监听。
重启后,从 Minecraft 服务器控制台添加自己和朋友,将示例替换为真实 Java 用户名:
whitelist add YourMinecraftName
whitelist add FriendMinecraftName
whitelist list控制台命令不需要前缀 /,游戏内命令需要。如果需要游戏内管理,只在控制台通过 op YourMinecraftName 授予自己信任的账户管理员权限,不要给所有玩家操作员权限。之后,获授权的操作员可在 systemd 服务运行时使用 /whitelist add FriendMinecraftName。
如何让朋友加入 Minecraft 服务器
在同一个网络中
在 Windows 主机上查找正在使用的 Wi-Fi 或以太网适配器的 IPv4 地址:
ipconfigLinux 使用:
ip -4 address选择实际网卡的局域网地址,而不是回环地址、Docker 网桥或无关的 VPN 适配器,例如 192.168.1.50。同网络朋友在多人游戏 → 添加服务器中输入它,不能输入指向其自己电脑的 localhost。非默认端口可使用 192.168.1.50:25566。
主机防火墙仍需允许连接。访客 Wi-Fi 和无线客户端隔离可能让设备无法互通,即使它们共享同一互联网连接。
Windows 防火墙:仅允许游戏端口
打开 Windows 安全中心 → 防火墙和网络保护 → 高级设置 → 入站规则 → 新建规则。选择端口、TCP、特定本地端口:25565,再选择允许连接。选择符合托管网络的配置文件,将规则命名为 Minecraft Java TCP 25565。
对于设置为“专用”的可信家庭局域网,等效的管理员 PowerShell命令是:
New-NetFirewallRule -DisplayName "Minecraft Java TCP 25565" -Direction Inbound -Action Allow -Protocol TCP -LocalPort 25565 -Profile Private
Get-NetConnectionProfile专用网络规则也处理转发到该专用网卡的互联网流量;配置文件描述的是网卡网络,而不是玩家是否远程。如果网卡为公用,应明确选择适用配置文件,不要假设上述规则生效。不要为托管游戏把不可信 Wi-Fi 标记为专用。参阅 Microsoft 防火墙指南。
不要为了让 Minecraft 连接成功而关闭整个防火墙。 Java 游戏需要的是这个 TCP 端口,而不是所有 Java 进程或任意端口范围。
端口转发:让朋友从互联网连接
常见的家庭 IPv4 托管需要公网 IPv4、入站防火墙规则和路由器转发规则。通过路由器 DHCP 地址保留功能固定主机局域网地址。
登录路由器,查找端口转发、NAT或虚拟服务器。不同路由器菜单不同,请参考其文档。建立以下映射:
| 路由器字段 | 示例值 |
|---|---|
| 名称 | Minecraft Java |
| 协议 | TCP |
| 外部/WAN 端口 | 25565 |
| 内部目标 | 192.168.1.50 — 替换为主机局域网 IP |
| 内部/LAN 端口 | 25565 |
连接路径如下:
朋友的 Java 客户端
|
互联网
|
公网 IPv4 : TCP 25565
|
路由器端口转发 -> 192.168.1.50:25565
|
主机防火墙允许 TCP 25565
|
Minecraft 服务器进程从路由器 WAN/互联网状态获取当前公网 IPv4,并在关闭 VPN 后,与同一连接下外部 IP 查询服务显示的地址比较。私下将公网地址分享给朋友。地址变动后通知他们或使用动态 DNS。不要向互联网玩家提供示例中的 192.168.1.50;私有地址不会在互联网中路由。
让外部朋友或使用手机热点的电脑测试。若路由器不支持 NAT 回环,局域网内测试公网 IP 可能失败,即使外部玩家能够连接。每次端口测试时保持服务器运行。TCP 连接成功只证明网络路径可达;加入游戏还会检查版本与白名单。
可直接访问的 VPS 通常使用服务商公网 IP 和防火墙设置来代替家庭路由器。使用 NAT 的服务商可能提供特定端口映射;按其分配的连接端点操作。
为什么端口转发有时不起作用:CGNAT
部分运营商使用运营商级 NAT(CGNAT),多个客户在运营商设备后共享一个公网 IPv4。自家路由器的端口转发无法配置运营商上游 NAT。
比较路由器 WAN IPv4 与外部看到的公网 IPv4。WAN 地址位于 100.64.0.0/10 或私有范围是一个线索。地址不同也可能来自另一台家庭路由器、VPN 或其他上游 NAT,不能仅凭比较证明 CGNAT;请向运营商确认。
若有两台路由器,可能需要两处转发,或将运营商设备配置为合适的桥接模式。如果上游 NAT 由运营商控制,可申请公网 IP、迁移至 VPS/云服务器、使用合适的 TCP 隧道,或选择托管主机。依赖隧道前检查延迟、访问模型和条款。
当所有玩家都具备 IPv6 连接时,可访问的公网 IPv6 也可能解决问题,但仍需防火墙规则和合适的 DNS。不要假设它能让仅有 IPv4 的朋友连接。
方法二:在 Ubuntu/Linux VPS 上托管 Minecraft
具体软件包示例面向 x86-64 上的 Ubuntu 24.04 LTS,要求 sudo 和 systemd。Debian 系发行版命令类似,但软件包可用性不同。先选定服务器版本与 Java 主版本。管理员账户使用 SSH 密钥,并保留服务商控制台访问。
第一步:更新服务器
在 SSH 中的 Linux Bash运行以下命令,而不是 Windows PowerShell:
sudo apt update
sudo apt upgrade -y
sudo apt install -y curl ca-certificates nano ufw software-properties-common若系统提示需要重启,在安装期间重启并重新连接后再继续。已有其他应用的 VPS 应避开它们的使用时间安排升级。
第二步:安装正确的 Java 版本
检查当前运行时;“command not found”仅说明尚未安装:
java -version对于要求 Java 25 的 26.1 系列 Java/Paper 服务器,Ubuntu Noble 仓库目前提供 OpenJDK 25。启用 Universe、刷新索引,并先查看候选版本:
sudo add-apt-repository -y universe
sudo apt update
apt-cache policy openjdk-25-jre
sudo apt install -y openjdk-25-jre
java -version
readlink -f /usr/bin/java使用完整运行时,而不是只有 headless 软件包:Paper Java 指南特别提醒无头安装缺少依赖的问题。软件包系列列于 Ubuntu Noble 软件包索引。不要把 Ubuntu 仓库定义复制到 Debian。
如果候选版本为 (none),停止并按照 Paper 官方 Java 指南的受支持发行版说明操作,或使用能提供该软件包的受支持 Ubuntu 镜像。Paper 1.20–1.21.11 建议 Java 21,应改用对应的 openjdk-21-jre。这些是按版本选择的分支,不代表所有服务器都该用最新 Java。
如果安装了多个 Java 版本,选择并验证预期的默认版本:
sudo update-alternatives --config java
/usr/bin/java -version下方服务使用 /usr/bin/java。如果 VPS 上还有其他 Java 应用,应在服务中指定正确的 Java 绝对路径,而不是更改共享默认版本。
第三步:创建专用 Minecraft 用户和目录
sudo adduser --system --home /opt/minecraft --group minecraft
sudo install -d -o minecraft -g minecraft -m 0750 /opt/minecraft/server该服务账户拥有游戏文件,不提供普通交互式登录。目录有意设为私有;后续命令在以 minecraft 运行的 shell 中切换目录,不要求管理员直接进入。管理员用 sudo 管理;Minecraft 始终以 minecraft 而非 root 运行。不要通过 chmod 777 解决文件错误。
第四步:从官方来源下载服务器 JAR
在自己的电脑上打开 Minecraft 官方下载页,复制所选版本真正的服务器 JAR 链接,而非网页 URL。在 SSH 会话的提示处粘贴:
read -r -p 'Paste the official HTTPS server JAR download URL: ' SERVER_JAR_URL
sudo -u minecraft curl --fail --location --proto '=https' --proto-redir '=https' \
"$SERVER_JAR_URL" -o /opt/minecraft/server/server.jar
unset SERVER_JAR_URL
sudo -u minecraft ls -lh /opt/minecraft/server/server.jar这里有意从当前官方下载页获取 URL,而不是在文章中固定带版本哈希的链接。继续前检查文件与版本。很小的 HTML 文件或 Invalid or corrupt jarfile 通常说明复制的是网页链接而非 JAR。如果发布方提供校验和,请据此验证下载文件。
部署 Paper 时使用 Paper 官方下载并遵循其版本要求;后文解释文件名的更改。
第五步:首次运行并阅读 EULA
sudo -u minecraft sh -c '
cd /opt/minecraft/server &&
exec /usr/bin/java -Xms2G -Xmx4G -jar server.jar nogui
'服务器按预期因 EULA 停止后,阅读 Minecraft EULA,再以服务用户编辑文件:
sudo -u minecraft nano /opt/minecraft/server/eula.txt同意后手动将 eula=false 改为 eula=true 并保存。Nano 中依次使用 Ctrl+O、Enter、Ctrl+X。这里没有任何命令会替你自动接受协议。
第六步:配置、启动并添加玩家
sudo -u minecraft nano /opt/minecraft/server/server.properties应用 server.properties 中的私人服务器设置,再运行:
sudo -u minecraft sh -c '
cd /opt/minecraft/server &&
exec /usr/bin/java -Xms2G -Xmx4G -jar server.jar nogui
'等待 Done,在这个 Minecraft 控制台中用 whitelist add YourMinecraftName 添加用户,必要时用 op YourMinecraftName 授权可信管理员。输入 stop,等待保存完成后再转用 systemd。不要同时运行手动进程与服务,它们会争用同一世界和端口。
将 Minecraft 作为 systemd 服务运行
systemd 服务可开机启动,并在 SSH 断开后继续运行。以管理员创建服务单元:
sudo nano /etc/systemd/system/minecraft.service粘贴此单元文件,根据实际电脑调整堆大小:
[Unit]
Description=Minecraft Java Server
Wants=network-online.target
After=network-online.target
StartLimitIntervalSec=300
StartLimitBurst=5
[Service]
Type=simple
User=minecraft
Group=minecraft
WorkingDirectory=/opt/minecraft/server
ExecStart=/usr/bin/java -Xms2G -Xmx4G -jar /opt/minecraft/server/server.jar nogui
Restart=on-failure
RestartSec=10
KillSignal=SIGINT
TimeoutStopSec=300
UMask=0027
NoNewPrivileges=true
PrivateTmp=true
ProtectHome=true
ProtectSystem=full
[Install]
WantedBy=multi-user.target服务使用受限权限运行,失败后重启,并通过限制防止快速无限崩溃循环。systemctl stop 时,SIGINT 请求 Java 正常关闭,让 Minecraft 保存。五分钟超时是起点;大型世界应观察关闭日志,必要时延长。超时后被强制结束不能视为已验证的完整保存。
检查单元并启动:
sudo systemd-analyze verify /etc/systemd/system/minecraft.service
sudo systemctl daemon-reload
sudo systemctl enable minecraft
sudo systemctl start minecraft
sudo systemctl status minecraft --no-pager
sudo journalctl -u minecraft -n 100 --no-pager使用 sudo journalctl -u minecraft -f 查看实时日志。这里的 Ctrl+C 只退出日志查看器,不会停止服务器。 日志窗口不是交互式 Minecraft 控制台。用获授权的游戏账户执行命令;需要离线控制台时,停止服务并以 minecraft 手动运行。不要仅为了控制台而公开 RCON。
日常更改:
sudo systemctl stop minecraft
sudo journalctl -u minecraft -n 50 --no-pager
sudo systemctl start minecraft确认完整保存后,在停止与启动之间编辑文件。如果启动失败触发限制,先解决日志中的错误,再使用 sudo systemctl reset-failed minecraft 后重新启动。
Ubuntu 防火墙 / UFW 与服务商防火墙
通过 SSH 启用 UFW 前,明确允许实际使用的 SSH 端口。下例假设标准端口 22。自定义端口应将 OpenSSH 规则换成真实端口规则。可行时,将 SSH 限制为固定管理员 IP 或 VPN。
sudo ufw allow OpenSSH
sudo ufw allow 25565/tcp
sudo ufw status verbose
sudo ufw enable
sudo ufw status verbose保持原有 SSH 会话打开,验证第二次 SSH 登录成功后再关闭。UFW 已启用时,新增规则会生效,无需关闭防火墙。参阅 Ubuntu 防火墙文档。
服务商的云防火墙/安全组是独立的一层,也要允许入站 TCP 25565,并保留受限制的 SSH 访问。有固定 IP 的私人群组可把游戏规则限制为这些源地址。此基础 Java 配置无需开放 UDP 25565、RCON、数据库或无关管理接口。
验证进程正在监听:
sudo ss -ltnp 'sport = :25565'
sudo systemctl status minecraft --no-pager朋友随后在 Java 版中输入 VPS 公网 IP。在外部 Windows 电脑上可执行基础 TCP 测试:
Test-NetConnection -ComputerName YOUR_SERVER_PUBLIC_IP -Port 25565把 YOUR_SERVER_PUBLIC_IP 替换为真实地址。成功后,再用已列入白名单的账户与正确游戏版本测试加入。
家用电脑、VPS 与托管主机比较
| 方案 | 适合谁 | 优点 | 缺点 |
|---|---|---|---|
| 家用电脑 | 小型私人群组 | 利用现有硬件,无额外主机订阅 | 电脑需保持唤醒;家庭上传、转发和 CGNAT 可能影响连接 |
| VPS | 需要控制权与持续可用性 | 操作系统权限、灵活部署,以及服务商提供时可公网访问的网络 | 自行维护 Linux、更新、安全与备份 |
| 托管式 Minecraft 主机 | 希望使用面板的新手 | 面向游戏的控制台、安装和备份工具 | 系统控制较少;功能因套餐而异 |
根据愿意承担的管理工作选择。服务商比较见最佳 Minecraft 服务器主机指南。基础设施选型见 Minecraft VPS 托管和游戏 VPS 选项。这些购买指南与本安装教程用途不同。
在 LightNode VPS 上托管 Minecraft
为始终可用的世界选择 VPS
如果家庭连接没有可访问的公网 IP,或希望不让自家电脑持续运行也能保持服务器在线,可考虑 LightNode 游戏服务器托管。其当前游戏页面宣传基于 KVM VPS 的 Minecraft 部署、40 多个地点、按小时/按月计费和 NVMe 存储。选择靠近玩家的区域与适合世界的资源。
只要预留资源并保护各服务,VPS 也可在 Minecraft 之外承载未来的网站、机器人或数据库。下单前确认操作系统/root 权限、分配的公网 IP 方式、区域可用性与所选套餐。本文不假设每个地点都提供相同的 IP 产品或实测游戏性能。
家庭托管与托管式主机仍是合理选择。本教程命令针对手动配置的 Ubuntu VPS;预装游戏镜像可能使用不同路径或服务。
Vanilla 与 Paper:应该选哪个?
Vanilla 是 Mojang 官方服务器软件,适合简单私人世界或优先保持官方机制的用户。Paper 增加插件支持及管理/性能功能,适合不断发展的社区,但行为并不完全等同 Vanilla,技术性红石装置与部分农场需要测试。
只从 Paper 官方下载页下载,选定游戏版本并检查 Paper 启动要求。先停止现有服务器并完整备份,再将下载文件保存为服务器目录中的 paper.jar。
新 Paper 文件夹同样需要首次启动与 EULA 流程。简短的 Windows PowerShell 启动命令为:
java -Xms2G -Xmx4G -jar paper.jar --noguiLinux 下,让服务用户能读取上传的 JAR,并从正确目录运行:
sudo chown minecraft:minecraft /opt/minecraft/server/paper.jar
sudo -u minecraft sh -c '
cd /opt/minecraft/server &&
exec /usr/bin/java -Xms2G -Xmx4G -jar paper.jar --nogui
'使用 systemd 时,先正常停止手动进程,再把 ExecStart 改为:
ExecStart=/usr/bin/java -Xms2G -Xmx4G -jar /opt/minecraft/server/paper.jar --nogui然后运行 sudo systemctl daemon-reload 与 sudo systemctl start minecraft。堆大小只是示例,不是 Paper 的通用最优值。只保留一个有效启动配置,防止重启后意外运行旧 Vanilla JAR。
迁移可能改变世界目录布局。Paper 通常分别使用 world、world_nether 和 world_the_end,Vanilla 则把维度放在主世界目录下。双向迁移均应遵循 Paper 迁移指南;不要以为只更换 JAR 就能安全撤销迁移。
插件、模组与模组整合包
Paper/Bukkit 插件通常增加服务器端功能,不要求每个玩家安装匹配的客户端模组。Forge/Fabric 是不同的模组体系,模组可能只需服务端、只需客户端或两端均需。整合包包含加载器和多个模组,资源需求往往显著更高。Paper 不能把 Forge/Fabric 模组当作普通插件加载。
Paper 插件请遵循官方插件安装指南:
- 选择可信项目,检查 Minecraft/Paper 版本、依赖及当前发行状态。
- 停服并备份。
- 将插件 JAR 放入服务器
plugins/目录;Linux 下确保minecraft能读取并写入其配置目录。 - 重启,检查启动日志与生成的配置。
- 每次只改一个插件进行测试,优先完整重启而非热重载。
插件以服务器用户权限执行代码。请从项目官方分发渠道下载,不要使用随机转载的 JAR。免费不代表安全。
模组部署可继续阅读 Modrinth 多人服务器教程;CurseForge 服务器托管指南介绍该生态及主机选择。使用对应整合包的服务器文件和说明,不要把客户端整合包放入 Paper 插件目录。
如何改善 Minecraft 服务器性能
从 CPU 与可重复负载开始
记录问题出现时的玩家数、地点、农场、实体和新地形探索。检查主线程是否饱和,而不只看整机 CPU 百分比。一个核心可能成为瓶颈,其他核心却很空闲。共享主机 CPU 争用也可能随时间变化。
分配足够内存并使用快速存储
观察堆使用、垃圾回收和系统可用内存,避免持续 swap。证据显示内存紧张时再增加;如果原因是泄漏或不必要的插件,应移除它们。
SSD/NVMe 有助于世界加载、区块数据、保存和备份 I/O,不会降低网络 ping。为世界增长和临时备份归档预留空间;存储或 CPU 已繁忙时,避免在游戏高峰压缩大型备份。
分别降低视距与模拟距离
尝试把 view-distance 从 10 降至 8 并测量差异。若实体模拟是瓶颈,可把 simulation-distance 降至例如 6。这些是实验,不保证适合所有世界。文件修改后重启,并询问缩小范围是否影响玩家建造。
谨慎预生成区块
对有限区域预生成,把地形生成移至维护时段,减少游玩探索时的生成峰值。它提前消耗存储和 CPU,不能消除实体或插件卡顿。先设合理的世界边界并备份。使用仍维护、兼容具体服务器版本的工具;本指南不指定某个第三方预生成器。
删除插件或购买资源前先分析性能
当前 Paper 内含 spark 分析器。卡顿期间,获授权的游戏内操作员可运行:
/spark profiler start --timeout 600它收集十分钟数据并返回报告链接,参见 Paper 性能分析说明。公开分享前检查报告,可能暴露服务器细节。调查占用过多 tick 时间的插件或任务,在测试副本中复现问题,每次只改变一项。
理解 TPS 与 MSPT
正常 tick 速率下,Minecraft 目标为每秒 20 tick(TPS),也就是每 tick 约 50 毫秒(MSPT)。如果处理持续超过可用的 50 ms,服务器在该负载下便无法维持正常 20 TPS。既关注平均值,也关注峰值。
TPS 描述模拟进度,ping 描述网络往返延迟。 服务器可保持 20 TPS,而远处玩家 ping 很高;附近玩家也可能 ping 很低,但过载服务器中的实体仍卡顿。网络问题应选择靠近玩家的区域;模拟问题应分析 tick 工作。增加内存不是这两类问题的通用解决方案。
如何备份 Minecraft 服务器
备份整个服务器目录,而不只是 JAR 或单个世界文件夹。包括实际所有世界目录、server.properties、whitelist.json、ops.json、封禁列表、插件 JAR/配置、模组配置和其他重要设置。同时保存 systemd 单元与 Java/服务器版本说明。插件使用外部数据库时,另行安排一致性数据库备份。
Vanilla 的下界和末地数据通常位于主世界目录;Paper 或多世界插件可能使用 world_nether、world_the_end 等目录,以实际文件为准。
Ubuntu 上安全的停服备份
通知玩家维护时段,停止服务并检查最后日志:
sudo systemctl stop minecraft
sudo systemctl status minecraft --no-pager
sudo journalctl -u minecraft -n 80 --no-pager停止后 inactive 状态正常,systemctl status 可能返回非零退出状态。只有确认完整正常保存、没有超时或强制结束后才继续。 然后在同一个 shell 中运行 Bash 命令:
sudo install -d -o root -g root -m 0700 /var/backups/minecraft
BACKUP_FILE="/var/backups/minecraft/server-$(date -u +%Y%m%dT%H%M%SZ).tar.gz"
sudo tar -czf "$BACKUP_FILE" -C /opt/minecraft server
sudo tar -tzf "$BACKUP_FILE" > /dev/null
sudo cp /etc/systemd/system/minecraft.service /var/backups/minecraft/minecraft.service
sudo systemctl start minecraft
sudo systemctl status minecraft --no-pager若 tar 报错,保留此前备份并调查,不要将此归档视为成功备份。把成功归档复制到另一台电脑的受保护存储或备份服务。同 VPS 上的归档无法防止整台 VPS 或磁盘丢失。
Windows 备份与恢复检查
Windows 上在游戏控制台输入 stop,等待保存完成,再把整个 C:\MinecraftServer 复制到按日期命名的备份文件夹。重新启动游戏前,将备份复制到第二台设备或服务器外目的地。不要用普通文件复制备份正在运行的世界。
每天备份,并在更新或插件变更前备份。保留七份每日和四份每周备份是合理的起步策略,不是强制标准。自动在线备份需协调世界保存与插件数据;通用的文件复制 cron 任务不足以保证一致性。
定期解压至隔离测试目录,使用匹配的服务器/Java 版本,确认世界、物品栏和下界/末地数据正常。正式恢复时先停服,另存当前文件,恢复完整匹配的数据集,启动前修正所有权为 minecraft:minecraft。不要覆盖运行中的世界,也不要让恢复测试副本连接生产端口或数据库。
Minecraft 服务器安全检查清单
更新时安全停止、完整备份、仅替换预期的软件文件并检查启动日志。主版本变更先在副本测试;用旧 JAR 降级世界不是安全回滚,应恢复匹配的升级前备份。
分享家庭服务器地址,也会向接收者透露家庭网络端点。白名单只控制谁能加入游戏,不会隐藏地址或阻止网络攻击。仅向预定群组分享连接信息。
使用域名代替 IP 地址
创建 A 记录,例如 play.example.com,指向公网 IPv4。只有服务器和防火墙真正支持可访问的 IPv6 时才添加 AAAA 记录。不要在 A/AAAA 记录中填写端口。使用 Java 默认 TCP 25565 时,玩家可直接输入 play.example.com。
非默认端口最简单的地址是 play.example.com:25566。Java 客户端也可通过 SRV 记录发现端口,例如:
| DNS 字段 | 值 |
|---|---|
| 类型 | SRV |
| 名称 | _minecraft._tcp.play.example.com |
| 优先级 / 权重 | 0 / 5 |
| 端口 | 25566 |
| 目标 | mc-origin.example.com |
先为 mc-origin.example.com 创建指向服务器的 A/AAAA 记录。有些 DNS 面板将服务、协议和名称拆开,或自动追加域名,避免重复填写区域名称。玩家随后使用 play.example.com。SRV 不会开放防火墙或绕过 CGNAT。
除非代理产品专门支持 Minecraft TCP 流量,否则使用普通仅 DNS 记录。标准 HTTP 网站代理不会自动代理游戏协议。IP 变更后考虑 DNS 缓存,必要时更新动态 DNS。
Minecraft 服务器故障排查
连接被拒绝
确认进程运行并监听预期 TCP 端口。Linux 检查 systemctl status minecraft、日志和 ss -ltnp;Windows 查看控制台是否显示 Done 或崩溃。验证地址、端口、绑定设置与两层防火墙。“Refused”通常说明没有监听或被主动拒绝,但无法单独指出故障组件。
连接超时
检查当前公网 IP、家庭路由器转发、目标局域网地址、云防火墙和可能存在的 CGNAT。依次从本机、另一台局域网设备、外部网络测试,以定位故障层。服务器停止时,端口检测网站无法报告游戏监听端口已开放。
Java 版本不受支持或 UnsupportedClassVersionError
运行 java -version。Windows 检查 Get-Command java;Linux 比较 /usr/bin/java -version 与 ExecStart 指定的执行文件。shell 可用的 Java 可能不同于 systemd。匹配所选服务器版本要求后重启。
“Can't keep up!”警告
世界生成时偶发警告与正常游玩中的持续卡顿不同。调查 CPU 过载、新区块、实体过多、插件/模组、垃圾回收与磁盘 I/O,在卡顿发生时分析性能。不要立即认为升级内存就是答案。
玩家 ping 很高
比较不同区域玩家,检查服务器位置、路由、Wi-Fi、拥塞及其他上传任务。以太网与较近区域可能有帮助。内存与 NVMe 不能缩短地理网络路径。
服务器因 OutOfMemoryError 崩溃
阅读完整错误与日志上下文:堆耗尽和原生内存失败不同。检查 -Xmx、整机实际空闲内存、玩家负载和插件/模组行为。内存泄漏可能在每次升级后再次出现。Linux 若在没有 Java 异常时杀死 Java,检查日志与可用内存,确认系统内存不足事件。为系统预留空间,不要无限增加堆。
朋友未加入白名单或版本不兼容
在控制台用 whitelist list 检查用户名,添加正确账户。Java 客户端版本需匹配服务器;基岩版客户端不能连接普通 Java 服务器。TCP 测试成功不代表通过了这些游戏层检查。
“Failed to bind to port”或世界已被使用
停止重复进程;除非有意配置,确认 server-ip= 留空,并检查端口。systemd 已使用同一世界时不要手动启动。不要为了强迫两个进程访问同一世界而删除世界锁文件。
Minecraft 基岩版怎么办?
基岩版有独立的 Windows 和 Ubuntu Linux 官方专用服务器下载,不运行本文的 Java server.jar。安装前检查当前支持的系统版本。
默认端口是 IPv4 的 UDP 19132和 IPv6 的 UDP 19133,不是 Java 的 TCP 25565。使用其服务器属性参考和安装文档。基岩版设置、允许列表和客户端限制需要独立教程,不要假设本文 Java 防火墙规则适用。
托管 Minecraft 服务器要花多少钱?
家用电脑: 官方服务器下载不收主机订阅费,但电力、互联网、硬件损耗、存储和在线时间仍有成本。玩家需要合法游戏访问权限。免费服务的取舍见免费 Minecraft 服务器托管指南。
VPS: 费用取决于 CPU、内存、存储、区域、带宽、备份与计费条款。关机实例可能仍保留计费资源。估算实际持续在线成本,不要只比较宣传的小时单价。
托管主机: 套餐可能按内存、玩家槽位或组合资源划分。比较备份保留、存储、模组支持与续费条款。希望使用游戏面板而非管理系统时,可参考 WiseHosting 评测和 Bloom Host 评测。
没有适合所有服务器的行业统一价格。本教程不报价,也不承诺某个预算能支持多少玩家。
快速安装清单
- 选择 Minecraft Java 版与玩家准备使用的服务器版本。
- 安装兼容 Java,并检查
java -version。 - 下载官方服务器 JAR 或 Paper 至独立文件夹。
- 首次运行以生成配置。
- 阅读 EULA,仅在同意后设置
eula=true。 - 配置
server.properties,保留账户验证。 - 启动服务器,启用私人白名单并添加玩家。
- 系统与服务商防火墙允许 TCP 25565。
- 必要时配置家庭端口转发,并检查上游 NAT。
- 建立一致性备份与服务器外副本;Linux 启用 systemd。
- 使用正确客户端和账户从外部网络测试加入。
常见问题
可以免费托管 Minecraft 服务器吗?
官方 Java 服务器软件可免费下载。使用现有硬件无需主机订阅,但电力、互联网、硬件以及每位玩家的正版游戏账户仍需考虑。
Minecraft 服务器需要多少内存?
2–5 名 Vanilla 玩家可从 2–3 GB Java 堆开始,5–10 名玩家从 3–4 GB 开始,再测量实际使用。整合包可能需要 6–12 GB 或更多。还要为操作系统和 Java 堆外内存留出空间。
可以在自己的电脑上托管 Minecraft 服务器吗?
可以。安装兼容 Java,在独立文件夹中运行服务器 JAR,阅读并在同意后接受 EULA,再配置访问。朋友游玩时电脑需保持唤醒;同机运行游戏客户端还需要额外资源。
Minecraft 服务器使用哪个端口?
Java 版默认 TCP 25565。基岩版专用服务器通常使用 IPv4 UDP 19132 和 IPv6 UDP 19133。防火墙规则需匹配版本类型与配置端口。
托管 Minecraft 服务器需要公网 IP 吗?
仅局域网游玩不需要公网 IP。直接互联网访问需要公网可达地址和获准的网络路径;家庭 IPv4 托管通常还需端口转发。CGNAT 阻止入站连接时,可用 VPS、合适的隧道或托管主机提供其他路径。
4 GB 内存够用吗?
4 GB Java 堆可作为小型 Vanilla 或轻量 Paper 服务器的起点。但只有 4 GB 总内存的机器不能安全地全部分给 Java。大型整合包、复杂插件或较高模拟距离可能需要更多。
可以在 VPS 上运行 Minecraft 服务器吗?
可以。使用受支持的 Linux、兼容 Java、专用服务用户和 systemd,并在系统与服务商防火墙都允许 TCP 25565。选择适合玩家的 CPU 性能、内存、存储和区域。
Paper 比 Vanilla 更好吗?
Paper 适合需要插件、性能分析和更多管理功能的服务器。Vanilla 适合希望使用官方服务器并保留其确切行为的玩家。Paper 可能改变机制,先用备份测试技术装置与世界迁移。
如何让朋友加入?为什么可能连接失败?
使用匹配的 Java 版,添加白名单,局域网游玩分享 LAN 地址,互联网游玩分享公网地址。失败时检查进程、TCP 25565、两层防火墙、路由器转发与 CGNAT,并从外部网络测试。
Minecraft 服务器需要全天运行吗?
只有玩家随时需要访问时才需要。私人群组可每次游玩时启动,结束后安全停止。停止进程会保存世界,但不一定停止 VPS 服务商对保留资源的计费。
官方参考与版本说明
技术文档于 2026 年 9 月 20 日核查。安装后续版本前重新检查要求。
- Minecraft Java 服务器下载与 Minecraft 26.1 发行说明。
- Minecraft EULA与使用指南。
- Paper 入门与 Java 兼容性、Java 安装与 server.properties。
- Paper 插件安装、迁移与性能分析。
内存范围是编辑给出的起步估算,不是官方容量保证。命令针对所述环境;本文不是硬件基准测试,也不声称测试了所有整合包和插件。