Short answer. You can host a Day of Infamy server yourself for free: install the dedicated server (Steam app 462310) with SteamCMD using an anonymous login, create
doi/cfg/server.cfgwith your server name, start it withsrcds_run -game doiand open port 27015 (TCP and UDP). PlayNHost's Day of Infamy server hosting is listed as Coming Soon at the time of writing.Players find your server by its name in the in-game server browser.
Checked on 5 November 2026 against the newest announcement on the game's Steam page, dated 24 December 2025, which removed BattlEye support from the game client and the Windows dedicated server.
This guide uses Valve's Source Dedicated Server documentation for the generic parts, the announcements on the game's own Steam page, and our own Day of Infamy install for the rest. For how it will work on PlayNHost, go to Option 2.
What you need
- The server software: the Day of Infamy dedicated server, Steam app 462310. It is free and downloads with an anonymous Steam login. You do not need to own the game to download it.
- A machine that stays on: a spare PC, a home server or a cloud virtual machine. This guide uses 64-bit Linux, which is what we run. A Windows dedicated server exists too (the game's December 2025 Steam notice names it), but we have not tested one.
- RAM and CPU: the Steam page lists requirements only for playing the game, not for a dedicated server, and we found no official server figures. Treat any server figure you read elsewhere as an estimate.
- A player cap: set with
-maxplayerson the start line. We cap our servers at 32. - Network: port 27015, TCP and UDP, reachable from the internet. Valve's documentation says it can be changed with
-port. - The game: every player needs Day of Infamy on Steam. The Steam page lists Windows, macOS and Linux.
Option 1: host it yourself
These steps are for Debian or Ubuntu. The download command, the file paths and the start line are the ones our Day of Infamy install uses.
Install the server
- Install the libraries SteamCMD needs.
sudo dpkg --add-architecture i386 sudo apt update sudo apt install lib32gcc-s1 curl tar -y - Create a user for the server and switch to it. Valve warns against running SteamCMD as root.
sudo useradd -m -s /bin/bash -U doi sudo su - doi - Install SteamCMD and let it update itself once.
mkdir -p ~/steamcmd ~/server cd ~/steamcmd curl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz tar -xzf steamcmd.tar.gz ./steamcmd.sh +quit - Download the server.
In our installs SteamCMD sometimes failed while still reporting success: on a clean install about two runs in seven, leaving an empty folder. Check that~/steamcmd/steamcmd.sh +force_install_dir /home/doi/server +login anonymous +app_update 462310 validate +quitsteamapps/appmanifest_462310.acfexists in the server folder, and run the command again if it does not. - Copy the Steam client libraries into the home folder of the user that runs the server, as our install does:
mkdir -p ~/.steam/sdk32 ~/.steam/sdk64 cp ~/steamcmd/linux32/steamclient.so ~/.steam/sdk32/ cp ~/steamcmd/linux64/steamclient.so ~/.steam/sdk64/ - Strip the Windows line endings from
srcds_run. In our installs it arrived with Windows (CRLF) line endings, so Linux looks for an interpreter named/bin/shfollowed by a carriage return. The file exists and is executable, yet the shell answers "No such file or directory". This fixes it:sed -i 's/\r$//' ~/server/srcds_run
Write the settings
- Create
server.cfgindoi/cfginside the server folder. A fresh install does not ship one: when we inspected a new install,doi/cfghad noserver.cfgat all. Valve's documentation says the name people see in the server browser is thehostnameline of this file:
Put a password between the quotes for a private server. Leave it empty for a public one.hostname "My Day of Infamy server" sv_password "" - Restart the server after you edit the file, so it starts with your changes.
Open the ports
- Game: allow port 27015 on the machine's firewall, TCP and UDP (for example
sudo ufw allow 27015), and forward it on your router. Valve's documentation lists 27015 TCP/UDP for game traffic, pings and RCON. - Another port: add
-portwith your number to the start line and open that one instead.
Start it and join
- Start the server from the server folder. This is the line our install uses, with port 27015, 16 players and the map
dog_red:
It is ready when the console prints./srcds_run -game doi -console -port 27015 -maxplayers 16 +map dog_red +ip 0.0.0.0 -strictportbind -norestartgameserver Steam ID. Run it under a service manager such as systemd so it starts again after a reboot or a crash. - Pick another starting map by changing
+map. The stock map names our install uses are bastogne, breville, brittany, comacchio, crete, dog_red, dunkirk, flakturm, foy, ortona, reichswald, rhineland, saint_lo, salerno, shooting_range and sicily. To switch map while the server runs, typechangeleveland the map name in its console. - Join it. In Day of Infamy, open the server browser and search for your server name exactly as written in
hostname. - Update by stopping the server and running the step 4 download command again. When the game updates, update the server too: the newest notice on the game's Steam page tells server owners to update the dedicated server through Steam.
Add Steam Workshop maps and mods
A Day of Infamy server can load Workshop content from a text file of Workshop IDs. This is how our install sets it up:
- Find the item ID. Open the item in the Day of Infamy Workshop. The ID is the number at the end of its address, after
?id=. - List the IDs in
doi/subscribed_file_ids.txt, one per line. A collection ID works too: the Screaming Steel announcements below told hosts they could list the mod's collection ID instead of its single items. - Add
-workshopto the start line. Our install adds it to turn Workshop support on../srcds_run -game doi -console -port 27015 -maxplayers 16 +map dog_red +ip 0.0.0.0 -strictportbind -norestart -workshop - Restart after a mod updates. Announcements on Day of Infamy's Steam page for the Screaming Steel mod told server owners to restart after the mod's update so the server appears for players in the server browser. Servers that listed the mod's collection ID (1455070029) needed only that restart. Servers that listed single items also had to add the new map's ID.
If you add Metamod:Source and SourceMod by hand, our install deletes doi/addons/metamod_x64.vdf afterwards. This server runs 32-bit, so the 64-bit loader only adds a confusing "dlopen" error to every boot log.
Option 2: host it on PlayNHost
Day of Infamy servers are not on sale on PlayNHost yet. At the time of writing, the Day of Infamy server hosting page shows Coming Soon and takes your email so you hear when it opens. The steps below are how our panel sets up a Day of Infamy server once it does. Renting removes the install, the libraries, the ports and the update routine. You still choose a name, a password and a map.
- Order a server on the Day of Infamy server hosting page once its plans are open.
- Wait for the install. The server appears in the panel. Its Console prints
gameserver Steam IDwhen it is ready. - Name it. On the Settings tab, set the Server name and, for a private server, the Join password. Then restart.
- Choose the starting map in the Starting map field on the same tab. To switch map without a restart, use the Change Map task on Quick Tasks. Announce to Players on the same page sends everyone a message.
- Add Workshop content. On the Workshop page, put your item or collection IDs in Workshop items, separated by commas. The server downloads them on its next start.
- Invite your players. They search the in-game server browser for the name you set.
What the panel does for you:
- Your port is assigned and open from the start, and it goes onto the start line for you, so there is nothing to forward.
- The name and password are written into
doi/cfg/server.cfgat every start, so you change them in the panel, not in the file. The install also creates that file with emptyhostnameandsv_passwordlines, because a fresh Day of Infamy install has none and the panel only edits an existingserver.cfg. Aserver.cfgyou already have is never overwritten. Any other line in that file you edit yourself on the Files tab. - The Workshop list is written into
doi/subscribed_file_ids.txtat every start, and-workshopis added to the start line only when the list is not empty. Edit the list in the panel, not the file. - The install download runs up to three times, so one failed SteamCMD run like the ones described above does not leave you with an empty server. The Windows line endings in
srcds_runare removed for you too. - With Auto Update on (the default, under Show advanced on the Settings tab), the server checks for a game update each time it starts, so a restart is an update.
- Turn on Install SourceMod to add Metamod:Source and SourceMod to
doi/addons, without the 64-bit loader that only causes errors. It is read while the server installs, so turning it on later takes a reinstall, not a restart. Back up your plugin configs before a later reinstall, since it can reset them. - The player cap comes from your plan.
Self-hosting or renting: an honest comparison
- Cost: the server software is free. Self-hosting costs power, hardware and bandwidth, or a cloud machine. Renting is a recurring fee set by the plan.
- Uptime: a home server is only up while your PC, power and internet are. A rented server runs on the host's hardware.
- Exposure: at home, players connect to your public IP address and you look after the firewall and router. A rented server keeps your home IP out of it.
- Setup: self-hosting needs the command line, port forwarding, the SteamCMD retry, the line-ending fix and a
server.cfgyou create yourself. Renting needs a name, a password and a map. - Control: self-hosting gives you every file. On our servers you change the name, password, map and Workshop list in the panel and still have the Files tab for
server.cfgand the rest.
Want a server without the setup? Leave your email on the Day of Infamy server hosting page to hear when it opens.



