How to Set Up a DayZ Dedicated Server on a VPS
Host your own DayZ dedicated server on a Linux VPS with SteamCMD, configure serverDZ.cfg, add mods, open the ports, and run it under systemd.

A self-hosted DayZ server lets you set the loot, the rules, and the mod list — a hardcore vanilla wasteland or a heavily modded RP world. DayZ servers are resource-hungry, so this guide covers both the setup and the hardware you'll want.
Requirements
- A VPS: Ubuntu 22.04, at least 4 vCPU and 8 GB RAM for a 40–60 player modded server. Vanilla and smaller player counts can run on less, but DayZ is memory-hungry.
- SteamCMD: the DayZ dedicated server (Linux) is App ID 223350, installed anonymously.
- Ports: UDP 2302 (game), UDP 27016 (query), plus 2303–2305 for extra Steam query.
Step 1: User and dependencies
sudo adduser --disabled-password --gecos "" dayz
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 steamcmd
Step 2: Install DayZ with SteamCMD
sudo su - dayz
steamcmd +force_install_dir /home/dayz/server +login anonymous +app_update 223350 validate +quit
This is a large download. Give it time and make sure your disk has room.

Step 3: Open the firewall
sudo ufw allow 2302:2306/udp
sudo ufw allow 27016/udp
sudo ufw reload
Open the same ranges in your provider's network firewall.
Step 4: Configure serverDZ.cfg
Edit /home/dayz/server/serverDZ.cfg:
hostname = "My Nxeon DayZ Server";
password = "";
passwordAdmin = "change-this-strong-password";
maxPlayers = 60;
verifySignatures = 2;
forceSameBuild = 1;
disableVoN = 0;
persistentStorage = 1;
timeStampFormat = "Short";
verifySignatures = 2 protects against tampered files; keep it on for vanilla servers.
Step 5: Start the server
cd /home/dayz/server
./DayZServer \
-config=serverDZ.cfg \
-port=2302 \
-BEpath=battleye \
-profiles=profiles \
-dologs -adminlog -netlog
BattlEye anti-cheat runs from the battleye folder; -profiles sets where logs and bans are stored.
Step 6: Keep it online with systemd
Create /etc/systemd/system/dayz.service:
[Unit]
Description=DayZ Dedicated Server
After=network.target
[Service]
Type=simple
User=dayz
WorkingDirectory=/home/dayz/server
ExecStart=/home/dayz/server/DayZServer -config=serverDZ.cfg -port=2302 -BEpath=battleye -profiles=profiles -dologs -adminlog -netlog
Restart=on-failure
RestartSec=15
[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable --now dayz
sudo journalctl -u dayz -f
DayZ servers benefit from a scheduled restart every few hours to clear memory — use the pattern in automate game server restarts with systemd and cron.
Adding mods
Download Workshop mods with SteamCMD into a steamapps/workshop path, then symlink each mod folder into the server directory and add it to the launch line:
./DayZServer -config=serverDZ.cfg -port=2302 \
"-mod=@CF;@Community-Online-Tools;@BuilderItems" \
-BEpath=battleye -profiles=profiles
Players must subscribe to the exact same mods (and load order) to join. Keep a keys folder populated with each mod's bikey so verifySignatures accepts them.
Hardware
DayZ is genuinely demanding — persistence, AI, and a large open map all cost RAM and CPU. Plan for 8 GB and NVMe storage on a busy server. See Game Server Specs Explained: CPU, RAM and Bandwidth to size it, and if you also run a lighter shooter like our Left 4 Dead 2 server, you'll see how much heavier survival games are.
Tuning loot, time, and persistence
DayZ's economy is highly configurable. Beyond serverDZ.cfg, the mpmissions folder holds the loot economy and spawn settings. Common early tweaks:
- serverTimeAcceleration in
serverDZ.cfgspeeds up the day/night cycle. - types.xml controls how much of each item spawns and how long it lasts.
- cfggameplay.json adjusts stamina, building, and player settings.
Back up mpmissions before editing — a malformed XML file stops loot from spawning entirely.
Keeping mods in sync
Modded servers live or die by matching mod lists. Re-run the SteamCMD workshop downloads to update, re-link the @mod folders, and keep each mod's bikey in the keys directory. When you update a mod, restart the server and tell players to update their subscriptions.
Troubleshooting
- Players stuck on loading: mod list or order mismatch, or a missing bikey with
verifySignatures = 2. - No loot spawning: a syntax error in a
types.xmlor economy file — validate your XML. - Server crashes after hours: memory pressure; schedule restarts every 3–4 hours and add swap (Linux swap and OOM tuning).
FAQ
What App ID is the DayZ dedicated server?
On Linux it's App ID 223350, installed anonymously via SteamCMD with +app_update 223350 validate.
Why won't modded players connect?
Mod list and load order must match exactly between server and client, and each mod's bikey must be in the server's keys folder for verifySignatures to accept it.
How much RAM does a DayZ server need?
Budget 8 GB for a full modded server; vanilla or low player counts can run on 4 GB. Persistence and AI drive the memory use.
Should I restart the server regularly?
Yes. Scheduled restarts (often every 3–4 hours) clear memory and help persistence stay healthy. Automate them with systemd and cron.
DayZ needs real hardware — Nxeon's NVMe game server VPS plans deliver the RAM, CPU, and disk speed a survival server demands, with free migration help if you're switching hosts.