Rust

PlatformSupportNotes
Linux✅ NativeRecommended
Windows✅ Native

Rust is one of the most resource-demanding survival games. A server with at least 8 GB of RAM and 4 CPU cores is the minimum for standard maps.

02

Requirements

ComponentMinimumRecommended
RAM8 GB16+ GB
CPU4 core6-8 core
Disk20 GB SSD40+ GB NVMe
OSUbuntu 22.04 / Debian 12Ubuntu 22.04
Port28015 UDP:
03

Preparation

Dependencies and dedicated user

bash
# Install 32-bit dependencies for SteamCMD
dpkg --add-architecture i386
apt update
apt install -y lib32gcc-s1 curl wget screen

# Create dedicated user (never use root for gameserver)
useradd -m -s /bin/bash rustserver
su - rustserver

Install SteamCMD

bash
mkdir ~/steamcmd && cd ~/steamcmd
curl -sqL "https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz" | tar zxvf -
04

Rust Server Installation

bash
# Create server directory
mkdir ~/rust_server

# Download/update server (AppID 258550)
~/steamcmd/steamcmd.sh \
  +force_install_dir ~/rust_server \
  +login anonymous \
  +app_update 258550 validate \
  +quit

Installation takes 10-20 minutes depending on network speed (~10 GB).

05

Configuration and Startup

Startup script

bash
nano ~/start_rust.sh
bash
#!/bin/bash
cd ~/rust_server

./RustDedicated \
  -batchmode \
  -nographics \
  +server.ip 0.0.0.0 \
  +server.port 28015 \
  +server.tickrate 30 \
  +server.hostname "My Rust Server" \
  +server.description "Server managed by DeluxHost" \
  +server.url "https://deluxhost.net" \
  +server.worldsize 3500 \
  +server.seed 12345 \
  +server.maxplayers 50 \
  +server.saveinterval 600 \
  +rcon.port 28016 \
  +rcon.password "CHANGE_THIS_PASSWORD" \
  +rcon.web 1 \
  2>&1 | tee ~/rust_server/logs/server.log
bash
chmod +x ~/start_rust.sh
mkdir ~/rust_server/logs

Background startup with screen

bash
screen -S rust ./start_rust.sh

# Detach with Ctrl+A, D
# Reattach with:
screen -r rust
06

systemd service (recommended)

Return to root user:

bash
exit   # exit from rustserver
nano /etc/systemd/system/rust-server.service
ini
[Unit]
Description=Rust Dedicated Server
After=network.target

[Service]
User=rustserver
Group=rustserver
WorkingDirectory=/home/rustserver/rust_server
ExecStart=/home/rustserver/start_rust.sh
ExecStop=/bin/kill -SIGINT $MAINPID
Restart=on-failure
RestartSec=30
KillSignal=SIGINT
TimeoutStopSec=60

[Install]
WantedBy=multi-user.target
bash
systemctl daemon-reload
systemctl enable --now rust-server
systemctl status rust-server
07

Firewall

bash
ufw allow 28015/udp   # main server
ufw allow 28016/tcp   # RCON (only if necessary, limit to trusted IPs)

Don't expose the RCON port on the internet without protecting it. Use a firewall to limit it to your IP, or access it via SSH tunnel.

08

Update the Server

Rust updates every Thursday. Servers not updated are removed from official server list.

bash
# Stop server
systemctl stop rust-server

# Update via SteamCMD (as rustserver user)
su - rustserver -c "~/steamcmd/steamcmd.sh +force_install_dir ~/rust_server +login anonymous +app_update 258550 +quit"

# Restart
systemctl start rust-server

Automatic weekly update

bash
# Add to rustserver user's crontab
su - rustserver -c 'crontab -e'
bash
# Every Thursday at 8:00 PM (after Facepunch update)
0 20 * * 4 systemctl stop rust-server && ~/steamcmd/steamcmd.sh +force_install_dir ~/rust_server +login anonymous +app_update 258550 +quit && systemctl start rust-server
09

Plugins with Oxide/uMod

Oxide is the most used plugin framework for Rust.

bash
# Download Oxide installer
su - rustserver
cd ~/rust_server
curl -sqL https://umod.org/games/rust/download -o oxide.zip
unzip -o oxide.zip
rm oxide.zip

Plugins (.cs or .dll) go in ~/rust_server/oxide/plugins/. Reload without restart:

bash
# Via RCON (use rcon-cli or web panel)
oxide.reload PluginName
oxide.reload *        # reload all
10

Useful Admin Commands

Connect via RCON with a client like rcon.io or rcon-cli:

bash
# Give admin to a player
ownerid STEAMID64 "PlayerName" "DeluxAdmin"

# Kick/ban
kick STEAMID64 "reason"
ban STEAMID64 "reason"

# Save server manually
server.save

# See connected players
players

# Wipe map (keeps blueprints)
wipe
11

Performance Optimization

bash
# Add to your startup script:
+server.tickrate 30         # default 30, reduce to 20 for less CPU
+ai.think false             # disable AI (reduced PVE)
+server.stability false     # less structural calculations
+server.pve false           # standard PVP

With worldsize 3500 you need about 8-10 GB of RAM. To save, use worldsize 2000 (6 GB). Largest map (worldsize 6000) requires 14+ GB.

12

Monitor Logs

bash
# Live logs
journalctl -u rust-server -f

# Last 100 lines
journalctl -u rust-server --lines 100 --no-pager
13

Tips & Tweaks

Server Performance Flags

Add to your startup script for optimization:

bash
# FPS and tickrate settings
+server.fps 200             # 200 = buttery smooth, 60 = low CPU
+server.tickrate 30         # Higher = more responsive, more CPU
+server.description "My Server on DeluxHost"

# Performance tweaks
+ai.think false             # Disable AI thinking (save CPU)
+server.stability false     # Reduce physics calculations
+server.pve false           # Standard PVP

# Connection optimization
+net.packetlog false        # Reduce logging overhead
+net.read 256               # Network bandwidth

Common configurations:

Server TypeFPSTickrateAINotes
Small PVP20030off~4-8 players
Medium10020off20-30 players
Large6015off50+ players
No-wipe10030onPvE-focused

Wipe Schedule

Example: Monthly wipes on first Thursday at 5 PM UTC

bash
# In startup script, add server announcement:
+server.description "Monthly wipe: First Thursday @ 5PM UTC"

Automate wipe with backup:

bash
# Add to root crontab for 1st Thursday at 4:55 PM (before wipe)
55 16 * * 4 [ $(date +\%d) -le 07 ] && systemctl stop rust-server && \
  tar -czf /backups/rust-pre-wipe-$(date +\%Y\%m\%d).tar.gz /home/rustserver/rust_server/server/ && \
  rm -rf /home/rustserver/rust_server/server/*.sav && \
  systemctl start rust-server

RCON Web Panel

Access server console via web:

bash
# In startup script:
+rcon.web 1
+rcon.port 28016
+rcon.password "your_secure_password"

Then browse: http://SERVER_IP:28016 (requires password)

Popular RCON clients:

Useful Admin Commands (RCON)

CommandPurpose
playersList connected players with IDs
ownerid <STEAMID64> "Name" "Reason"Add admin
moderatorid <STEAMID64>Add moderator
removemoderator <STEAMID64>Remove moderator
removeowner <STEAMID64>Remove admin
kick <STEAMID64> "Reason"Kick player
ban <STEAMID64> "Reason"Ban player (persistent)
unban <STEAMID64>Remove ban
banid <STEAMID64> "Reason"Ban by ID
banlistShow all bans
server.saveManual save
quitGraceful shutdown

Oxide Plugin Commands

Manage plugins via RCON:

bash
# Reload plugin
oxide.reload PluginName

# Reload all plugins
oxide.reload *

# Unload plugin
oxide.unload PluginName

# Load plugin
oxide.load PluginName

# Show version
oxide.version

Popular plugins:

Memory and Map Size Tuning

Relationship between worldsize and RAM:

WorldsizeRecommended RAMPlayer Capacity
20006 GB20-30
35008-10 GB40-50
450012 GB60-80
600016+ GB100+
bash
# In startup script
+server.worldsize 3500
+server.seed 12345     # For reproducibility
+server.salt 54321

Bandwidth and Network Optimization

bash
# Server startup flags for network tuning
+net.packetlog 0
+net.read 256
+net.write 256
+server.tickrate 30    # Lower = less bandwidth
+server.fps 100        # Lower = less updates

Monitoring and Health Checks

bash
# Server running status
systemctl status rust-server

# Memory and CPU usage
ps aux | grep RustDedicated

# Active connections
ss -tulnp | grep 28015

# Disk usage (server saves can grow)
du -h /home/rustserver/rust_server/server/

# Check for crashes in logs
journalctl -u rust-server -n 50 | grep -i "crash\|fatal"

# Last 10 messages (online players, etc.)
tail -10 ~/rust_server/logs/server.log

Troubleshooting Common Issues

Server not showing in list:

Players experiencing lag/stuttering:

High CPU usage:

  • rcon.io - Web-based
  • Rusty - Desktop
  • rcon-cli - Command-line
  • Kits: free items at spawn
  • NoEscape: prevent building in caves
  • VendingSetup: vending machines
  • Duels: PvP arena plugin
  • Backpacks: portable storage
  • Update server (wipes every Thursday)
  • Check sv_setsteamaccount is set (Oxide requirement)
  • Verify firewall allows 28015 UDP
  • Reduce tickrate: +server.tickrate 20
  • Reduce FPS: +server.fps 100
  • Check /worldsize (reduce map size if needed)
  • Monitor RAM: free -h
  • Disable AI: +ai.think false
  • Lower FPS: +server.fps 60
  • Reduce tickrate: +server.tickrate 15
  • Check installed plugins (some are resource-heavy)

DeluxHost, opgericht in 2023, biedt hoogwaardige hostingoplossingen voor diverse digitale behoeften. Wij bieden gedeelde hosting, VPS en dedicated servers met geavanceerde beveiliging en wereldwijde datacenters.

© DeluxHost, Alle rechten voorbehouden. | BTW-nummer: IT17734661006
Alle systemen operationeel