What Facepunch specifies
| Item | Facepunch's figure or rule |
|---|---|
| Operating system | Windows, Linux or macOS |
| Memory | 12 GB free; a 6000 map uses more |
| Disk | 15 GB free; SSD or NVMe highly preferred |
| Install | SteamCMD, app ID 258550, +login anonymous |
| World size | server.worldsize from 1000 to 6000 |
| Players | More players need a faster CPU |
| Start-up | Several minutes; wait for Server startup complete |
Those are the only hard numbers Facepunch publishes, and its wiki says plainly that they are not fixed: real usage depends on the map and on how many people play. Three settings move the figure. server.worldsize sets memory and disk, since a larger map holds more terrain and more entities. server.maxplayers sets the CPU load. Population over a wipe sets the rest, because every base, box and deployable lands in the save file and stays in memory until the next map wipe.
No per-player RAM figure comes from Facepunch. Size from the 12 GB floor, watch the process across a full wipe cycle, and add memory before the last week, when the save is largest.
The four ports
| Convar | Protocol | Default | Needed for |
|---|---|---|---|
server.port | UDP | 28015 | Joining and playing |
server.queryport | UDP | 1 above the higher of server.port and rcon.port | The in-game server browser |
rcon.port | TCP | Set it explicitly; Facepunch's example uses 28016 | Remote administration |
app.port | TCP | The higher of game or RCON port, plus 67 (28083 with the launch line below; app.info shows it) | Rust+ companion app; must be 10000 or above |
Only the game port is needed to connect; Facepunch suggests getting that working first. The query port cannot equal the game port, and without it the server does not appear in the browser. Rust+ needs its TCP port reachable from the internet and outbound access to companion-rust.facepunch.com; a server that fails the built-in connectivity check disables Rust+ itself. To turn Rust+ off on purpose, Facepunch's documented form is +app.port 1- on the command line.
RCON carries the admin password. Open it in the firewall only to the addresses you administer from, not to the world. Facepunch's own web console is served without HTTPS. The RCON password on the launch line is visible to anyone who can list processes on the machine. Use a long random value, run the server as its own non-root user, and never reuse the password elsewhere.
Why a whole machine
Rust is a long-lived process that grows over a wipe. On a virtual machine the CPU and memory it needs most in those final days are shared with other tenants. A bare metal server gives the game every core and all the RAM, root or Administrator access, and the choice of OS. The game server machines are HPE enterprise hardware in New York, Miami, San Francisco, Amsterdam and Bucharest, on our own network, AS19624.
- Port: every dedicated server includes an unmetered port, 1 Gbps on 10 of the 18 configurable lines and 500 Mbps on the other 8, and one IPv4. Nothing counts the traffic.
- Console: rack servers and blades carry HPE iLO, Dell iDRAC or a Supermicro BMC, published in the dashboard once you add a console login, so a hung boot is recoverable without a ticket.
- OS: one-click images include Ubuntu up to 26.04 and Windows Server up to 2025, depending on the line. Linux servers run RustDedicated headless; Windows servers give you its interactive console.
- Delivery: a racked machine is live about 30 minutes after the order is approved; a build to order takes 4 to 24 hours.
Pick the city nearest your players. The looking glass runs ping and traceroute from our edge routers, so you can measure the route before ordering.
Installing on Linux
- Create a non-root user for the server and log in as it. Install the packages Valve's SteamCMD page lists for your distribution.
- Download SteamCMD and pull the server with the commands below. Without
+login anonymousthe install fails with a No subscription error. - In the install folder, make
runds.shexecutable and add your launch options to it. - Run it inside
screen -S rust_server ./runds.sh; detach with Ctrl+A then D, reattach withscreen -x rust_server. - The Linux console is not interactive, so administer it over RCON.
mkdir -p ~/rust ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar xvfz steamcmd_linux.tar.gz
./steamcmd.sh +force_install_dir ../rust +login anonymous +app_update 258550 validate +quit
cd ../rust && chmod +x runds.sh
To test a pre-release build, Facepunch documents app_update 258550 -beta staging. Going back to the default build needs the public branch named explicitly.
Launch line and server.cfg
Facepunch's advice is to keep only necessities such as ports and RCON on the command line. Here is a trimmed version of its example; on Windows the binary is RustDedicated.exe.
./RustDedicated -batchmode +server.port 28015 +server.level "Procedural Map" +server.seed 1234 +server.worldsize 4000 +server.maxplayers 50 +server.hostname "My Rust Server" +server.identity "server1" +rcon.port 28016 +rcon.password "CHANGE-ME" +rcon.web 1 -logfile server1.log
Everything else goes in server/server1/cfg/server.cfg, one convar per line without the +. The server reads it at start-up, it takes priority over the command line, and the server never writes to it. A few variables, such as the weather chances, only take effect once the server is running and must be set over RCON.
server.hostname "My Rust Server"
server.description "Vanilla, monthly wipe"
server.tags monthly,vanilla,EU
server.maxplayers 50
To make yourself an owner, run users in the console to read your SteamID, then run ownerid (or moderatorid) followed by that SteamID and your name in quotes, and reconnect. On Linux, send those commands over RCON.
Wipes and the wipe timer
A forced wipe raises the protocol number in the .sav file name, so the server starts a fresh map rather than loading the old one. Facepunch calls renaming an old save to dodge it dangerous and ill-advised. A blueprint wipe is separate: stop the server and delete player.blueprints as well.
- The schedule follows your wipe tag in
server.tags: monthly, biweekly or weekly. Use only one tag from each group. - Defaults: monthly is the first Thursday at 19:00 London time; weekly is every Thursday at 19:00; biweekly is the first and third Thursday.
- Change it with
wipetimer.wipeDayofWeek(0 to 6),wipetimer.wipeHourofDay(0 to 23) andwipetimer.wipeTimezone, or override it withwipeCronOverrideorwipeUnixTimestampOverride. - Check the result with
PrintWipe. The server starts its endgame events 24 hours before the wipe;eventschedulewipeoffset.event_hours_before_wipe 0turns them off.
Updates, mods and backups
Running SteamCMD in the start-up script keeps the server current, but it also restores vanilla files, which removes Oxide. If you run Oxide, reinstall it after each server update. The -autoupdate switch in Facepunch's 2015 quick-start zip no longer exists.
Back up the whole identity folder under server/: the .sav and .map, the player files, cfg, and companion.id. Facepunch is strict about that last file. Keep it with the server and its backups, never copy it to another server, and never delete it, or every player has to pair Rust+ again.
When this is the wrong fit
A private server for a few friends for one evening does not need a rented machine; Facepunch's own guide covers running it on your PC and connecting with connect localhost:28015. Rust's Linux console is not interactive, so if you do not want to work over RCON, choose Windows. For other games, our Minecraft write-up covers the same questions for Java.
Questions
How much RAM does a Rust server need?
Facepunch states 12 GB of free memory as the starting point and notes that a 6000 map uses more. It publishes no per-player figure. Memory grows with world size and with what players build across a wipe, so watch usage near the end of a cycle and size up from there.
Which ports must be open?
UDP for server.port (28015 by default) and for server.queryport, which defaults to one above the higher of the game and RCON ports. TCP for rcon.port, ideally restricted to your own addresses, and TCP for Rust+ on app.port, which must be 10000 or higher.
Does the server need a Steam account?
No. SteamCMD downloads app 258550 with an anonymous login. Players still need a Steam account that owns Rust to join.
Linux or Windows for RustDedicated?
Both are supported. On Linux the console is not interactive, so you run the server under screen or as a service and administer it over RCON. On Windows the console accepts commands directly.
What world size should I choose?
Facepunch's documented range for server.worldsize is 1000 to 6000, and a larger map needs more disk and memory. Its example uses 4000; pick a size that suits your player count.
Can I keep the map through a forced wipe?
No. A forced wipe changes the save's protocol version, and Facepunch warns against renaming old saves to get around it. Plan the server's own schedule around the first Thursday of the month.