How to Setup a Rust Server: Complete Guide
π‘ Quick Tip: Setting up a Rust server manually can be complex and time-consuming. For a much easier experience with professional-grade performance, consider grabbing a high-performance Rust Server at https://physgun.com/games/rust-server-hosting. Our Rust hosting eliminates all the technical hurdles and gets you playing in minutes!
Table of Contents
System Requirements
Minimum Requirements
CPU: 4-core CPU (3.0GHz+ base clock)
Storage: 100GB SSD (preferably NVMe for better performance)
Network: 20+ Mbps upload speed
OS: Windows 10/11, Ubuntu 20.04+, or other modern Linux distributions
Recommended Requirements
CPU: 8+ threads with high single-thread performance (e.g., Ryzen 5800X3D or i9-11900K)
Storage: 250GB+ NVMe SSD
Network: 100+ Mbps upload speed
Note: Rust servers are extremely CPU-intensive and rely heavily on single-thread performance. Higher frequency CPUs perform better than those with more cores.
Physgun Setup Guide β Easiest method
By far the easiest way to setup a Rust server is by using Physgun to host your Rust server for you. No annoying maintenance, troubleshooting, or long setups required!
Step 1: Find the perfect server for you.
Use our Rust Server Resource Calculator to accurately gauge which server is right for you
Place your order, and use code
PHYSGUN
for 30% off your first orderCheck your email to instantly setup your Gamepanel account
Enjoy your new Rust Server! π
Yep, itβs really that easy with Physgun, 4 simple steps to get you up and running with a high-performance Rust Server. Backed by extremely fast hardware and bulletproof DDoS Protection.

Windows Installation Guide
Remember: Setting up with Physgun saves you from all these manual steps and provides Bulletproof DDoS protection, automatic updates, and professional support!
Step 1: Install SteamCMD
Create a folder for SteamCMD (e.g.,
C:\steamcmd
)Download SteamCMD from: https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip
Extract the contents to your folder
Run
steamcmd.exe
and wait for it to update
Step 2: Download Rust Server Files
Open Command Prompt as Administrator
Navigate to your SteamCMD folder:
cd C:\steamcmd
Run the following commands:
steamcmd.exe +force_install_dir C:\rustserver +login anonymous +app_update 258550 validate +quit
Step 3: Create Server Startup Script
Create a new file called start_rust_server.bat
in your Rust server folder with the following content:
@echo off
:start
echo Starting Rust Server...
RustDedicated.exe -batchmode ^
+server.ip 0.0.0.0 ^
+server.port 28015 ^
+server.tickrate 30 ^
+server.hostname "Your Server Name" ^
+server.description "Your server description" ^
+server.url "http://yourwebsite.com" ^
+server.headerimage "http://yourwebsite.com/serverimage.jpg" ^
+server.identity "server1" ^
+server.level "Procedural Map" ^
+server.seed 12345 ^
+server.worldsize 4000 ^
+server.maxplayers 100 ^
+server.pve false ^
+server.saveinterval 300 ^
+rcon.web true ^
+rcon.ip 0.0.0.0 ^
+rcon.port 28016 ^
+rcon.password "changeme" ^
+app.port 28025
echo.
echo Restarting server...
timeout /t 10
goto start
Step 4: Windows Firewall Configuration
Open Windows Defender Firewall with Advanced Security
Create new Inbound Rules for:
Port 28015 (UDP) - Game traffic
Port 28016 (TCP) - RCON
Port 28025 (TCP) - Rust+ app
Create matching Outbound Rules
Allow
RustDedicated.exe
through the firewall
Linux Installation Guide
Pro Tip: Physgun's Rust hosting runs on optimized, tuned Linux servers with all dependencies pre-configured, saving hours of setup time!
Step 1: Create Steam User (optional)
β οΈ SECURITY WARNING: Never use simple usernames/passwords like "steam/steam"! Botnets actively scan for these and will compromise your server within minutes.
sudo useradd -m -s /bin/bash steam
sudo passwd [UniquePasswordHere]
sudo usermod -aG sudo steam
su - steam
Change [UniquePasswordHere]
to a unique password. Creating a steam user is optional (and recommended by Valve) if you do not wish to run SteamCMD on root.
Step 2: Install Dependencies
For Ubuntu/Debian:
sudo apt update
sudo apt install software-properties-common
sudo dpkg --add-architecture i386
sudo add-apt-repository multiverse
sudo apt update
sudo apt install lib32gcc-s1 lib32stdc++6 curl tar screen wget
For CentOS/RHEL:
sudo yum update
sudo yum install glibc.i686 libstdc++.i686 screen wget
Step 3: Install SteamCMD
mkdir ~/steamcmd && cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
./steamcmd.sh +quit
Step 4: Install Rust Server
./steamcmd.sh +force_install_dir ~/rustserver +login anonymous +app_update 258550 validate +quit
Step 5: Create Startup Script
Create start_rust_server.sh
:
#!/bin/bash
while true; do
echo "Starting Rust Server..."
./RustDedicated -batchmode \
+server.ip 0.0.0.0 \
+server.port 28015 \
+server.tickrate 30 \
+server.hostname "Your Server Name" \
+server.description "Your server description" \
+server.url "http://yourwebsite.com" \
+server.headerimage "http://yourwebsite.com/serverimage.jpg" \
+server.identity "server1" \
+server.level "Procedural Map" \
+server.seed 12345 \
+server.worldsize 4000 \
+server.maxplayers 100 \
+server.pve false \
+server.saveinterval 300 \
+rcon.web true \
+rcon.ip 0.0.0.0 \
+rcon.port 28016 \
+rcon.password "changeme" \
+app.port 28025
echo "Server crashed! Restarting in 10 seconds..."
sleep 10
done
Make it executable:
chmod +x start_rust_server.sh
Step 6: Run Server in Screen
screen -S rust-server
./start_rust_server.sh
Press Ctrl+A
then D
to detach. Reattach with screen -r rust-server
.
Server Configuration
Essential Server Variables
Variable | Description | Example |
---|---|---|
| Server name shown in browser | "My Rust Server" |
| Maximum player slots | 100 |
| Map size (1000-6000) | 4000 |
| Map generation seed | 12345 |
| Server update rate (10-30) | 30 |
| Auto-save interval (seconds) | 300 |
| Building decay rate multiplier | 1.0 |
| Resource gathering multiplier | 1.0 |
Performance Settings
Add these for better performance:
+gc.buffer 2048
+gc.incremental_milliseconds 1
+fps.limit 256
Port Forwarding & Firewall Setup
Note: Physgun Rust Server Hosting handles all your networking automatically - no port forwarding needed!
Required Ports
Port | Protocol | Purpose |
---|---|---|
28015 | UDP | Game traffic |
28016 | TCP | RCON access |
28025 | TCP | Rust+ app |
Port Forwarding Steps
Find your server's local IP:
Windows:
ipconfig
Linux:
ip addr
orifconfig
Access your router:
Open browser to
192.168.1.1
or192.168.0.1
Login with admin credentials
Create port forwarding rules:
External Port: 28015 β Internal Port: 28015 (UDP)
External Port: 28016 β Internal Port: 28016 (TCP)
External Port: 28025 β Internal Port: 28025 (TCP)
Internal IP: Your server's local IP
Linux Firewall (iptables)
sudo iptables -A INPUT -p udp --dport 28015 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 28016 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 28025 -j ACCEPT
sudo iptables-save
Linux Firewall (ufw)
sudo ufw allow 28015/udp
sudo ufw allow 28016/tcp
sudo ufw allow 28025/tcp
sudo ufw reload
Common Issues & Solutions
Weβve combed through the various amounts of common issues people face when manually setting up their Rust Server and documented them here to assist. Like we mentioned before, maintaining a Rust server yourself is very time consuming, that is why at Physgun your Rust server is maintained properly so you donβt have to waste time.
Issue: Server Not Showing in Server List
Solutions:
Port forwarding not working:
Verify ports are open: Use online port checkers
Check if you have a public IP (not behind CGNAT)
Some ISPs block game servers - contact them
Try DMZ as a test (not recommended for production)
Double NAT situation:
Check if modem is in bridge mode
Ensure only one device is doing NAT
Firewall blocking:
Temporarily disable Windows Firewall to test
Check antivirus software firewall settings
Issue: "Disconnected: Connection Attempt Failed"
Solutions:
Ensure server is fully loaded (can take 5-10 minutes)
Verify correct public IP is being used
Check server console for errors
Confirm ports are properly forwarded
Test with local connection first:
connect localhost:28015
Issue: High Memory Usage
Solutions:
Add to startup script:
+gc.buffer 2048+gc.incremental_milliseconds 1
Schedule daily restarts
Limit entity count:
+server.entity_limit 250000
Issue: Server Crashes on Startup
Solutions:
Verify game files: Re-run SteamCMD with
validate
Check available disk space (need 100GB+)
Ensure all dependencies are installed
Review server identity folder for corruption
Try different server.seed value
Issue: "Port already in use" Error
Solutions:
Check if another instance is running:
Windows:
netstat -ano | findstr :28015
Linux:
sudo netstat -tulpn | grep :28015
Change ports in startup script
Kill existing process using the port
Issue: Players Experience Lag/Rubberbanding
Solutions:
Increase tickrate:
+server.tickrate 60
Optimize network settings:
+net.mtu 1400+net.sendbuffer 2097152
Check server CPU usage (should be <80%)
Verify upload bandwidth is sufficient
Performance Optimization
Essential Performance Commands
Add these to your startup script:
+server.tickrate 60
+fps.limit 256
+gc.buffer 2048
+gc.incremental_milliseconds 1
+net.sendbuffer 2097152
+server.entity_limit 250000
+craft.instant false
Regular Maintenance
Daily server restarts - Clears memory leaks
Weekly map wipes - Reduces entity count
Monitor performance - Use RCON tools or admin mods
Update regularly - Keep server files current
Hardware Optimization
CPU: Prioritize high frequency over core count
RAM: Use fast DDR4/DDR5 memory
Storage: NVMe SSDs reduce loading times
Network: Ensure stable, low-latency connection
Modding Your Server
Tip: Physgun Rust Servers offers one-click plugin installation! & one-click Carbon / Oxide(uMod) installation as-well!
Installing Oxide/uMod
Download from https://umod.org/games/rust
Extract files to your server directory
Restart server
Plugins go in
oxide/plugins/
folder
Popular Performance Plugins
ServerInfo - Monitor server performance
StackSizeController - Optimize inventory management
EntityLimit - Control entity spawning
LagCompensation - Improve hit registration
Essential Admin Plugins
AdminRadar - Track players and activities
Vanish - Invisible admin mode
GodMode - Invincibility for testing
Teleportation - Quick movement around map
Final Notes
Setting up a Rust server requires patience and technical knowledge. Common issues like port forwarding problems, ISP restrictions, and performance optimization can be frustrating. That's why many server owners choose Physgun's Rust Server Hosting for:
β Instant setup - no technical knowledge needed
β Bulletproof DDoS protection included
β Automatic updates and backups
β Support & Troubleshooting
β Optimized hardware for best performance
β One-click mod installation
β No port forwarding headaches
Whether you choose to self-host or use a managed solution, this guide should help you understand the process and troubleshoot common issues. Happy hosting!
Quick Connect Guide
For Self-Hosted Servers:
Press F1 in Rust to open console
Type:
connect YOUR_PUBLIC_IP:28015
Replace YOUR_PUBLIC_IP with your actual IP
For Physgun Servers:
Find your server in the modded/community list
Click connect and play instantly!
Last updated: 2025 | Based on current Rust server requirements and community feedback