Gaming Servers

Enshrouded

Install and configure an Enshrouded dedicated server on Linux with SteamCMD

Enshrouded is a co-op survival game supporting up to 16 players. This guide covers installing and running a dedicated server on Linux.


Requirements

  • RAM: 16GB minimum
  • CPU: 4 vCPU minimum
  • Disk: 20GB free space
  • OS: Linux x64
  • Network: UDP ports 15636 and 15637 open

Install SteamCMD

Install Dependencies

sudo apt update
sudo apt install steamcmd -y

# Or manually download
mkdir ~/steamcmd
cd ~/steamcmd
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar xzf steamcmd_linux.tar.gz

Initialize SteamCMD

steamcmd +quit

Download Enshrouded Server

# Download using SteamCMD
steamcmd \
  +login anonymous \
  +force_install_dir /opt/enshrouded-server \
  +app_update 2278520 validate \
  +quit

# Verify installation
ls -la /opt/enshrouded-server/

Server Configuration

Create Config File

Edit /opt/enshrouded-server/enshrouded_server.json:

{
  "serverName": "My Enshrouded Server",
  "serverDescription": "A great place to play!",
  "serverPassword": "mypassword123",
  "serverPasswordAdmin": "adminpassword456",
  "logFilePath": "logs",
  "ip": "0.0.0.0",
  "gamePort": 15636,
  "queryPort": 15637,
  "maxPlayers": 8,
  "autoSaveInterval": 180,
  "saveDirectory": "saves"
}

Configuration Options

{
  "serverName": "Server name visible in browser",
  "serverPassword": "Player join password (empty = public)",
  "serverPasswordAdmin": "Admin/Console password",
  "ip": "0.0.0.0 (listen on all interfaces)",
  "gamePort": 15636,
  "queryPort": 15637,
  "maxPlayers": 1-16,
  "autoSaveInterval": 180 (seconds),
  "saveDirectory": "Directory for world saves"
}

Start Server

Manual Start

cd /opt/enshrouded-server
./enshrouded_server

Output should show:

Enshrouded Dedicated Server v0.x.x
Listening on 0.0.0.0:15636
Query Port: 15637
Ready for players

Systemd Service

Create /etc/systemd/system/enshrouded.service:

[Unit]
Description=Enshrouded Dedicated Server
After=network.target

[Service]
Type=simple
User=steamcmd
WorkingDirectory=/opt/enshrouded-server
ExecStart=/opt/enshrouded-server/enshrouded_server
Restart=on-failure
RestartSec=10

# Resource limits
MemoryLimit=16G
TasksMax=2000

[Install]
WantedBy=multi-user.target

Enable and Start

sudo systemctl daemon-reload
sudo systemctl enable enshrouded
sudo systemctl start enshrouded

# Check status
sudo systemctl status enshrouded

# View logs
sudo journalctl -u enshrouded -f

Firewall Configuration

Open required UDP ports:

# UFW
sudo ufw allow 15636/udp
sudo ufw allow 15637/udp

# iptables
sudo iptables -A INPUT -p udp --dport 15636 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 15637 -j ACCEPT
sudo iptables-save > /etc/iptables/rules.v4

Connect Clients

Players can join using the server IP and password in the Enshrouded game client:

Server IP: your.server.ip
Port: 15636
Password: mypassword123

Server Updates

Update to Latest Version

# Stop server
sudo systemctl stop enshrouded

# Update
steamcmd \
  +login anonymous \
  +force_install_dir /opt/enshrouded-server \
  +app_update 2278520 validate \
  +quit

# Start
sudo systemctl start enshrouded

Backup Saves

Manual Backup

# Backup save directory
sudo cp -r /opt/enshrouded-server/saves /backup/enshrouded-$(date +%Y%m%d)

Automated Backup

Edit crontab:

sudo crontab -e

Add:

# Daily backup at 3 AM
0 3 * * * /usr/bin/rsync -av /opt/enshrouded-server/saves /backup/enshrouded-daily/

Monitoring

Check Server Status

# Process running?
ps aux | grep enshrouded_server

# Port listening?
sudo ss -tulnp | grep 15636

# Memory/CPU usage
top -p $(pgrep -f enshrouded_server)

Check Logs

sudo journalctl -u enshrouded -n 50 --no-pager

Troubleshooting

Server Won't Start

# Check logs
sudo journalctl -u enshrouded -f

# Verify config syntax
cat /opt/enshrouded-server/enshrouded_server.json | jq .

# Check permissions
sudo chown -R steamcmd:steamcmd /opt/enshrouded-server

Players Can't Connect

# Verify ports are open
sudo ss -tulnp | grep 15636

# Test from external host
nc -zu <your-ip> 15636

# Check firewall
sudo ufw status
sudo iptables -L | grep 15636

High Memory Usage

# Reduce auto-save interval in config
# Or reduce maxPlayers if server has <16GB RAM

Enshrouded supports up to 16 players in cooperative survival mode. Server requirements scale with player count.


Port Forwarding (if behind NAT)

If VPS is behind NAT, forward UDP 15636 and 15637 from external router to VPS IP.

Check if working:

# From external machine
nc -zu <your-external-ip> 15636

On this page