RadarHost

Hosting guide

How to set up a Rust dedicated server

Rust ships a dedicated server that anybody can download and run, and Facepunch document it on their own wiki. You do not need a Steam account to install or run the server, only to play on it. Here is the whole path, in order, plus the parts that reliably catch people out.

Updated 7 September 2026

Install it with SteamCMD

The server is installed and updated with SteamCMD, and the Rust app ID is 258550. On Linux the sequence Facepunch document is to unpack SteamCMD, make it executable, then run one line:

  • ./steamcmd.sh +force_install_dir ../rust +login anonymous +app_update 258550 validate +quit

Windows is the same command with steamcmd.exe. The +login anonymous part matters even though no account is needed: leave it out and SteamCMD answers with ERROR! Failed to install app '258550' (No subscription), which reads like a licensing problem and is not one.

Facepunch also host an old Rust_Server.zip quick-start bundle, and their own wiki now warns you off it. The disclaimer says it dates from 2015, claims an update behaviour that no longer exists, and runs SteamCMD twice for no reason. Read the page instead.

The launch line

Rust has no first-run configuration wizard. Everything is set on the command line. The example Facepunch give, trimmed, looks like this:

  • RustDedicated.exe -batchmode +server.port 28015 +server.level "Procedural Map" +server.seed 1234 +server.worldsize 4000 +server.maxplayers 10 +server.hostname "Name of Server" +server.identity "server1" +rcon.port 28016 +rcon.password letmein +rcon.web 1 -logfile rustserverlog.txt
SettingWhat it does
-batchmodeRuns the server without a window of its own.
+server.portThe port players connect to. 28015 by default, and it is UDP.
+server.seedThe random seed for map generation. Any value from 0 to 2147483647.
+server.worldsizeMap size. Facepunch document a usable range of 1000 to 6000.
+server.identityThe internal name of the server. It decides which folder your files live in.
+rcon.port, +rcon.passwordRemote console. This port is TCP. Change the password.
-logfileSends console output to a file. Facepunch suggest a date in the filename.

Startup takes several minutes and prints a lot of noise, some of it harmless errors. The line to wait for is Server startup complete. Anything before that is not a server yet.

server.cfg, and why it wins

Facepunch's advice is to keep the command line to the essentials, meaning ports and remote console, and put everything else in a server.cfg file inside rust/server/<server.identity>/cfg/. Two things about that file are worth remembering. The server reads it at startup and it "takes priority over anything set on the command line", so a value you changed on the launch line but not in the file will look like it was ignored. And the server never writes to it, so it is yours to edit by hand.

Variables in server.cfg drop the leading +. A few cannot be set this way at all. Facepunch name the weather chance variables, which have to be set after the server is running, either by hand in the console or through a remote console client.

Ports: there are four, and two of them have to be open

The game port is 28015 UDP by default. The one people miss is the query port. Facepunch state it plainly: if server.queryport is not set explicitly it defaults to one above whichever of server.port and rcon.port is greatest, both it and the game port are UDP, both need to be open and reachable, and the two cannot be the same number. The query port is what lets services read your server, which is what puts it in the in-game browser. A server with only 28015 open works from the machine it runs on and is invisible from everywhere else.

There are four ports in total: game and query on UDP, remote console and Rust+ on TCP. Facepunch's own router advice is to get the game port working first and add the others afterwards, to give the server a fixed address on your network rather than a rotating one, and to avoid the "both" or "all" protocol option if your router offers it.

One more surprise arrives with no error attached. Rust uses a third-party service called MaxMind to decide which country a server is in, and the wiki says this is occasionally wrong. If your server shows under the wrong flag, that is where the fix lives, not in your config.

Saves, identity and admins

+server.identity is the internal name of the server and it decides where everything lives. Facepunch's example creates a server1 directory holding all of your server files. That folder is the thing to copy before a move, an experiment or a wipe. The cfg folder inside it holds both server.cfg and users.cfg.

To make yourself an owner while the server is running, type users in the console to print the connected players and their Steam IDs, then ownerid 76561198123456789 "Name", or moderatorid for the lesser role. You have to reconnect before the level applies, and the console prints has auth level when it has. Facepunch note the change is saved for you. With the server shut down you can edit users.cfg directly instead, one line per admin.

Plugins, and the restart that quietly removes them

Plugin support comes from Oxide, downloaded from uMod and extracted over the server files. Two facts from the wiki explain most reports of plugins vanishing. Oxide has to be reinstalled after every Rust update, once a matching Oxide build appears. And if your start-up script runs SteamCMD each time, as the documented loop does, your files are reverted to vanilla on every restart. That loop is a good idea and it is incompatible with Oxide unless you add the Oxide step back in behind it.

Keeping it running

The documented Windows pattern is a batch file with a :start label, the SteamCMD update line, the RustDedicated line, and goto start at the end, so a crash or a shutdown brings the server back. On Linux the console is not interactive, so Facepunch suggest running runds.sh inside a screen session and sending commands with a remote console client. Detach with CTRL+A then D, and reattach with screen -x rust_server.

Map size is the setting with the largest downstream cost. The documented range is 1000 to 6000, and the wiki says plainly that a larger map needs more disk space. More player slots ask more of the processor. Neither is a reason to hold back, but both are worth choosing on purpose.

Self-hosting or renting

If you already have a machine that stays on, self-hosting Rust costs nothing but your attention, and you keep every file. Plenty of groups should stop reading here.

The honest costs are these. Rust asks a lot of a machine, and that machine has to stay awake whenever anyone wants to play, which usually rules out the computer you play on. Many home connections cannot accept incoming connections at all, and no amount of careful port forwarding fixes that. Wipe day, game updates, and the Oxide reinstall that follows each one are yours to catch, often at an inconvenient hour.

Renting trades that list for a monthly bill and a smaller amount of file access. It does not run the game differently and it does not choose your settings for you. It is a different set of chores.

Where RadarHost fits

RadarHost rents Rust servers hosted in Beauharnois, Quebec, Canada. There are three plans, Standard, Premium and Diamond, priced in Canadian dollars, with no setup fee and cancel any time. What renting changes is who keeps the machine on; the seed, the map size, the plugins and the wipe schedule above are still yours to choose. After payment, our team reviews the order and emails setup details or next steps within 24 hours. Current plans and prices are on the Rust availability page.

Common questions

Which ports does a Rust dedicated server need?

The game port, 28015 UDP by default, and the query port. Facepunch state both are UDP, both must be open, and they cannot be the same number. Remote console and Rust+ add two TCP ports you can skip at first.

Why is my Rust server missing from the server browser?

Usually the query port. Facepunch document that services read your server through server.queryport, which defaults to one above the greatest of server.port and rcon.port unless you set it. Open it as well as the game port.

Where is the Rust server config file?

Create server.cfg yourself in rust/server/<server.identity>/cfg/. The server reads it at startup and Facepunch note it takes priority over anything set on the command line. Variables in it drop the leading plus sign.

Do I need a Steam account to run a Rust server?

No. Facepunch state you do not need a Steam account to install and run a Rust server, only one that owns Rust to play. Still pass +login anonymous to SteamCMD, or the download fails with a No subscription error.

Why do my Rust plugins disappear after a restart?

Because SteamCMD runs in your start-up script. Facepunch note that running SteamCMD on start always returns your files to vanilla, which removes Oxide. Oxide also has to be reinstalled after every Rust update.

Sources

What happens after you order. After payment, our team reviews the order and emails setup details or next steps within 24 hours. Prices are in Canadian dollars, there is no setup fee, and you can cancel any time.

Compare all worlds

Questions this guide did not answer go to the ticket desk. No payment starts from that link.