21 10 月 2026

泰拉瑞亚(Terraria)是 2D 沙盒的常青树,"打不过BOSS就喊人"是国民级场景。它的专用服务端和别的游戏不一样:服务端直接打包在游戏本体里(Steam App 105600),下完游戏就有,不需要单独找工具。真正要选的是路线:原生服(简单)还是 TShock 服(强大)。

这篇教程三条路线全讲:原生服、TShock 服、tModLoader MOD 服。按人头和需求选一条走即可。全部命令可抄,Linux 原生支持。

本文由财富云计算整理,我们主营 NAT 型云服务器(无独立公网 IP),价格比独立 IP 机型省一半以上,跑泰拉瑞亚这种轻量服 1 核 2G 都够。更多开服教程见端口速查表。

一、三条路线怎么选

路线适合管理能力难度
原生服3–8 人好友,不折腾基础(存档、踢人)⭐
TShock 服10+ 人公共服、要权限分组强(指令系统、SQLite、白名单)⭐⭐
tModLoader 服玩 MOD(灾厄 Calamity 等)同 TShock⭐⭐⭐

结论先行:好友自娱自乐用原生服;想认真经营一个服,直接上 TShock。TShock 是在原生服务端上替换核心实现的增强版,安装只多两步,但多了注册、组权限、背包查询等几十条管理指令。

二、配置需求:最省资源的一档

同时在线CPU内存磁盘带宽
1–8 人(原生)1–2 核1–2 GB2 GB5 Mbps
10–30 人(TShock)2 核2–4 GB5 GB10 Mbps
MOD 服(灾厄等)2–4 核4–8 GB10 GB15 Mbps
  • 泰拉瑞亚是 2D 俯视角,服务端开销极低,NAT 型服务器 1 核 2G 就能带十几人,是全站最便宜的联机方案之一。
  • 单端口 TCP 7777,没有查询端口那套弯弯绕,NAT 映射一条搞定。
  • MOD 服(尤其是灾厄)会显著吃内存和 CPU,按 4G 起步估。

三、路线 A:原生服(最简单)

3.1 安装

原生服务端在游戏本体里,SteamCMD 下 105600:

sudo adduser --disabled-password --gecos "" terraria
sudo mkdir -p /opt/terraria && sudo chown terraria:terraria /opt/terraria

sudo -u terraria -s
cd ~/steamcmd
./steamcmd.sh +force_install_dir /opt/terraria/server +login anonymous +app_update 105600 validate +quit

Linux 服务端文件是 TerrariaServer.bin.x86_64,需要 mono 运行:

sudo apt install -y mono-runtime

3.2 首次启动生成配置

cd /opt/terraria/server
mono TerrariaServer.bin.x86_64

首次启动会问你选世界、人数等交互问题,也可以直接 Ctrl+C 退出,此时目录下已生成配置文件。后面全部用参数启动,不再交互。

3.3 启动参数

./TerrariaServer -config serverconfig.txt

serverconfig.txt 关键项:

world=/opt/terraria/server/world/world1.wld
worldpath=/opt/terraria/server/world/
port=7777
maxplayers=16
password=your_password
motd=欢迎来到我的泰拉瑞亚服
secure=1
autocreate=3        # 世界不存在时自动创建,3=大世界
difficulty=0        # 0普通 1专家 2大师 3旅行

也可以用命令行参数覆盖:-world world1 -players 16 -pass your_password -port 7777。

世界文件 .wld 就是全部进度,备份它就够了。

3.4 systemd 守护

cat > /opt/terraria/start.sh <<'EOF'
#!/bin/bash
cd /opt/terraria/server
exec mono TerrariaServer.bin.x86_64 -config serverconfig.txt
EOF
chmod +x /opt/terraria/start.sh

sudo tee /etc/systemd/system/terraria.service <<'EOF'
[Unit]
Description=Terraria Server
After=network.target

[Service]
Type=simple
User=terraria
ExecStart=/opt/terraria/start.sh
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable --now terraria

四、路线 B:TShock 服(推荐认真玩的人上)

TShock = 原生服务端 + 管理指令系统,公共服的事实标准。

4.1 安装(在原生服基础上替换)

cd /opt/terraria/server
# 下载 TShock 最新版(GitHub releases,版本号按实际改)
wget https://github.com/Pryaxis/TShock/releases/download/v5.2.0/TShock-5.2.0-linux-amd64.zip
# TShock 5+ 自带运行时;旧版本需要 mono

以 TShock 5.x 为例,解压后目录里会有 TShockAPI.dll 和启动脚本。启动:

cd /opt/terraria/server/TShock
./start.sh

首次启动生成 config.json 和 tshock.sqlite,同样可以先跑一次再配置。

4.2 TShock 配置要点

config.json 里改这些:

{
  "ServerName": "我的泰拉瑞亚服",
  "ServerPort": 7777,
  "MaxSlots": 32,
  "ServerPassword": "",
  "SuperAdminChatRGB": [255, 0, 0],
  "RestApiEnabled": true,
  "RestApiPort": 7878
}
  • ServerPassword 留空 = 谁都能进,公共服必填。
  • REST API 方便做网页管理,但必须绑内网或加 token,暴露公网等于把服送人,安全事项见REST 接口防护。

4.3 管理指令(控制台或游戏内 / 触发)

指令作用
/user add <名> <密码> <组>注册玩家并分组(owner/admin/vip/default)
/group addperm <组> <权限>给组开权限,比如 tshock.ignore.*
/save手动存档
/kick /ban <名> [原因]踢人/封禁
/give <名> <物品> [数量]发物品(活动用)
/buff <名> <buff>上状态

权限分组是 TShock 的灵魂:default 给基础玩家,vip 给赞助,admin 给管理,owner 留给自己。别把所有好友都设 owner,误放岩浆的时候你会感谢这条建议。

五、路线 C:tModLoader MOD 服

玩 MOD(灾厄、Thorium 等)必须服务端和客户端 MOD 完全一致,且都要用 tModLoader 启动。

服务端安装(Steam App 1281930):

./steamcmd.sh +force_install_dir /opt/terraria/tmodserver +login anonymous +app_update 1281930 validate +quit
cd /opt/terraria/tmodserver
./start-tModLoaderServer.sh -config serverconfig.txt
  • MOD 文件放在服务端的 Mods/ 目录(.tmod 文件,从客户端 %Documents\My Games\Terraria\tModLoader\Mods 拷贝)。
  • 客户端必须在 Steam 库里装 tModLoader 并从它启动。
  • 每次 MOD 更新,服务端和所有客户端同步更新,版本不一致直接拒连——这是 MOD 服最烦的地方,值得写进群公告。

MOD 管理和自动更新的通用思路见游戏 MOD 服搭建指南。

六、端口:就一个 TCP 7777

sudo ufw allow 7777/tcp

安全组同步放行(安全组配置实战)。NAT 型用户控制台映射外网 TCP 7777 → 内网 7777,一条搞定,是全站最省心的 NAT 映射场景。

TShock REST API 端口(如 7878)不要映射到公网,留在内网自用。

七、备份:wld 和 sqlite 都要

原生服备份 .wld 世界文件;TShock 还要备份 tshock.sqlite(账号、封禁、组权限都在里面):

cat > /opt/terraria/backup.sh <<'EOF'
#!/bin/bash
SRC="/opt/terraria/server"
DST="/opt/terraria/backups"
mkdir -p "$DST"
tar -czf "$DST/terraria-$(date +%F).tar.gz" \
  -C "$SRC" world serverconfig.txt TShock/config.json TShock/tshock.sqlite 2>/dev/null
find "$DST" -name "terraria-*.tar.gz" -mtime +30 -delete
EOF
chmod +x /opt/terraria/backup.sh
(crontab -l 2>/dev/null; echo "0 4 * * * /opt/terraria/backup.sh") | crontab -

更新前、改配置前必跑。备份体系化见服务器备份策略,换服务器搬家见游戏服迁移指南。

八、更新

原生服更新 = 重新拉 105600:

sudo systemctl stop terraria
sudo -u terraria -s
cd ~/steamcmd
./steamcmd.sh +force_install_dir /opt/terraria/server +login anonymous +app_update 105600 validate +quit
exit
sudo systemctl start terraria

tModLoader 服同理拉 1281930,更新后确认 MOD 版本兼容再放人进来。自动化更新见游戏服自动更新实战。

九、常见问题

Q1:mono 报缺库?
sudo apt install -y mono-runtime libmono-corlib4.5-cil,或者直接用 TShock 5.x 自带运行时版本,绕开 mono 依赖。

Q2:玩家进不去,提示版本不匹配?
原生服更新后客户端也要更新;MOD 服是 MOD 版本不一致,两边 .tmod 对齐。

Q3:世界文件损坏?
用备份 .wld 替换后重启。泰拉瑞亚世界文件单点故障,备份是唯一解。

Q4:TShock 服被陌生人注册捣乱?
设 ServerPassword + 关闭公开注册(默认 /user add 才能玩),必要时只让 admin 注册。

Q5:延迟高/瞬移?
先看服务器地域和带宽,2D 游戏流量极小,高延迟基本是地域问题(地域延迟指南)。

Q6:一台机器能开几个服?
能开好几个。每个服独立目录 + 独立端口(7781、7782…)+ 独立 systemd 服务,1 核 2G 的机器带三四个原生服无压力,方案见一台服务器开多个游戏服。

十、小结

泰拉瑞亚是新手开服的最佳练手对象:单端口、Linux 原生、资源消耗全站最低。好友玩玩原生服够了;想往公共服经营,直接上 TShock,权限分组和指令系统会让管理省一半力气;玩 MOD 就 tModLoader,接受"每次更新全员同步"的仪式感。

1 核 2G 就能开的联机服,可以看看财富云计算的 NAT 型云服务器——无独立公网 IP,价格比独立 IP 机型省一半以上,TCP 单端口映射零门槛。更多游戏开服教程持续更新在游戏配置与开服教程总索引。


相关阅读:英灵神殿开服 · 僵尸毁灭工程开服 · 七日杀开服 · 我的世界 Java 版开服 · 游戏配置速查

延伸阅读
  1. 高防误区与避坑清单:25 个坑+下单前必问 14 问+到货验货流程
  2. DNS 攻击防护专题:劫持、隧道、投毒、放大四类攻击与 DNSSEC
  3. 电商大促防攻击预案:T-14 到当天的分级响应与降级开关
  4. 源站真实 IP 隐藏完全指南:六大暴露面排查+NAT 型终极方案
  5. 日志分析找攻击源:Nginx 日志三维度分析法与证据固定
  6. 攻击应急响应手册:六阶段响应流程,从确认到复盘的照做清单
  7. iptables 抗 DDoS 配置模板:状态过滤+SYN 防护+防扫描+游戏服版
  8. OpenResty Lua 自研 WAF:动态限流+攻击特征检测+Redis 黑名单
更多阅读
  1. 上一篇:森林之子 Sons of the Forest 开服完全指南:三端口+userdatapath 存档管理
  2. 下一篇:僵尸毁灭工程 Project Zomboid 开服完全指南:Linux 原生+SANDBOX 配置+MOD
发表评论 抢沙发