Guides

Enshrouded dedicated server: Windows VPS setup, enshrouded_server.json and port 15637

Host an Enshrouded dedicated server on a Windows VPS: SteamCMD app 2278520, UDP port 15637, enshrouded_server.json user groups, autostart and backups.

Published ~10 min read

The official Enshrouded dedicated server runs on Windows only: Keen Games’ installation article says Linux support is planned for later, and Steam lists app 2278520 as a Windows-only tool. The dependable way to host one is therefore a Windows VPS: install SteamCMD, download the server, open UDP port 15637, set the name and passwords in enshrouded_server.json and start enshrouded_server.exe. Running the Windows build on Linux through Wine or Proton works for some people, but it is unofficial, and this guide marks it as such.

ItemValue
SteamCMD app ID2278520 (Windows only)
PortUDP 15637, the queryPort setting
Config fileenshrouded_server.json beside the exe, created on first start
Saves and logs./savegame and ./logs by default
Players1–16, set by slotCount
Server RAM (Keen)About 4.4 GB idle, up to 100 MB more per player, under 6 GB in total
Disk (Keen)Server files about 13 GB; 30 GB free recommended

Windows VPS or Linux with Wine?

Windows VPSLinux + Wine / Proton
SupportThe platform Keen ships and documentsUnofficial; Keen does not support it
After a game updateUpdate with SteamCMD and restartCan break until the community setup catches up
OverheadWindows itself needs RAM and diskLighter OS, plus a compatibility layer
LicenceWindows licence neededNone
When something failsKeen's FAQ and logs applyYou debug the wrapper as well as the game

For a group that just wants to play, pick Windows. Linux makes sense if you already run Linux servers, accept the risk, and want to skip the Windows licence. The Linux section at the end covers what that involves.

How much RAM and CPU does an Enshrouded server need?

Keen gives two sets of numbers. Its server FAQ measures the process itself at about 4.4 GB idle, plus up to 100 MB per player, staying under 6 GB. Its recommended machine for 4–6 players has 6 cores with 12 threads and 16 GB of RAM; for 16 players, 8 cores with 16 threads and 16 GB. It also suggests 30 GB of free SSD space and about 2 Mbit/s of upload per player.

On a Windows VPS, add what Windows needs on top. Windows Server and its updates fill a small disk quickly, and the server files take about 13 GB before any update, so plan on 80 GB of disk or more. For memory, 12 GB runs a small group with room for Windows; 16 GB matches Keen’s recommendation.

How do I install the Enshrouded server on Windows Server?

These steps run in PowerShell as Administrator on Windows Server 2022 or 2019.

  1. 1Connect as Administrator

    Log in over Remote Desktop. If RDP does not answer, your provider’s VNC console still shows the screen. Before you open game ports, lock down RDP itself with the Windows RDP hardening guide.

  2. 2Install SteamCMD
    PowerShell (Administrator)
    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
    $ProgressPreference = 'SilentlyContinue'    # much faster downloads in Windows PowerShell
    New-Item -ItemType Directory -Force -Path C:\steamcmd | Out-Null
    Invoke-WebRequest -Uri https://steamcdn-a.akamaihd.net/client/installer/steamcmd.zip -OutFile C:\steamcmd\steamcmd.zip
    Expand-Archive -Path C:\steamcmd\steamcmd.zip -DestinationPath C:\steamcmd -Force
  3. 3Download the server

    The install directory goes before the login, as Valve recommends. The first run also updates SteamCMD, so give it a few minutes:

    PowerShell (Administrator)
    C:\steamcmd\steamcmd.exe +force_install_dir C:\enshrouded +login anonymous +app_update 2278520 validate +quit
  4. 4Install the Visual C++ runtime if it is missing

    If the server refuses to start and names a missing VCRUNTIME140.dll or MSVCP140.dll, install Microsoft’s current x64 redistributable:

    PowerShell (Administrator)
    Invoke-WebRequest -Uri https://aka.ms/vc14/vc_redist.x64.exe -OutFile $env:TEMP\vc_redist.x64.exe
    Start-Process -FilePath $env:TEMP\vc_redist.x64.exe -ArgumentList '/install','/quiet','/norestart' -Wait
  5. 5Start it once
    PowerShell (Administrator)
    Start-Process -FilePath C:\enshrouded\enshrouded_server.exe -WorkingDirectory C:\enshrouded

    A console window opens. When it prints [Session] 'HostOnline' (up)!, the server is ready and enshrouded_server.json exists. Stop it with Ctrl+C in that window before you edit the config.

How do I configure enshrouded_server.json?

Open C:\enshrouded\enshrouded_server.json in Notepad and edit the generated file rather than replacing it, since newer versions add keys. These are the parts to change:

enshrouded_server.json (excerpt)
{
  "name": "Embervale Friends",
  "password": "",
  "saveDirectory": "./savegame",
  "logDirectory": "./logs",
  "ip": "0.0.0.0",
  "queryPort": 15637,
  "slotCount": 8,
  "gameSettingsPreset": "Default",
  "userGroups": [
    { "name": "Admin",  "password": "long-random-admin-password",
      "canKickBan": true,  "canAccessInventories": true,  "canEditBase": true,  "canExtendBase": true,  "reservedSlots": 1 },
    { "name": "Friend", "password": "long-random-friend-password",
      "canKickBan": false, "canAccessInventories": true,  "canEditBase": true,  "canExtendBase": true,  "reservedSlots": 0 },
    { "name": "Guest",  "password": "long-random-guest-password",
      "canKickBan": false, "canAccessInventories": false, "canEditBase": false, "canExtendBase": false, "reservedSlots": 0 }
  ]
}
  • Passwords live in userGroups. The password a player types decides their group and rights. Fresh files come with randomized group passwords; set your own or read them from the file. The top-level password is the old format: if it is set, the server creates a group called default with Friend-level rights from it, so leave it empty.
  • slotCount takes 1 to 16. Keen notes that every slot adds load, so set your real group size. reservedSlots keeps places free for a group.
  • gameSettingsPreset takes Default, Relaxed, Hard, Survival or Custom; Custom unlocks individual gameplay settings.

One misplaced comma stops the server from reading the file, so check it before starting:

PowerShell · validate the JSON
Get-Content C:\enshrouded\enshrouded_server.json -Raw | ConvertFrom-Json | Out-Null
# no output means the file is valid JSON; an error names the problem

Which port does an Enshrouded server need?

One: UDP 15637, the queryPort. Guides that also list 15636 describe an older config format; the current file has only queryPort. Windows Firewall blocks it until you add a rule:

PowerShell (Administrator)
New-NetFirewallRule -DisplayName 'Enshrouded (UDP 15637)' -Direction Inbound -Protocol UDP -LocalPort 15637 -Action Allow

# with the server running: which UDP ports does it actually hold?
Get-NetUDPEndpoint -OwningProcess (Get-Process enshrouded_server).Id | Select-Object LocalAddress, LocalPort

If the server holds other UDP ports and players still cannot find it, allow the program instead of a single port: -Program C:\enshrouded\enshrouded_server.exe -Protocol UDP in place of -LocalPort. The Windows Firewall port guide covers rules and checks in detail. Players find the server under Join after ticking “Show dedicated servers” in the server filter; in Steam they can also add it under View, Game Servers, Favorites with IP:15637.

How do I keep it running after a reboot?

A scheduled task starts the server at boot without anyone logged in. It runs as SYSTEM, which has full rights on the machine; that is acceptable on a VPS that only hosts the game and keeps RDP locked down.

PowerShell (Administrator)
$action    = New-ScheduledTaskAction -Execute 'C:\enshrouded\enshrouded_server.exe' -WorkingDirectory 'C:\enshrouded'
$trigger   = New-ScheduledTaskTrigger -AtStartup
$principal = New-ScheduledTaskPrincipal -UserId 'SYSTEM' -LogonType ServiceAccount
# no time limit: by default Task Scheduler stops a task after three days
$settings  = New-ScheduledTaskSettingsSet -ExecutionTimeLimit ([TimeSpan]::Zero)
Register-ScheduledTask -TaskName 'Enshrouded Server' -Action $action -Trigger $trigger -Principal $principal -Settings $settings
Start-ScheduledTask -TaskName 'Enshrouded Server'

# follow the newest log file
Get-ChildItem C:\enshrouded\logs -File | Sort-Object LastWriteTime | Select-Object -Last 1 | Get-Content -Tail 20 -Wait

How do I update the server?

PowerShell (Administrator)
Stop-ScheduledTask -TaskName 'Enshrouded Server'
Copy-Item C:\enshrouded\enshrouded_server.json C:\enshrouded\enshrouded_server.json.bak
C:\steamcmd\steamcmd.exe +force_install_dir C:\enshrouded +login anonymous +app_update 2278520 validate +quit
Start-ScheduledTask -TaskName 'Enshrouded Server'

Not every patch needs a server update: Keen’s changelogs say when a hotfix is client-only. When players report a version mismatch, run the update.

How do I back up and roll back an Enshrouded world?

On top of those 5-minute saves, the server keeps 10 numbered rolling copies of each world in savegame, and Keen’s save-game article says a new copy replaces the oldest every 10 minutes and on shutdown. Each world also has an -index file whose latest value, 0 to 9, picks the active copy, so a rollback means stopping the server, copying every save file somewhere safe and then changing that number. For copies that survive a broken disk, add a daily archive:

PowerShell (Administrator)
New-Item -ItemType Directory -Force -Path C:\scripts | Out-Null
@'
$root  = 'C:\enshrouded-backups'
$stamp = Get-Date -Format 'yyyy-MM-dd_HHmm'
New-Item -ItemType Directory -Force -Path $root | Out-Null
Copy-Item -Path 'C:\enshrouded\savegame' -Destination "$root\$stamp" -Recurse
Compress-Archive -Path "$root\$stamp\*" -DestinationPath "$root\$stamp.zip"
Remove-Item "$root\$stamp" -Recurse -Force
# keep the newest 14 archives
Get-ChildItem "$root\*.zip" | Sort-Object LastWriteTime -Descending | Select-Object -Skip 14 | Remove-Item
'@ | Set-Content -Path C:\scripts\enshrouded-backup.ps1

$a = New-ScheduledTaskAction -Execute 'powershell.exe' -Argument '-NoProfile -ExecutionPolicy Bypass -File C:\scripts\enshrouded-backup.ps1'
$t = New-ScheduledTaskTrigger -Daily -At 5am
$p = New-ScheduledTaskPrincipal -UserId 'SYSTEM' -LogonType ServiceAccount
Register-ScheduledTask -TaskName 'Enshrouded Backup' -Action $a -Trigger $t -Principal $p

Copy the zip files off the server now and then. Before a large game update, a backup of the whole VPS from your provider’s panel is the fastest way back; at VMHeaven that is the Backups tab of the server.

Can I run an Enshrouded server on Linux?

Not officially. What community setups do is download the Windows build with SteamCMD’s platform override and run enshrouded_server.exe under Wine or GE-Proton, usually packaged as a container image:

Debian · Ubuntu · unofficial route
# SteamCMD on Linux, fetching the Windows build
steamcmd.sh +@sSteamCmdForcePlatformType windows +force_install_dir /opt/enshrouded/server \
  +login anonymous +app_update 2278520 validate +quit
# then run enshrouded_server.exe under Wine or GE-Proton - not supported by Keen Games
  • A game update can break the setup until its maintainer catches up.
  • Keen’s support covers the Windows server only.
  • Read a community image’s Dockerfile before you run it: it pulls Proton builds and other code from third parties onto your server.

Running Linux game servers already? Compare with our Valheim server guide, which has a native Linux build.

What usually goes wrong?

SymptomCauseFix
Server not in the listFirewall, or the dedicated-server filter is offAdd the UDP rule; tick Show dedicated servers; add IP:15637 as a Steam favourite
Server stops after exactly three daysTask Scheduler's default time limitRe-register the task with -ExecutionTimeLimit ([TimeSpan]::Zero)
Exits at start with a DLL errorVisual C++ runtime missingInstall vc_redist.x64.exe (step 4)
Friends join without build rightsThey used the Guest passwordGive them the Friend password, or edit that group's rights
Windows shuts down at intervalsThe Windows evaluation licence has run outActivate your own licence key
Version mismatch after a patchServer not updatedRun the update block above

Which VPS plan fits an Enshrouded server?

Windows Server 2022 or 2019 can be chosen on every VMHeaven KVM line; our Windows VPS page explains the setup. Matched against Keen’s numbers:

GroupKeen recommendsPlanNotes
2–4 players—STANDARD KVM 3: 6 vCores, 12 GB, 60 GBBelow Keen's 16 GB, above the measured server use; add disk
4–6 players6 cores / 12 threads, 16 GBSTANDARD KVM 4: 8 vCores, 16 GB, 80 GBMatches Keen's RAM and disk figures
Up to 16 players8 cores / 16 threads, 16 GBSTANDARD KVM 5: 12 vCores, 24 GB, 120 GBHeadroom for Windows on top of Keen's 16 GB

Enshrouded wants many cores and 16 GB, which is why Standard KVM (Intel, DDR4 ECC, the most vCores per euro) carries every row. Hi-CPU KVM (AMD EPYC, ECC memory) puts fewer vCores and less RAM on each price step; it suits servers bound to one or two threads better, and HI-CPU 6 is its first plan with 16 GB. vCores on both lines are shared, not reserved, so they are not the same as Keen’s dedicated cores: watch Task Manager with your group online before you add players. To size Enshrouded against eight other games on both lines, see gaming VPS.

If the disk runs short, extra storage comes in 15 GB blocks from the panel; extend C: in Disk Management afterwards. Windows comes on a time-limited evaluation licence, so activate your own key before it ends; the evaluation licence guide shows how to check the date. Every plan sits behind always-on DDoS filtering, in Amsterdam or Frankfurt depending on stock, and you can pay by card, PayPal or crypto (Bitcoin, Ethereum, USDT, Litecoin, Monero and more).

Frequently asked

Does the Enshrouded dedicated server run on Linux?

Not officially. Keen Games ships the dedicated server for Windows only and says Linux support is planned. Community setups run the Windows build under Wine or Proton, but Keen does not support them and they can break after a game update.

What port does an Enshrouded dedicated server use?

UDP 15637, set as queryPort in enshrouded_server.json. Older guides that also list 15636 describe an earlier config format. Open the port in Windows Firewall, or allow the server executable for UDP.

How much RAM does an Enshrouded dedicated server need?

Keen measures the server process at about 4.4 GB idle plus up to 100 MB per player, under 6 GB in total, and recommends a 16 GB machine for groups. On a Windows VPS, 12 GB works for a small group, and 16 GB matches Keen's recommendation with room for Windows.

Related articles

All guides