欢迎光临
我们一直在努力

新手友好 × 运维进阶:我的世界云服务器搭建与优化完全指南

目录

引言:为什么要在云上开MC服?

一、Java版 vs 基岩版:先搞清楚你在玩哪个

二、服务端核心选型:Paper,还是Forge?

三、配置选型:多少人才用多大的机器

3.1 内存怎么估算?

3.2 各场景配置推荐表

3.3 选型建议

四、部署实战:从购买服务器到进游戏

4.1 环境准备

4.2 安装服务端

4.3 启动服务器

4.4 配置防火墙与安全组

五、JVM参数调优:从能跑到流畅的关键一步

5.1 基础方案:G1GC(4GB内存以下服务器首选)

5.2 进阶方案:Aikar Flags(4GB以上服务器推荐)

5.3 高端方案:ZGC(8GB以上、Java 17+)

六、服务端配置优化:每个参数都在影响TPS

6.1 server.properties 核心调整

6.2 Paper独有优化(需编辑 config/paper-world-defaults.yml)

6.3 大型服务器进阶优化(30人以上)

七、进阶部署方案

7.1 Docker部署(推荐新手、快速迁移)

7.2 systemd服务配置(推荐生产环境)

7.3 多服务器/群组架构(50人以上)

八、服务器安全与日常维护

8.1 安全基线五步法

8.2 开服必备插件清单

8.3 日常维护清单

九、总结:从2人基友服到50人社区服的完整路径

相关阅读


引言:为什么要在云上开MC服?

想和朋友一起玩《我的世界》,无非三种方案:局域网联机(同一WiFi下)、租面板服(按人数付费)、或者自己开服(本机或云服务器)。局域网限制最多,面板服自由度受限,而真正能让你掌控全局的,还是自己搭一台云服务器。

云服务器开服有三大好处:

  • 24小时在线:不用自己电脑一直开着,朋友想玩随时进;

  • 全国低延迟:云厂商BGP多线接入,不管你朋友在哪个城市,网络延迟都能控制在可接受范围;

  • 弹性扩展:前期2核4G带5个朋友玩,后期加人直接升级配置,数据和地图无缝保留。

  • 本文将从零开始,带你完成服务端核心选型 → 配置选择 → 环境部署 → JVM调优 → 日常运维的全流程。不论你是刚接触开服的新手,还是已经开了服但经常卡顿的老手,都能在这篇里找到对你有用的内容。

    一、Java版 vs 基岩版:先搞清楚你在玩哪个

    Minecraft服务端分两套完全独立的生态,两套生态使用的服务端核心、联机方式、Mod体系都不一样。开服前先确认你和朋友们主要在哪个平台玩:

    项目Java版基岩版(Bedrock)
    客户端平台 PC(Windows / Mac / Linux) 手机、主机、Win10/11
    服务端类型 Paper / Purpur / Forge / Fabric Bedrock Dedicated Server(BDS)
    Mod / 插件生态 ✅ 极其丰富 ⚠️ 有限(以Addon为主)
    跨平台联机 ❌ 仅Java版之间 ✅ 手机/主机/PC互通

    本文以Java版为主线(玩家最多、生态最成熟),基岩版的部署区别在文中会标注。

    游戏版本与Java版本的对应关系:开服前务必确认:

    MC版本需要的Java版本
    1.16及以下 Java 8
    1.17 ~ 1.20.4 Java 17(当前最主流)
    1.20.5及以上 Java 21

    如果用Docker部署,镜像会自动适配Java版本,无需手动安装。

    二、服务端核心选型:Paper,还是Forge?

    服务端核心是MC服务器的“操作系统”,选错了后面全是坑。以下是当前(2026年)主流服务端的横向对比:

    服务端特点Mod兼容性插件兼容性性能推荐度
    Vanilla Mojang官方服务端 仅原版 ❌ 不支持 ⭐⭐ 不推荐
    Spigot 经典插件端 Bukkit/Spigot插件 ⭐⭐⭐ 可选
    Paper Spigot的深度优化版,Bug修复更及时 Bukkit/Spigot插件 ⭐⭐⭐⭐⭐ ✅ 强烈推荐
    Purpur Paper基础上增加更多可自定义项 同Paper ⭐⭐⭐⭐⭐ ✅ 推荐
    Forge Mod服务端标准,大型整合包首选 ✅ Forge Mod ⭐⭐⭐ Mod必选
    Fabric 轻量Mod框架,启动快、占用低 ✅ Fabric Mod ⭐⭐⭐⭐ 轻量Mod推荐
    Mohist Forge + Bukkit插件混合 ✅ Forge Mod ✅ Bukkit插件 ⭐⭐⭐ 混合生态

    选型决策口诀:

    • 纯原版生存 / 插件服(城镇、地皮、经济系统)→ 选Paper。Paper是目前社区事实上的标准,性能比原版提升30~50%,且兼容几乎所有Bukkit/Spigot插件。Paper是Spigot的一个fork,专注于性能优化和Bug修复,现在已成为插件服务器中使用最广泛的核心。

    • 要玩Mod整合包(如RLcraft、Better MC、FTB系列)→ 选Forge。几乎所有大型整合包都基于Forge构建。

    • 轻量优化向Mod(钠、锂、磷等性能优化Mod)→ 选Fabric。启动更快,占用更低,适合低配机器。

    • 既要插件又要Mod → 选Mohist或Arclight,但兼容性不如纯Forge/Paper方案稳定,建议先做好测试。

    • 基岩版用户:服务端只有一个官方选择——BDS,直接从Minecraft官网下载即可。

    一个常见误区:不要因为“原版最纯净”就用Vanilla开服。Vanilla几乎没有性能优化,20个玩家同时在线的Vanilla服比同配置的Paper服TPS可能差40%以上。

    什么是TPS? TPS(Ticks Per Second)是衡量MC服务器性能的核心指标,满值为20.0。可以把它理解为服务器的“帧率”——TPS低于18,玩家就会感觉到明显卡顿(挖方块回弹、生物瞬移)。20.0表示服务器完全流畅。

    三、配置选型:多少人才用多大的机器

    MC服务器的首要瓶颈是内存,其次是CPU单核性能(MC主游戏循环是单线程的,多核并不能直接加速主循环),最后才是带宽。

    3.1 内存怎么估算?

    服务器基础占用(系统+Java虚拟机):约1 ~ 1.5 GB
    每个在线玩家:额外 200 ~ 400 MB
    每个Mod:额外 50 ~ 200 MB

    举个例子:5个朋友玩一个30个Mod的整合包——

    • 基础:1.5 GB

    • 玩家:5 × 0.3 = 1.5 GB

    • Mod:30 × 0.1 = 3 GB

    • 合计:约 6 GB → 选8 GB内存的机器,分配6 GB给MC,留2 GB给系统。

    3.2 各场景配置推荐表

    玩家人数玩法类型推荐CPU推荐内存带宽存储参考月费
    2~5人 原版纯净/Paper 2核 4 GB 3 Mbps SSD 50 GB 40~70元
    5~10人 原版/少量插件 2核(高频>3.0GHz) 4 GB 5 Mbps SSD 80 GB 70~100元
    10~20人 插件服/中小型Mod包 4核(高频>3.0GHz) 8 GB 8~10 Mbps SSD 100 GB 120~200元
    20~30人 大型Mod整合包(80+Mod) 8核 16 GB 15 Mbps NVMe SSD 200 GB 500~700元
    30~50人 社区服/多子服架构 8核+ 16~32 GB 20 Mbps+ NVMe SSD 200 GB+ 800~1200元
    50人以上 大型网络服 详见进阶方案(第七节) 32 GB+ 50 Mbps+ NVMe SSD 500 GB+ 2000元+

    轻量级场景(2-5人,无模组)2核2G即可满足需求,2核4G配置可支撑15人同时在线且TPS稳定在19.8-20.1。轻量应用服务器完全可满足10人以下小型MC服务器的需求,配置2核4G+5M带宽的服务器可稳定运行,10人以内延迟低于60ms。

    3.3 选型建议

    • CPU:优先选主频≥3.0GHz的型号。MC的主游戏循环是单线程的,核心数多不如单核强。实测显示,同等核心数下,3.5GHz主频比2.5GHz主频的服务器TPS稳定性显著更优。

    • 内存:建议给系统留至少1~2GB,不要把全部内存分配给MC。MC的JVM内存不是越大越好——分配过多会导致GC(垃圾回收)扫描范围过大,反而引发周期性的长时间停顿。

    • 带宽:每个玩家约消耗100 Kbps上传带宽,10 Mbps带宽可支持约20-30人同时在线。

    • 存储:必须SSD起步。世界加载、区块读写极度依赖随机IOPS,HDD机械硬盘会让跑图时全服卡顿。

    • 操作系统:推荐 Ubuntu 22.04 LTS(资源占用低、社区支持好),其次 CentOS Stream 9。Windows Server也可用但内存开销更大。

    四、部署实战:从购买服务器到进游戏

    以下以 Ubuntu 22.04 + Paper 1.21 为例,全程命令行操作,零基础也能跟着走。

    4.1 环境准备

    # === 第1步:登录云服务器 ===
    # 在本地终端执行(Windows用PowerShell或CMD,Mac用终端):
    ssh root@你的服务器公网IP

    # === 第2步:更新系统并安装必要软件 ===
    # apt update:刷新软件包列表
    # apt upgrade -y:升级所有已安装的软件包(-y 自动确认)
    sudo apt update && sudo apt upgrade -y

    # === 第3步:安装Java 17(Paper 1.21所需的最低版本)===
    # openjdk-17-jre-headless:无图形界面的精简版Java运行环境
    sudo apt install -y openjdk-17-jre-headless

    # 验证Java安装(应显示类似 openjdk version "17.0.x")
    java -version

    # === 第4步:安装screen(后台会话管理工具)===
    # screen可以让MC服务端在你退出SSH后继续运行
    sudo apt install -y screen

    # === 第5步:创建专用用户(安全最佳实践,避免root直接运行)===
    sudo adduser mcserver
    # 按提示设置密码(建议12位以上),其余信息可留空按回车跳过

    # 切换到新用户
    sudo su – mcserver

    为什么用screen而不是直接java -jar? 直接运行java -jar后,你的SSH窗口就被MC服务端占用了。一旦关闭SSH窗口,MC进程也会终止。screen相当于在服务器上开了一个“虚拟窗口”,你可以随时断开SSH后回来接上。备选方案还有tmux(功能更丰富)或配置systemd服务(第七节介绍)。

    4.2 安装服务端

    # === 第6步:创建MC服务器目录 ===
    # 将游戏服务器文件与用户主目录其他文件隔离开
    mkdir -p ~/mc-server
    cd ~/mc-server

    # === 第7步:下载Paper服务端jar ===
    # PaperMC官方提供最新构建版本的直接下载链接
    wget https://api.papermc.io/v2/projects/paper/versions/1.21.5/builds/53/downloads/paper-1.21.5-53.jar

    # === 第8步:同意Minecraft EULA(必须!否则服务器无法启动)===
    # 启动前必须将 eula.txt 中的 eula=false 改为 eula=true
    # echo 命令直接写入同意标识
    echo "eula=true" > eula.txt

    文件下载完成后建议重命名,方便后续启动命令书写:

    mv paper-1.21.5-53.jar server.jar

    基岩版用户注意:基岩版服务端(BDS)直接从Minecraft官网下载,解压后执行 ./bedrock_server 即可启动,不需要安装Java。Windows版BDS需要额外配置防火墙,允许UDP协议的19132端口通过。

    4.3 启动服务器

    # === 第9步:创建screen会话并启动MC服务端 ===
    # -S mc:给screen会话命名为mc,方便后续查找
    screen -S mc

    # 在screen会话中执行启动命令:
    # -Xms4G:JVM启动时初始堆内存大小(4 GB)
    # -Xmx4G:JVM最大堆内存大小(与初始值相同,避免运行时动态调整开销)
    # -jar server.jar:指定服务端jar文件
    # nogui:不启动MC的图形界面(服务器上没必要)
    java -Xms4G -Xmx4G -jar server.jar nogui

    # 首次启动会自动生成 server.properties 配置文件,等待看到 "Done!" 后执行:
    stop

    # 按 Ctrl+A 再按 D 可以暂时离开screen会话(服务端仍在后台运行)
    # 下次想回到MC控制台时执行:screen -r mc

    4.4 配置防火墙与安全组

    云服务器有两层防火墙,都必须配置才能让朋友连进来:

    系统防火墙(以UFW为例):

    # 切换回root用户执行(或使用 sudo)
    # UFW(Uncomplicated Firewall)是Ubuntu上的防火墙管理工具
    exit # 退出mcserver用户
    # 回到root后:

    # 开放MC默认端口25565(TCP协议)
    sudo ufw allow 25565/tcp

    # 限制SSH端口22的访问来源(仅允许你的IP,替换为你的公网IP)
    # 这一步很重要:防止黑客暴力破解你的root密码
    sudo ufw allow from 你的公网IP to any port 22 proto tcp

    # 启用防火墙(输入 y 确认)
    sudo ufw enable

    # 查看已添加的规则
    sudo ufw status numbered

    云厂商安全组(在网页控制台操作):

    进入云服务器控制台 → 找到“安全组”或“防火墙”选项 → 添加入方向规则:

    端口协议来源用途
    25565 TCP 0.0.0.0/0 Minecraft Java版
    22 TCP 你的公网IP/32 SSH远程管理(严禁全网开放)

    ⚠️ 关键提醒:

    • 22端口不要对0.0.0.0/0开放! 全网开放的22端口会在几分钟内被扫描到,引来大量暴力破解攻击。

    • 25565端口是黑客的重点扫描目标。如果服务器被DDoS攻击,轻则卡顿,重则封IP。建议根据预算考虑高防IP服务。

    • 基岩版服务器的端口默认是 19132(UDP) ,与Java版不同。

    • 可以用 cip.cc 查询自己的公网IP,安全组的来源IP后面要加/32(如123.456.789.0/32)。

    五、JVM参数调优:从能跑到流畅的关键一步

    MC服务端的性能瓶颈主要来自两方面:GC(垃圾回收)停顿和区块加载。JVM参数调优的核心目标就是减少GC停顿的频率和时长。

    5.1 基础方案:G1GC(4GB内存以下服务器首选)

    适用于2~4GB内存的小型服务器,可直接复制使用:

    java -Xms3G -Xmx3G \\
    -XX:+UseG1GC \\
    -XX:MaxGCPauseMillis=200 \\
    -XX:ParallelGCThreads=4 \\
    -XX:ConcGCThreads=2 \\
    -XX:+UseStringDeduplication \\
    -jar server.jar nogui

    参数解读:

    参数含义调优建议
    -Xms3G -Xmx3G 初始和最大堆内存均设为3GB 两个值必须相同,避免运行时动态调整
    -XX:+UseG1GC 启用G1垃圾回收器 Java 9+默认,MC场景首选
    -XX:MaxGCPauseMillis=200 GC最大停顿目标200毫秒 调低可减少卡顿但增加CPU占用
    -XX:ParallelGCThreads=4 并行GC线程数 一般设为核心数的一半
    -XX:ConcGCThreads=2 并发GC线程数 约为ParallelGCThreads的1/4~1/2
    -XX:+UseStringDeduplication 自动去重重复字符串 MC中大量重复方块名,能省10-20%堆内存

    5.2 进阶方案:Aikar Flags(4GB以上服务器推荐)

    Aikar's Flags是Paper社区的核心开发者Aikar贡献的一套JVM启动参数,专门为Minecraft服务端的工作负载特征(大量短生命周期对象、频繁内存分配)进行了优化,围绕G1GC精细调优。社区广泛验证该参数集可将服务端在高负载下的GC停顿时间降低约67%。

    4GB服务器推荐Aikar参数:

    java -Xms4G -Xmx4G \\
    -XX:+UseG1GC \\
    -XX:+ParallelRefProcEnabled \\
    -XX:MaxGCPauseMillis=200 \\
    -XX:+UnlockExperimentalVMOptions \\
    -XX:+DisableExplicitGC \\
    -XX:+AlwaysPreTouch \\
    -XX:G1NewSizePercent=30 \\
    -XX:G1MaxNewSizePercent=40 \\
    -XX:G1HeapRegionSize=8M \\
    -XX:G1ReservePercent=20 \\
    -XX:G1HeapWastePercent=5 \\
    -XX:G1MixedGCCountTarget=4 \\
    -XX:InitiatingHeapOccupancyPercent=15 \\
    -XX:G1MixedGCLiveThresholdPercent=90 \\
    -XX:G1RSetUpdatingPauseTimePercent=5 \\
    -XX:SurvivorRatio=32 \\
    -XX:+PerfDisableSharedMem \\
    -XX:MaxTenuringThreshold=1 \\
    -jar server.jar nogui

    参数解读(核心参数):

    参数含义
    -XX:+AlwaysPreTouch 启动时预分配并物理初始化所有堆内存,避免运行时缺页中断
    -XX:G1NewSizePercent=30 新生代初始占堆的30%(MC对象大多短命,加大新生代减少晋升到老年代的对象)
    -XX:MaxTenuringThreshold=1 对象经过1次GC后直接晋升老年代(MC场景下幸存者对象通常都是长生命周期数据,快速晋升避免在Survivor区反复拷贝)
    -XX:G1MixedGCCountTarget=4 混合GC的目标次数(更频繁但单次更短的混合回收)
    -XX:InitiatingHeapOccupancyPercent=15 堆占用15%就开始考虑并发标记周期(提前触发,避免堆满后紧急Full GC)
    -XX:+PerfDisableSharedMem 禁用JVM性能统计共享内存(减少不必要的系统调用开销)

    5.3 高端方案:ZGC(8GB以上、Java 17+)

    适用于8GB以上内存的大型服务器,ZGC(Z Garbage Collector)支持亚毫秒级停顿,所有GC阶段均与应用线程并发执行:

    java -Xms8G -Xmx8G \\
    -XX:+UseZGC \\
    -XX:+ZGenerational \\
    -XX:+AlwaysPreTouch \\
    -XX:+DisableExplicitGC \\
    -jar server.jar nogui

    三种方案怎么选?

    • 内存 ≤ 4GB → G1GC 基础方案,简单够用

    • 内存 4~8GB → Aikar Flags,精细调优,G1GC的最佳实践

    • 内存 > 8GB → ZGC,大堆内存的低延迟终极方案

    三个通用注意事项:

  • -Xms和-Xmx必须设成相同的值,否则JVM运行时动态调整堆大小会触发额外的GC停顿。

  • 不要给MC分配全部物理内存,至少保留1~2GB给操作系统和系统缓存。

  • 不是内存越大越好——堆太大(>12GB)时G1GC的标记周期变长,反而可能加剧卡顿,此时应优先考虑换ZGC。

  • 六、服务端配置优化:每个参数都在影响TPS

    服务端的 server.properties 和 Paper 独有的 paper-world-defaults.yml 中有大量参数可以调整。以下是收益最明显的几项:

    6.1 server.properties 核心调整

    # === 视距(view-distance):影响最大的参数 ===
    # 表示服务器向每个玩家发送多少区块的地图数据
    # 每降低1级,服务器需要处理的区块数量减少约30%
    view-distance=8
    # 推荐:小型服8,中型服6,大型服4-5

    # === 模拟距离(simulation-distance)===
    # 服务器实际计算实体AI、作物生长的范围
    simulation-distance=6
    # 推荐:设为view-distance的60%-75%

    # === 最大玩家数 ===
    # 不要设得远超实际需求,每多一个槽位都占资源
    max-players=20

    # === 开启网络压缩 ===
    # 256是推荐值,减少带宽占用但轻微增加CPU负载
    network-compression-threshold=256

    # === 关闭在线模式会导致非正版玩家也能连接 ===
    # 小范围朋友服可以关,社区服建议开启
    online-mode=false

    6.2 Paper独有优化(需编辑 config/paper-world-defaults.yml)

    entities:
    # === 实体激活范围 ===
    # 控制怪物、动物在距离玩家多远时开始AI计算
    # 降低这些值能显著减少CPU占用——实体AI是MC服务器最吃CPU的部分之一
    spawning:
    despawn-ranges:
    soft: 28 # 软清除距离(实体超过此距离会被随机清除)
    hard: 64 # 硬清除距离(实体超过此距离会被立即清除)
    tracking-range:
    monsters: 48 # 怪物追踪范围
    animals: 48 # 动物追踪范围
    misc: 32 # 其他实体(矿车等)

    # === 区块系统 ===
    chunk-system:
    # 自动保存间隔(单位:tick,20 tick = 1秒)
    auto-save-interval: 6000
    # 默认1200 tick(1分钟),大型服务器可拉长到6000 tick(5分钟)减少I/O抖动
    # 代价:万一服务器崩溃,最多丢失5分钟的进度

    # === 非阻塞IO ===
    # 开启后世界保存不再阻塞主线程,极大改善定时保存时的卡顿
    use-async-chunks: true

    # === 掉落物品合并 ===
    # 每秒钟合并相邻的同类掉落物为一个堆叠,减少地面上散落的独立实体数量
    alt-item-despawn-rate:
    enabled: true
    items:
    cobblestone: 300
    dirt: 300
    # 圆石和泥土等常见掉落物加速清理

    6.3 大型服务器进阶优化(30人以上)

    面向有经验的服务器管理员,以下优化方案需要仔细评估:

    优化项措施收益
    世界预生成 使用Chunky插件预先加载并生成地图区块 消除玩家跑图时的实时地形生成卡顿
    视距再降低 大型服务器将view-distance设为4-5 极大减少区块加载压力
    定时重启 通过crontab每日凌晨自动重启服务端 清除内存碎片,防止长时间运行后的性能退化
    实体数量控制 设置每个区块/玩家的实体生成上限 防止刷怪塔/养殖场导致实体爆炸拖垮TPS
    分离存档 将世界存档放在独立的NVMe SSD上 减少主系统盘的I/O竞争

    七、进阶部署方案

    7.1 Docker部署(推荐新手、快速迁移)

    Docker将MC服务端及其运行环境打包在一个独立容器中,自动处理Java版本适配,备份/迁移只需复制一个目录即可:

    # 拉取PaperMC的官方Docker镜像
    # -e EULA=true:自动同意EULA
    # -e MEMORY=4G:分配给MC的内存
    # -v:挂载宿主机目录到容器,实现数据持久化
    docker run -d \\
    –name mc-server \\
    -e EULA=true \\
    -e TYPE=PAPER \\
    -e MEMORY=4G \\
    -e ONLINE_MODE=false \\
    -p 25565:25565 \\
    -v ~/mc-data:/data \\
    itzg/minecraft-server:latest

    # 查看运行日志
    docker logs -f mc-server

    # 对容器内服务端执行命令(如op某玩家)
    docker exec mc-server rcon-cli op 玩家名

    7.2 systemd服务配置(推荐生产环境)

    screen的方式在你退出SSH后虽然服务端仍在运行,但机器重启后不会自动恢复。systemd是Linux的服务管理器,可以让MC服务端在机器重启后自动拉起:

    # 使用root用户创建systemd服务单元文件
    # /etc/systemd/system/ 是systemd默认的服务定义目录
    sudo nano /etc/systemd/system/minecraft.service

    粘贴以下内容(修改路径和用户名):

    [Unit]
    Description=Minecraft Server (Paper)
    # 在网络就绪之后才启动
    After=network.target

    [Service]
    # 指定运行用户
    User=mcserver
    # 工作目录(替换为你的MC服务器实际路径)
    WorkingDirectory=/home/mcserver/mc-server
    # ExecStart:服务启动命令
    # ExecStop:服务停止时执行的命令(发送stop指令让MC安全保存世界后退出)
    ExecStart=/usr/bin/java -Xms4G -Xmx4G -XX:+UseG1GC -jar server.jar nogui
    ExecStop=/bin/bash -c 'echo "stop" > /run/minecraft.stdin'
    Restart=on-failure
    # 崩溃后等待10秒再尝试重启(防止连续崩溃循环)
    RestartSec=10

    [Install]
    # 多用户模式下自动启动
    WantedBy=multi-user.target

    启用服务:

    # 重载systemd配置(识别新创建的minecraft.service)
    sudo systemctl daemon-reload
    # 设置开机自启
    sudo systemctl enable minecraft
    # 启动服务
    sudo systemctl start minecraft
    # 查看状态
    sudo systemctl status minecraft

    7.3 多服务器/群组架构(50人以上)

    当你需要同时运行多个子服(如登录服、生存服、小游戏服),或者想把不同玩法的玩家分流时,就需要引入代理端架构——使用BungeeCord或Velocity将所有子服串联起来,玩家连入代理端后选择进入不同的子服:

    玩家 → 代理端(Velocity)
    ├── 登录服(1核2G) ─ 负责玩家注册和登录
    ├── 生存服(4核8G) ─ 主生存世界
    ├── 资源服(2核4G) ─ 资源世界(定期刷新)
    └── 小游戏服(2核4G)─ 跑酷/竞技场等

    这种架构的优势:

    • 故障隔离:一个子服崩溃不影响其他子服

    • 独立优化:不同游戏模式可以针对性地调整配置

    • 动态扩展:活动期间临时加一个子服,结束后关闭即可

    • 插件级反作弊:跨服行为监控更全面

    八、服务器安全与日常维护

    8.1 安全基线五步法

  • 禁用root用户SSH登录:

    # 编辑SSH服务配置文件
    sudo vi /etc/ssh/sshd_config
    # 修改或添加:PermitRootLogin no
    # 重启SSH服务使配置生效
    sudo systemctl restart sshd

    之后只使用普通用户(如前面创建的mcserver)登录,需要root权限时用sudo。

  • SSH密钥登录:禁用密码登录,只用密钥对认证,彻底杜绝暴力破解。

  • IP白名单:在安全组中限制SSH端口(22)的来源IP为固定办公IP。

  • 非root运行:MC服务端必须使用独立用户(如mcserver)运行,切勿用root运行。一旦MC服务端被远程代码执行漏洞攻击,攻击者将获得root权限,可以完全控制你的服务器。

  • 关闭在线模式时加强验证:如果你设了online-mode=false允许离线玩家进入,务必安装AuthMe或类似的登录插件,防止陌生人以任意用户名登入。

  • 8.2 开服必备插件清单

    基于Paper/Spigot生态的社区共识:

    插件用途必装程度
    CoreProtect 方块操作日志+回滚,查熊孩子必备 ⭐⭐⭐⭐⭐
    LuckPerms 权限管理系统,轻量且功能强大 ⭐⭐⭐⭐⭐
    EssentialsX 基础功能合集(/home /spawn /warp /tpa等) ⭐⭐⭐⭐
    WorldEdit 地图编辑,建筑服必备 ⭐⭐⭐⭐
    AuthMe 离线模式下的登录验证 ⭐⭐⭐⭐
    Chunky 世界预生成,消除跑图卡顿 ⭐⭐⭐⭐
    CheatReaper 轻量级反作弊,适合中小型服务器 ⭐⭐⭐
    SMPGuard 集性能优化+安全+反作弊于一体 ⭐⭐⭐

    新手误区提示:很多新手在小型服务器上一次性安装几十个插件,导致服务端启动变慢、内存飙升、插件之间冲突导致莫名崩溃。建议初期只保留CoreProtect和LuckPerms两个核心插件,再根据玩家反馈和需求逐步添加。

    8.3 日常维护清单

    维护项频率说明
    世界备份 每天 使用CoreProtect备份或直接压缩world目录
    检查TPS 每次上线 游戏内/tps命令,低于18需排查
    清理掉落物 每2-3天 地面上的掉落物占大量实体计算,可手动或插件自动清理
    服务器重启 每1-3天 定时重启有助于清除内存碎片,释放Java堆中长期未回收的对象
    更新服务端 每次MC版本更新后 Paper通常在官方更新后1-2天内发布对应版本
    检查日志 每周 查看logs/latest.log关注报错和异常信息
    安全审计 每月 检查登录日志,排查可疑连接和未授权访问

    九、总结:从2人基友服到50人社区服的完整路径

    回顾整个开服流程,核心决策只有四个:

  • 选服务端:纯生存/插件 → Paper;Mod整合包 → Forge;轻量优化Mod → Fabric。

  • 定配置:2~5人4GB起步,10~20人8GB,30人以上16GB+,CPU主频≥3.0GHz优先。

  • 配JVM:≤4GB用G1GC基础方案,4~8GB用Aikar Flags,>8GB用ZGC。

  • 做安全:非root运行、关闭root SSH、安全组IP白名单、安装CoreProtect。

  • 特别提示:本文仅作技术分享,请勿在未取得【网络文化经营许可证】等合法资质的情况下,私设面向公众的收费商业游戏服务器,否则将面临行政处罚等法律风险。请务必遵守【网络出版服务管理规定】及【网络游戏管理暂行办法】等法律法规。

    相关阅读

    • 《别再盲选云服务器了!2核4G vs 4核8G 真实业务边界与选型实战》

    • 《弹性云 vs 裸金属:技术架构、性能损耗与选型决策深度拆解》

    • 《深度解析 OpenClaw"小龙虾":开源 AI 智能体的架构、能力与部署实战》


    本文由塔基信息(www.tajiidc.com)技术团队撰写并首发于CSDN,内容基于PaperMC社区文档及Aikar's Flags官方指南编写,涵盖服务端核心选型、配置选型、部署实战、JVM调优及日常运维等全流程。我们为数据中心提供MPO光纤跳线和光模块,支持OM4/OS2定制,小批量现货。电信增值许可证代办同步进行中。若需游戏用云服务器选型方案,可评论区或私信咨询。

    赞(0)
    未经允许不得转载:171主机测评 » 新手友好 × 运维进阶:我的世界云服务器搭建与优化完全指南
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址