A Valheim dedicated server is the difference between a world that only exists while the host is online and a persistent Viking realm your group can drop into at 2 a.m. without waiting on anyone. With Iron Gate confirming that Valheim leaves early access on September 9, 2026, shipping the final Deep North biome alongside PlayStation 5 and Nintendo Switch 2 versions with full cross-play, the timing to stand up your own always-on server has never been better. This tutorial walks through a complete, production-ready build on Linux in 11 steps, takes about 30 minutes of hands-on time, and leaves you with a hardened, auto-restarting, auto-backing-up server you actually control.

We will use SteamCMD to install the official dedicated server tool (Steam app 896660), configure cross-play, open the correct UDP ports, wrap everything in a systemd service so it survives reboots and crashes, and finish with backups, security hardening, and an optional Docker deployment. Every command below has been written for Ubuntu 22.04 LTS or 24.04 LTS, but the same approach works on Debian 12 and most modern Linux distributions. If you have followed our Minecraft server setup walkthrough, the workflow will feel familiar, but Valheim has its own quirks around ports, passwords, and cross-play that trip up most first-timers.

Quick Reference: Valheim Dedicated Server Facts

Before the step-by-step, here is the load-bearing data you will reference constantly. Bookmark this table; it answers the questions that send most people back to forums mid-install. These figures are confirmed against the official Valheim dedicated server guide and the Steam application catalog.

ItemValueNotes
Dedicated server app (SteamCMD)896660Free, anonymous login, no Valheim license needed on the host
Valheim game app (clients)892970Each player still needs to own Valheim to connect
Default portsUDP 2456–2457Game uses your chosen port and the next one for the Steam query
Maximum players10Hard cap per world; not configurable
Linux binaryvalheim_server.x86_64Windows uses valheim_server.exe
Password rule5+ charactersMust not be contained in, or identical to, the server name
Cross-play flag-crossplayRoutes through a relay; no port forwarding required in this mode

Why Self-Host a Valheim Dedicated Server in 2026

Valheim gives you three ways to play together, and choosing the right one up front saves hours of frustration. A peer-hosted session is the zero-effort option built into the menu: one player hits “Start Server” and others join through Steam friends or a cross-play code. It works, but the world only exists while that specific player is online, progress lives on their machine, and their upload bandwidth becomes everyone’s lag. The moment your group’s schedules diverge, a peer-hosted world becomes a bottleneck.

A Valheim dedicated server decouples the world from any single player. It runs headless on a Linux box, a home server, a small-form-factor mini PC, or a cloud VPS, and it stays up 24/7 so anyone can log in whenever they like. You get a single authoritative save, consistent performance, server-side admin tools, world modifiers applied globally, and the ability to schedule backups and updates on your own terms. The trade-off is that you manage the machine. The third path, managed Valheim server hosting, hands that management to a provider for a monthly fee, which we cover near the end.

CapabilityPeer-hostedSelf-hosted dedicatedManaged hosting
Online when host is offlineNoYesYes
Up-front costFreeHardware/VPS only$5–$20+/month
Full control & modsLimitedCompleteProvider-dependent
Technical effortNoneModerateLow
Custom backups & cronNoYesSometimes
Cross-play with consolesYesYes (-crossplay)Yes

For a group of regulars who want a permanent home base, self-hosting wins on cost and control. A cheap VPS or a spare machine running this guide will comfortably handle the 10-player cap. And because Valheim’s 1.0 launch brings PS5 and Switch 2 players into the same cross-play pool, a dedicated server with cross-play enabled becomes the neutral meeting point for friends across PC and console, the same convergence we tracked when the Switch 2 outsold the PS5 in its first year.

Prerequisites and System Requirements

Valheim’s server is lightweight by modern standards, but it is sensitive to single-core CPU speed because the world simulation is largely single-threaded. More cores will not make a busy world smoother the way a higher clock speed will. Plan your hardware around that reality. The table below is the practical baseline this Valheim dedicated server setup is built against; treat the RAM and CPU figures as comfortable targets for a full 10-player world rather than absolute minimums.

ComponentRecommendedNotes
Operating systemUbuntu 22.04 / 24.04 LTSDebian 12 also works; 64-bit required
RAM4 GB (2 GB minimum)Large explored worlds and many active zones use more
CPU2+ GHz, 2 coresClock speed matters more than core count
Storage4 GB+ free SSDGame files are small; reserve room for save backups
NetworkUDP 2456–2457 openNot needed if you rely solely on cross-play relay
SteamCMDLatestSelf-updates on each run
AccessSSH + sudoRoot or a sudo-enabled user

You will also need a domain or static IP if friends connect by address rather than cross-play code, and a Valheim license on every client (the server host does not need to own the game). A VPS from any mainstream provider with 2–4 GB of RAM is plenty. If you are repurposing a handheld or small-form-factor PC, the same principles in our Steam Deck versus ROG Ally comparison apply: thermals and sustained clocks matter more than peak benchmarks for an always-on workload.

Step 1: Provision and Secure Your Linux Host

Start with a fully updated system and a dedicated, unprivileged user. Running a game server as root is a needless risk: if the process is ever compromised, you want the blast radius limited to a low-privilege account. Connect over SSH and run the following to patch the box and create a service account named valheim.

sudo apt update
sudo apt upgrade -y
sudo adduser --disabled-password --gecos "" valheim
sudo apt install -y curl wget tmux software-properties-common

The valheim user owns the server files and runs the game process. We will not give it a login password or sudo rights; administration happens from your own sudo account, and the service itself runs under valheim via systemd later. Installing tmux now gives you a fallback way to run the server interactively while you test, before the service takes over.

If this host is exposed to the internet, harden SSH before going further: disable password authentication in favor of keys, and consider changing the default SSH port. These are the same baseline measures we recommend in any server build, and they matter just as much for a game server as for a web app. A Valheim box that is trivially brute-forced over SSH is a liability regardless of how well the game itself is configured.

Step 2: Install SteamCMD and Its Dependencies

SteamCMD is Valve’s command-line client for downloading dedicated server tools. The Valheim server is a 32-bit-aware build, so you must enable the i386 architecture and install a couple of shared libraries the binary expects at runtime. Enable the multiverse repository (where the steamcmd package lives), add the i386 architecture, and install everything in one pass.

sudo add-apt-repository -y multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd libpulse0 libatomic1 libc6-i386

During installation you will be prompted to accept the Steam license agreement; use the Tab key to highlight “Ok” and confirm. The two libraries that catch people out are libpulse0 and libatomic1: the Valheim server links against PulseAudio and the atomic operations library even though it never plays sound on a headless box. Skip them and the server exits immediately with a cryptic missing-library error, which is the single most common reason a fresh install refuses to boot.

If the steamcmd package is unavailable on your distribution, you can download SteamCMD manually from Valve. The official SteamCMD documentation covers the manual tarball method, which drops a steamcmd.sh script you invoke the same way as the packaged binary. Either route gets you to the same place: a working SteamCMD you can point at app 896660.

Step 3: Download the Valheim Dedicated Server (App 896660)

Now switch into the valheim service account and pull down the server files. The dedicated server is published as Steam app 896660 and uses anonymous login, so you do not need to enter Steam credentials on the host. The validate flag verifies file integrity after download, which is worth the extra few seconds.

sudo -iu valheim
steamcmd +force_install_dir /home/valheim/server \
         +login anonymous \
         +app_update 896660 validate \
         +quit

SteamCMD will download a few hundred megabytes and print progress as it goes. A successful run ends with a line you should look for explicitly:

Success! App '896660' fully installed.

Watch out for one classic mistake here: the correct app ID is 896660, not 896666. A transposed digit is a frequent copy-paste error floating around older forum posts, and SteamCMD will fail with an “invalid app” message if you use the wrong number. App 896666 simply does not exist in Steam’s catalog. Once the install finishes, your server binary lives at /home/valheim/server/valheim_server.x86_64, alongside the stock start_server.sh template, which we replace with our own script next.

Step 4: Configure the Server Start Script

The server reads its configuration from command-line arguments, not a config file, so your launch script is your configuration. Do not edit the bundled start_server.sh directly, because Steam overwrites it on every update. Instead, create your own script. As the valheim user, make a new file at /home/valheim/server/start_valheim.sh with the following contents.

#!/bin/bash
cd /home/valheim/server

export templdpath=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH
export SteamAppId=892970

./valheim_server.x86_64 \
  -name "Shattered Vikings" \
  -port 2456 \
  -world "Midgard" \
  -password "ravenstone" \
  -crossplay \
  -public 1 \
  -savedir /home/valheim/saves

export LD_LIBRARY_PATH=$templdpath

Two non-obvious lines matter. SteamAppId=892970 tells the server binary to identify as the Valheim game app even though it was installed as app 896660; without it the server will not start. The LD_LIBRARY_PATH export points the binary at its bundled 64-bit Steam libraries. Both come straight from Valve’s stock script, so keep them. The arguments below the binary are where you customize your world.

ArgumentPurposeExample
-namePublic server name in the browser“Shattered Vikings”
-portBase UDP port (uses this and +1)2456
-worldWorld save file name“Midgard”
-passwordJoin password (5+ chars)“ravenstone”
-crossplayEnable PC/console cross-play relay(flag, no value)
-public1 = listed publicly, 0 = unlisted1
-savedirWhere worlds and lists are stored/home/valheim/saves

The password rule is the most common configuration failure in any Valheim dedicated server setup: it must be at least five characters and it must not be contained within the server name. “Shattered Vikings” with a password of “vikings” will refuse to start because the password is a substring of the name. Pick something unrelated, then make the script executable with chmod +x /home/valheim/server/start_valheim.sh.

Step 5: Open Firewall Ports and Networking

Valheim communicates over UDP, and it uses two consecutive ports: the one you set with -port (2456 by default) for game traffic and the next port up (2457) for the Steam server query that makes your server discoverable. You must open both. On a host running UFW, allow the range explicitly.

sudo ufw allow 2456:2457/udp
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status verbose

Note the protocol: these rules are UDP, not TCP. Opening 2456–2457 on TCP does nothing for Valheim and is a recurring source of “my friends can’t connect” reports. If your server sits behind a home router rather than on a public VPS, you also need to forward UDP 2456–2457 from the router to the server’s local IP. Set a static DHCP lease for the server first so the forward does not break when the lease renews. Many community guides suggest forwarding 2456–2458 as a safety margin; opening the extra port does no harm.

There is one elegant shortcut. If you launch with the -crossplay flag and your players connect through the cross-play join code, traffic is brokered through Microsoft’s PlayFab relay and no port forwarding is required at all. That makes cross-play the easiest option for players stuck behind restrictive NATs or carrier-grade NAT, at the cost of routing through a relay rather than a direct connection. Many admins open the ports and enable cross-play to give every player the best available path.

Step 6: Launch and Verify the Server

Before wiring up a service, run the server by hand to confirm it boots cleanly. Inside a tmux session (so it survives if your SSH drops) and as the valheim user, execute the script.

tmux new -s valheim
cd /home/valheim/server
./start_valheim.sh

The console fills with Unity and game-server log lines. A healthy boot looks roughly like the trimmed output below; the line you are waiting for is “Game server connected”, which means the server has registered and is joinable. World generation on first run takes a little longer because the map is being created from your seed.

Setting breakpad minidump AppID = 892970
Initialize engine version
Loading world: Midgard
Zonesystem Awake
Game server connected
Net scene destroyed, all RPCs released

If you see “Game server connected” with no fatal errors above it, the server is live. Detach from tmux with Ctrl-b then d, leaving it running. If instead the process exits instantly, scroll up for a missing-library message (revisit Step 2) or a password error (revisit Step 4). Resist the urge to make this tmux session permanent, though; it does not restart on reboot or crash, which is exactly the problem the next step solves.

Step 7: Run Valheim as a systemd Service

A real server should start on boot, restart automatically if it crashes, and shut down gracefully so the world saves before the process dies. systemd handles all three. First stop your manual instance (reattach with tmux attach -t valheim and press Ctrl-c), then, from your sudo account, create /etc/systemd/system/valheim.service with this unit.

[Unit]
Description=Valheim Dedicated Server
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=valheim
WorkingDirectory=/home/valheim/server
ExecStart=/home/valheim/server/start_valheim.sh
Restart=on-failure
RestartSec=10
KillSignal=SIGINT
TimeoutStopSec=120

[Install]
WantedBy=multi-user.target

The two lines that protect your world are KillSignal=SIGINT and TimeoutStopSec=120. Valheim saves the world when it receives an interrupt signal, so sending SIGINT (rather than the default SIGTERM-then-SIGKILL) and giving it up to two minutes to finish ensures the save completes before the process is forced down. Skipping this is how admins end up with rolled-back progress after a routine restart. Enable and start the service, then watch the logs.

sudo systemctl daemon-reload
sudo systemctl enable --now valheim
sudo systemctl status valheim
journalctl -u valheim -f

The journalctl -u valheim -f command tails the live log, so you will see the same “Game server connected” confirmation you saw in Step 6, now under service management. From here, sudo systemctl restart valheim safely cycles the server, and it will come back automatically after a reboot or an unexpected crash. This is the same operational pattern that keeps any long-running service healthy, and it is worth getting right once.

Step 8: Connect From the Game Client

With the server live, players join from the Valheim main menu. There are three connection paths, and which one you use depends on whether you enabled cross-play. For a Steam-only server, players choose “Start Game”, select a character, then on the server screen use “Join Game” and either browse the community list or add your server by IP and port under the “Join IP” option, entering your.server.ip:2456 and the password.

With -crossplay enabled, the server also publishes a numeric join code that appears in its log and in the server list. Players on any platform, PC, PS5, or Switch 2 after the 1.0 launch, can select “Join with code”, type the code, and connect through the relay without needing your IP at all. This is the simplest method for mixed groups and the only practical option for console players, who cannot enter raw IP addresses. The same Steam friends list invite flow also works once a friend has joined.

If a player can see the server but cannot connect, the cause is almost always a port or password mismatch rather than anything client-side. Confirm the password is exactly right (it is case-sensitive), confirm UDP 2456–2457 is genuinely reachable from outside your network, and have them try the cross-play join code as a fallback. PC Gamer’s multiplayer setup guide is a useful second reference if you want to compare connection flows.

Step 9: Customize the World With Modifiers and Presets

Valheim’s world modifiers let you tune difficulty, resource rates, raids, and portal rules at the server level, applied globally to everyone who joins. You set them on the command line in your start script, either as a single named preset or as granular per-key modifiers. Add a preset by appending -preset, or layer individual modifiers with repeated -modifier arguments.

# Option A: a named preset
-preset hard

# Option B: granular control (overrides combine)
-modifier combat veryhard \
-modifier deathpenalty casual \
-modifier resources more \
-modifier portals casual \
-modifier raids none

Presets are shorthand bundles: normal, casual, easy, hard, hardcore, immersive, and hammer. Individual modifiers give you finer control, which is what most established groups prefer, for example cranking combat difficulty while softening the death penalty so a wipe deep in a dungeon is not punishing. The accepted keys and values are summarized below.

Modifier keyAccepted valuesEffect
combatveryeasy, easy, hard, veryhardEnemy damage and aggression
deathpenaltycasual, veryeasy, easy, hard, hardcoreSkill loss and tombstone behavior on death
resourcesmuchless, less, more, muchmore, mostGathering and drop rates
raidsnone, muchless, less, more, muchmoreFrequency of base attack events
portalscasual, hard, veryhardWhether metals can travel through portals

After editing the start script with your chosen modifiers, restart the service with sudo systemctl restart valheim for the changes to take effect. Because these are server-side, no player needs to change anything on their end, and the rules stay consistent no matter who logs in first. This central control is one of the strongest arguments for a dedicated server over a peer-hosted world, where settings are tied to whoever happens to be hosting.

Step 10: Automate Backups and Updates

Valheim worlds can and do corrupt, usually after an unclean shutdown, so backups are not optional. The server has built-in rolling backups you should enable in your start script, and you should also keep independent copies off the box. First, add the backup arguments to your launch line.

-saveinterval 1800 \
-backups 4 \
-backupshort 7200 \
-backuplong 43200

That writes the world every 30 minutes (-saveinterval 1800), keeps four automatic backups, and spaces them at two-hour and twelve-hour intervals. The built-in system protects against in-place corruption, but it lives on the same disk as the live world, so add an off-disk copy with a simple cron job. Save this as /home/valheim/backup_valheim.sh and make it executable.

#!/bin/bash
STAMP=$(date +%Y%m%d-%H%M%S)
SRC=/home/valheim/saves/worlds_local
DEST=/home/valheim/backups
mkdir -p "$DEST"
tar czf "$DEST/valheim-$STAMP.tar.gz" -C "$SRC" .
find "$DEST" -name 'valheim-*.tar.gz' -mtime +7 -delete

Schedule it every six hours by adding a line to the valheim user’s crontab with crontab -e: 0 */6 * * * /home/valheim/backup_valheim.sh. The script archives the world’s .db and .fwl files and prunes copies older than a week. To update the server when Iron Gate ships a patch, stop the service, rerun the SteamCMD command from Step 3, and start the service again; clients must run the same game version, so coordinate updates with your group rather than auto-updating mid-session.

Step 11: Harden Your Server and Manage Admins

The final step is locking things down and setting up moderation. Valheim reads three plain-text lists from your save directory: adminlist.txt, permittedlist.txt, and bannedlist.txt. Each holds one SteamID64 (or PlayFab ID for cross-play users) per line. Admins gain access to in-game console commands for kicking, banning, and world management. Create or edit the admin list as the valheim user.

nano /home/valheim/saves/adminlist.txt

# one ID per line, for example:
76561198000000000

Restart the service after editing so the lists reload. On the host side, defense in depth matters as much for a game server as for anything else you expose to the internet. Install Fail2ban to throttle SSH brute-force attempts, keep the box patched, and never run the game as root, which we already avoided in Step 1.

sudo apt install -y fail2ban
sudo systemctl enable --now fail2ban
sudo systemctl status fail2ban

Because the dedicated server uses anonymous Steam login, there are no Steam credentials stored on the host to steal, which is one less thing to worry about. The real attack surface is SSH and the open UDP ports, so a key-only SSH policy plus Fail2ban covers the realistic threats. With moderation lists in place and the host hardened, your Valheim dedicated server is complete: persistent, auto-restarting, backed up, and secured.

Advanced: Deploy Valheim in Docker

If you would rather not manage SteamCMD, libraries, and systemd by hand, a containerized deployment collapses the entire build into one declarative file. The community-maintained lloesche/valheim-server image bundles SteamCMD, the server, automatic updates, and backups, and is the most widely used Docker option for Valheim. It is not an official Iron Gate product, so treat it as a third-party convenience, but it is battle-tested. Create a docker-compose.yml like this.

services:
  valheim:
    image: lloesche/valheim-server
    container_name: valheim
    restart: unless-stopped
    cap_add:
      - SYS_NICE
    ports:
      - "2456-2457:2456-2457/udp"
    environment:
      SERVER_NAME: "Shattered Vikings"
      WORLD_NAME: "Midgard"
      SERVER_PASS: "ravenstone"
      SERVER_PUBLIC: "true"
      SERVER_ARGS: "-crossplay"
    volumes:
      - ./config:/config
      - ./data:/opt/valheim

Bring it up with docker compose up -d and follow the logs with docker compose logs -f. The container exposes the same UDP 2456–2457 ports, applies the same password rules, and accepts the same modifier arguments through SERVER_ARGS. Persisting ./config and ./data on the host means your world survives container recreation and image updates. Docker is also the cleanest way to run several Valheim worlds on one machine: give each its own compose project, port range, and volume set. If you maintain other containers, this slots neatly into an existing self-hosted stack.

Common Pitfalls to Avoid

Most failed Valheim server builds trace back to a short list of repeat offenders. Knowing them in advance saves an evening of forum-trawling.

  • Wrong app ID. The dedicated server is 896660. The often-cited 896666 is a typo that does not exist and will fail in SteamCMD.
  • Password inside the server name. A password that is a substring of the -name value (or shorter than five characters) stops the server from starting, with an error that does not clearly explain why.
  • TCP instead of UDP. Valheim is UDP-only on 2456–2457. Opening those ports on TCP accomplishes nothing and is the top reason friends cannot connect.
  • Missing libraries. Forgetting libpulse0 and libatomic1 makes the binary exit instantly with a shared-object error.
  • Editing the stock start script. Steam overwrites start_server.sh on every update, wiping your settings. Always use a separate script.
  • Hard kills that skip the save. Stopping the process with SIGKILL or pulling the plug loses unsaved progress. Use the SIGINT-based systemd shutdown from Step 7.

A useful habit: after any change, restart the service and immediately check journalctl -u valheim -f for the “Game server connected” line before assuming success. Most of these pitfalls announce themselves in the first ten lines of the log if you are watching for them.

Troubleshooting: 9 Common Problems and Fixes

When something breaks, work the log first. The table below maps the symptoms you will actually see to their real causes and fixes.

SymptomLikely causeFix
Server exits immediately on launchMissing libpulse0/libatomic1Reinstall the libraries from Step 2
“Invalid app” in SteamCMDWrong app ID (896666)Use 896660 exactly
Server starts then quitsPassword too short or in server nameUse a 5+ char password unrelated to the name
Server not visible in list-public 0 or query port blockedSet -public 1; open UDP 2457
Friends see server but cannot joinUDP 2456 not forwarded/allowedOpen UDP on firewall and router; try cross-play code
Console players cannot connectCross-play disabledAdd -crossplay and share the join code
Progress rolled back after restartWorld not saved before shutdownUse KillSignal=SIGINT and a long TimeoutStopSec
“Incompatible version” on joinClient/server version mismatchUpdate both to the same Valheim build
Lag with a full lobbyCPU single-core bottleneckMove to a higher-clock host; reduce explored area

If a problem is not in this table, capture the exact log lines around the failure with journalctl -u valheim --no-pager | tail -50 and search for that specific error text. Valheim’s server log is verbose but honest; the real cause is almost always written plainly a line or two above the crash. The official Valheim Steam news hub is also the authoritative place to confirm whether a recent patch changed behavior.

Advanced Tips: Mods, Performance, and Multiple Worlds

Once the basics are stable, a few enhancements separate a casual setup from a polished one. For mods, the standard stack is the BepInEx framework plus whatever plugins your group wants; config-overhaul mods that expose dozens of tunable settings are popular for tweaking carry weight, stack sizes, and map behavior. The critical caveat: modded servers require every client to run the same mods at matching versions, and mods frequently break for a few days after a Valheim patch until authors update them. Always keep a clean, unmodded backup of your world before introducing mods, and pin your mod versions rather than blindly updating.

On performance, remember the single-thread reality: if a full lobby stutters, a CPU with a higher clock speed will help far more than adding cores or RAM. Keeping the explored map reasonable also helps, because Valheim simulates active zones around players. For groups running several communities, the cleanest pattern is one systemd service or Docker project per world, each on its own port range (2456–2457, 2458–2459, and so on) with its own save directory. That isolation means a crash or update on one world never touches the others, and you can grant different admins to each.

Finally, monitor proactively. A lightweight uptime check that pings the query port, plus a daily glance at journalctl, catches problems before your players do. The same observability mindset that keeps production systems healthy applies to a game server you care about, and it is the habit that turns a working install into a reliable one.

Self-Hosting vs. Managed Valheim Server Hosting

Self-hosting is the right call when you want full control, the lowest running cost, and the freedom to mod and script freely, and when you are comfortable managing a Linux box. It is the approach this entire guide is built around, and the skills transfer directly to any other dedicated game server you might run, including the one in our Minecraft server setup guide.

Managed Valheim server hosting makes sense when you would rather pay a small monthly fee than maintain anything. Providers give you a web control panel, one-click mod installs, automatic updates, and support, typically in the $5–$20 per month range depending on slots and performance. You trade some control and the ability to script the box for convenience. A reasonable middle path many groups take is to prototype on a cheap self-hosted VPS using this guide, then migrate to managed hosting only if the maintenance becomes a chore. Either way, the configuration knowledge here, ports, passwords, modifiers, and cross-play, carries over, because managed panels are just friendly front-ends over the same server you just built by hand.

Frequently Asked Questions

Do I need to own Valheim to run a dedicated server?

No. The dedicated server is Steam app 896660 and installs with anonymous login, so the host machine needs no Valheim license and no Steam account. Every player who connects, however, must own Valheim (app 892970) on their platform.

How many players can join a Valheim dedicated server?

The hard cap is 10 simultaneous players per world, and it is not configurable through official settings. If you need more, you run multiple worlds, each as its own server instance on a separate port range.

Which ports does Valheim use?

UDP 2456 for game traffic and UDP 2457 for the Steam query, by default. If you change the base port with -port, the server still uses that port plus the next one up. Cross-play connections through the relay need no open ports at all.

Will my server support PS5 and Switch 2 cross-play?

Yes, once Valheim 1.0 launches on September 9, 2026 with console versions. Launch the server with the -crossplay flag and share the numeric join code, and players on PC, PS5, and Nintendo Switch 2 can all connect to the same world.

Why does my server start and then immediately stop?

The two usual culprits are a password problem (too short, or contained in the server name) and missing system libraries (libpulse0, libatomic1). Check the last few log lines with journalctl -u valheim; the error is almost always stated explicitly.

How much RAM and CPU do I need?

Plan for around 4 GB of RAM (2 GB is a workable minimum for small groups) and a CPU with a decent single-core clock speed. Because the simulation is largely single-threaded, clock speed matters more than core count for keeping a busy world smooth.

How do I back up my Valheim world?

Enable the built-in rolling backups with the -backups and -saveinterval arguments, then add an independent off-disk copy via a cron job that archives the .db and .fwl files from your save directory, as shown in Step 10. Keep at least a week of history.

Can I run the server on Windows instead of Linux?

Yes. Windows uses valheim_server.exe and a start_headless_server.bat script with the same arguments. This guide focuses on Linux because it is cheaper to run 24/7 and pairs naturally with systemd and Docker, but the configuration concepts are identical.

Is self-hosting cheaper than managed hosting?

Usually, yes, especially if you already have a spare machine or a low-cost VPS. Managed Valheim server hosting typically runs $5–$20 per month for the convenience of a control panel and support. Self-hosting trades that fee for about 30 minutes of setup and occasional maintenance.

Last updated June 29, 2026. Server details verified against the official Valheim dedicated server guide and the Steam application catalog; Valheim 1.0, Deep North, and console release information confirmed via the official Valheim Steam news hub.