跳转到内容
WikilyWIKILY
全部游戏29 个 Wiki · 选择你的游戏
专用服务器

切换游戏

29 个 Wiki · 选择你的游戏
在 Wikily App 中查看 Rust免费 · 4.4★4.6★ · 全屏显示获取获取

如何搭建 Rust 专用服务器

自己开一个 Rust 服务器,地图大小、清档日和规则都由你来定。Facepunch 的服务器程序是免费的,可以在 Windows 和 Linux 上运行。

准备工作

一台 Windows 或 Linux 电脑,有人玩的时候要一直开着;还有 SteamCMD,这是 Valve 出的免费命令行工具,用来下载 Steam 服务器。Rust 服务器是 Steam app 258550,下载 6.1 GB,匿名登录即可:这台电脑不需要有 Rust,也不需要 Steam 账号。

每个玩家都需要自己在 Steam 上拥有 Rust。服务器这边,Facepunch 给的最低要求是 12 GB 空闲内存和 15 GB 硬盘空间,最好是 SSD;地图越大,两者需要的越多。

作为参考:在我们的测试电脑上,一个没有玩家的 1000 m 世界稳定在约 2.8 GB 内存,花了 3 分 18 秒才准备好。完整大小的地图耗时更长,占用也更多。

游戏只需要开放一个端口:UDP 28015。服务器列表和 Rust+ 手机 App 还要用两个端口,见“端口和防火墙”。

已在 2026 年 10 月 22 日的 Rust 服务器版本(协议 2635.289.1)上验证。

安装服务器

1. 从 Valve 下载 SteamCMD,解压到 C:\steamcmd。

Valve 官网上的 SteamCMD

2. 打开 PowerShell 或命令提示符,把服务器下载到 C:\rust-server:

PowerShell
C:\steamcmd\steamcmd.exe +force_install_dir C:\rust-server +login anonymous +app_update 258550 validate +quit

3. Rust 的启动命令很长,所以把它存成文件。把下面的内容保存为 C:\rust-server\start-server.bat,然后双击运行:

start-server.bat
cd /d "%~dp0"
RustDedicated.exe -batchmode +server.identity main +server.port 28015 +server.queryport 28017 +rcon.port 28016 +rcon.password "YOUR-ADMIN-PASSWORD" +rcon.web 1 +app.port 28082 +server.hostname "YOUR-SERVER-NAME" +server.maxplayers 60 +server.worldsize 3500 +server.seed 90817 -logfile server-log.txt

加载需要几分钟。窗口显示 Server startup complete 之后,玩家就可以加入了。

启动命令

启动命令里的每一组 +名称 值,都会在世界加载前设置一个控制台变量(convar)。没写的项,服务器就用默认值:

选项默认值作用
-batchmode不带图形界面运行服务器。一定要加上。
+server.identitymy_server_identityserver/ 下的文件夹名称,存放这个服务器的存档和设置。换一个 identity,就能用同一份安装再开一个独立的服务器。
+server.port28015游戏端口,UDP。玩家连接这个端口。
+server.queryport28016服务器列表使用的 UDP 端口。不能和游戏端口相同。
+rcon.port28015远程控制台,TCP。
+rcon.password(无)远程控制台的密码。自己设一个长密码。
+rcon.web1 表示 WebSocket RCON,这是 Facepunch 推荐的方式,它的网页控制台也用这种。
+app.port28082Rust+ 配套 App 的 TCP 端口,10000 或更高。
+server.hostnameMy Untitled Rust Server在服务器列表中显示的名称。
+server.maxplayers500同时在线的最大玩家数。
+server.worldsize4500地图大小,1000 到 6000。地图越大,加载越慢,占用内存越多。
+server.seed1337生成地图用的数字(0 到 2147483647)。
-logfile把控制台输出复制到文件里。

默认值是我们的测试服务器在日志和 RCON 中报告的数值。不设置 +server.seed 的话,每个服务器都会生成同一张种子 1337 的地图。

服务器设置

每次重启后都要保留的设置写进 server.cfg,它位于服务器文件夹里的 server\main\cfg(main 就是你的 server.identity)。每行写一个 convar,不带 +。

第一次启动时会创建 cfg 文件夹,里面有 users.cfg、bans.cfg 和 serverauto.cfg(服务器自己写入的文件)。server.cfg 要你自己创建才会有。

server.cfg
server.tags biweekly,softcore,EU
server.description "YOUR-SERVER-DESCRIPTION"
server.url "https://YOUR-WEBSITE"
server.headerimage "https://YOUR-WEBSITE/header.png"
server.pve false
decay.scale 0.5

服务器每次启动都会读取 server.cfg。在我们的测试中,同时写在 server.cfg 和启动命令里的 convar 保留了启动命令的值;server.cfg 的其他行都生效了。服务器自己从不写入 server.cfg。

Convar默认值作用
server.descriptionNo server description has been provided.玩家加入前看到的界面上的文字。
server.url(空)该界面上的网站链接。
server.headerimage(空)该界面上横幅图片的链接。
server.tags(空)服务器列表的筛选标签,用逗号分隔。
server.pveFalsePvE 模式。设为 true 时还会自动加上 pve 标签。
decay.scale1建筑腐烂(decay)速度的倍率。
server.saveinterval600自动保存的间隔秒数。

标签方便玩家筛选列表。清档标签(weekly、biweekly、monthly)和风格标签(vanilla、softcore、hardcore)各最多选一个,再加一个地区:NA、SA、EU、WA、EA、OC 或 AF。

其他可选标签有 pve、roleplay、creative、minigame、training、battlefield、broyale、builds、tut 和 premium。同一组里用两个标签,可能会让服务器在筛选搜索中消失。

要查看某个 convar 的当前值,在服务器控制台或 RCON 里只输入它的名称即可。

管理员

Rust 有两种权限:owner 和 moderator。在服务器控制台或通过 RCON 用玩家 17 位的 SteamID64 授予。status 命令会列出所有在线玩家及其 ID:

Server console
ownerid YOUR-STEAMID64 "YOUR-NAME"
moderatorid A-FRIENDS-STEAMID64 "A-FRIENDS-NAME"

然后玩家重新连接。两个命令都会立即把权限写进 cfg/users.cfg;我们在运行 server.writecfg 之前,文件里就已经有这两行了。用 removeowner 和 removemoderator 收回权限。

在游戏中,管理员按 F1 打开控制台,在里面输入命令。

命令作用
status显示在线玩家及其 SteamID64。
say <text>在聊天中向所有人发送消息。
kick <player> <reason>把玩家踢出服务器。
ban <player> <reason>封禁一名在线玩家。
banid <SteamID64> <name> <reason>按 ID 封禁,离线玩家也可以。
unban <SteamID64>解除封禁。
server.save立即保存世界。
server.writecfg把管理员和封禁名单写进 cfg 文件夹。
quit保存并停止服务器。

如果要从另一台电脑管理,Facepunch 的网页控制台 facepunch.github.io/webrcon 可以用你的 RCON 密码连接 RCON 端口。这个页面是未加密的 HTTP。

端口和防火墙

玩家通过 UDP 28015 连接游戏。服务器列表通过查询端口读取服务器信息,Rust+ App 通过 TCP 和服务器通信。按上面的启动命令,一共是三个端口:UDP 28015、UDP 28017 和 TCP 28082。

不设置 +server.queryport 时,服务器列表端口是游戏端口和 RCON 端口中较大者加一。我们没设 rcon.port 的测试服务器在 UDP 28016 上响应列表查询。

以管理员身份在 PowerShell 中运行,在 Windows 防火墙中放行这些端口:

PowerShell (administrator)
New-NetFirewallRule -DisplayName "Rust server (UDP)" -Direction Inbound -Protocol UDP -LocalPort 28015,28017 -Action Allow
New-NetFirewallRule -DisplayName "Rust server (Rust+)" -Direction Inbound -Protocol TCP -LocalPort 28082 -Action Allow

在路由器上把这三个端口转发到服务器电脑,并给这台电脑设一个固定的内网 IP。每条规则选 UDP 或 TCP,不要选“两者”。RCON(TCP 28016)不需要转发,除非你要在家外面管理服务器。

示意图:UDP 28015、UDP 28017 和 TCP 28082 从玩家经路由器到达服务器电脑;RCON 用的 TCP 28016 保持关闭。

Rust+ 配套 App

Rust+ 通过 app.port 把手机和服务器配对。不设置 +app.port 时,我们的测试服务器用的是 TCP 28082。端口必须是 10000 或更高,修改后需要重启。

服务器启动时会检查 Rust+ 能否从外部连到它。检查失败的话,Rust+ 会被关闭;我们没开任何端口的测试服务器记录了 Rust+ companion server connectivity test failed。服务器还需要能访问 companion-rust.facepunch.com。

如果 Rust+ 显示的地址不对,把 app.publicip 设为 YOUR-SERVER-IP。要关闭 Rust+,在启动命令里写 +app.port 1-,这里的减号在 1 后面。

identity 文件夹里的 companion.id 文件是服务器的 Rust+ 身份。千万不要删除,也不要给别的服务器用:否则每个玩家都得重新配对,而且删掉的文件无法恢复。

加入服务器

在 Rust 主菜单按 F1,输入:

F1 console
client.connect YOUR-SERVER-IP:28015

如果和服务器在同一个网络里,改用它的内网 IP 地址(用 ipconfig 查看)。查询端口开放后,服务器还会出现在服务器浏览器的 Community 分类下;如果运行了改变玩法的插件,则在 Modded 分类下。

存档、清档和更新

一个服务器保存的所有内容都在 server\main 里。启动并保存一次后,我们的文件夹里有:

文件内容
proceduralmap.1000.90817.289.sav世界:建筑、物品和所有放置的东西。289 来自协议号。
….sav.1上一次的存档。服务器会保留两份旧副本(server.savebackupcount 2)。
proceduralmap.1000.90817.289.map生成的地图,按大小、种子和协议命名。
.navmesh, _occlusion_3.dat服务器根据地图生成的 AI 寻路和可见性数据。
player.blueprints.18.db玩家已学会的蓝图。
player.deaths, .identities, .states玩家记录,每项一个 .db 文件。
player.tokens.dbRust+ 配对。
clans.289.db, relationship.289.db部落和玩家关系。
sv.files.289.db标志等可绘画物品上的图片。
companion.id服务器的 Rust+ 身份。
cfg/users.cfg、bans.cfg、serverauto.cfg 和你的 server.cfg。
*.db-wal旁边那个 .db 文件的最新改动。要和它一起复制。

备份:运行 server.save,停止服务器,复制整个 identity 文件夹,包括 -wal 文件。因为有 companion.id,只能恢复到同一个服务器上。

清档

清档就是让服务器从头开始。Facepunch 每月的更新会提高存档名里的协议号,所以服务器会自动生成新地图:这就是强制清档。不要靠改旧 .sav 的文件名来绕过它。

要自己清图,先停止服务器,删除 .sav 和 .map 文件,或者修改 server.seed。如果要清蓝图,同时还要删除 player.blueprints。

游戏内的清档倒计时默认是伦敦时间周四 19:00。用 wipetimer.wipeDayofWeek(0 是周日,4 是周四)、wipetimer.wipeHourofDay 和 wipetimer.wipeTimezone 修改。

更新

Rust 服务器不会自动更新。游戏打补丁后,停止服务器,再运行一次安装步骤里的 SteamCMD 命令:存档和 cfg 文件夹都会保留。在那之前,新版本的玩家无法加入。

插件和模组

插件运行在社区框架 Oxide(uMod)或 Carbon 上。Facepunch 为两者提供了说明,但都不是它做的。用 Oxide 的话,停止服务器,把 umod.org 上的 Rust 版本解压覆盖到服务器文件夹,再重新启动。插件放进 oxide/plugins。

每次用 SteamCMD 更新都会覆盖 Oxide 的文件,所以每次更新后都要重装 Oxide。Rust 打补丁后,Oxide 通常很快就会发布对应版本。

Facepunch 要求插件改变玩法或添加界面(采集倍率、礼包、信息面板)的服务器列在 Modded 下。管理工具、反作弊、聊天美化和修改原版 convar 的服务器可以留在 Community。违反规则可能会被移出列表。

uMod 上的 Rust 版 Oxide

常见问题

朋友连不上

等到出现 Server startup complete。检查 UDP 28015 是否转发到了正确的内网 IP,并在防火墙中放行。在自己的网络里,改用内网 IP 连接。

服务器没有出现在服务器列表里

转发查询端口(按我们的启动命令是 UDP 28017),并且不要和游戏端口相同。还在加载的服务器不会出现在列表里。

server.cfg 里的设置不生效

检查启动命令。同一个 convar 两边都写了时,以启动命令的值为准;在我们的测试服务器上,server.cfg 里的 maxplayers 和 hostname 就因此被忽略了。每个 convar 只写在一个地方。

玩家收到服务器需要更新的提示

Rust 打了补丁,但服务器没更新。停止服务器,再运行一次 SteamCMD 命令,如果用了 Oxide 或 Carbon,再重新安装。

更新后插件不工作了

SteamCMD 用原版游戏文件替换了 Oxide 的文件。重新安装最新的 Oxide 版本。

Rust+ 配对不上

app.port 必须是 10000 或更高,并按 TCP 转发。在日志里查看启动时的 Rust+ 检查结果,地址不对就设置 app.publicip,并且不要移动 companion.id。

服务器在加载地图时崩溃

内存不够。Facepunch 要求 12 GB 空闲内存;server.worldsize 设小一点,需要的内存就少一些。

SteamCMD 在开始下载前就停止了

命令里缺少 +login anonymous。把它加在 +app_update 前面。没有它时,我们的 SteamCMD 以 Failed to request app info update 结束。

Linux 服务器以 Failed to load module steamclient.so 退出

在运行 ./RustDedicated 之前,在同一个 shell 里先运行启动步骤中的 export 那一行,这样服务器才能找到它自己文件夹里的 steamclient.so。

常见问答

开 Rust 服务器需要拥有 Rust 吗?

不需要。SteamCMD 用匿名登录下载服务器。每个玩家需要在 Steam 上拥有 Rust。

Rust 服务器要转发哪个端口?

玩游戏要 UDP 28015。按本页的启动命令,想出现在服务器列表里再加 UDP 28017,Rust+ 再加 TCP 28082。

Rust 服务器需要多少内存?

Facepunch 要求至少 12 GB 空闲内存。我们 1000 m 的小测试地图在没人在线时用了约 2.8 GB;地图越大、玩家越多,需要的越多。

怎么在自己的 Rust 服务器上给自己管理员权限?

在服务器控制台或通过 RCON 运行 ownerid,加上你 17 位的 SteamID64 和一个名字,然后重新加入。游戏里的控制台按 F1 打开。

Rust 服务器能设密码吗?

原版 Rust 不行:没有加入密码。在我们的测试服务器上,find password 只列出了 RCON 的设置。想限制谁能加入,需要用插件。

Rust 服务器什么时候清档?

Facepunch 会随每月更新强制清图,通常是每月第一个周四。在这之间,你随时可以删除存档来清档。

能在 Linux 上运行 Rust 服务器吗?

可以。服务器也有 Linux 版。我们在 Ubuntu 24.04 上测试过。

Wikily Servers 提供 Rust 服务器托管

每月 €10.99 起

免费试用 24 小时 · 服务器位于欧洲

租用服务器
加入创作者社区建设 Rust Wiki 的伙伴们都在我们的 Discord。提问、推荐页面,或和我们一起建设它。加入 Discord (在新标签页打开 Discord)