7 Days to Die is a survival horror game combining first-person shooter, base building, crafting, and role-playing elements in a post-apocalyptic zombie-infested world. Players must survive by scavenging, building bases, and defending against zombie hordes that grow stronger every seven days.
26900 (UDP)8080-8090 (TCP, configurable)8081 (TCP, optional)Important: 7 Days to Die automatically uses three consecutive UDP ports starting from your configured game port. If you set port 26900, the server will also use 26901 and 26902. Always open a range of at least 3 consecutive ports.
sudo ufw allow 26900:26902/udp comment '7DTD game ports'
sudo ufw allow 8080/tcp comment '7DTD web panel'
sudo ufw allow 8081/tcp comment '7DTD telnet'
sudo ufw reload
sudo firewall-cmd --permanent --add-port=26900-26902/udp
sudo firewall-cmd --permanent --add-port=8080/tcp
sudo firewall-cmd --permanent --add-port=8081/tcp
sudo firewall-cmd --reload
# Run in PowerShell as Administrator
New-NetFirewallRule -DisplayName "7 Days to Die Game" -Direction Inbound -Protocol UDP -LocalPort 26900-26902 -Action Allow
New-NetFirewallRule -DisplayName "7 Days to Die Web Panel" -Direction Inbound -Protocol TCP -LocalPort 8080,8081 -Action Allow
sudo iptables -A INPUT -p udp --dport 26900:26902 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 8081 -j ACCEPT
sudo service iptables save
# Install SteamCMD
sudo apt update
sudo apt install steamcmd
# Create server directory
mkdir -p ~/7dtd-server
cd ~/7dtd-server
# Download server files
steamcmd +login anonymous +force_install_dir ~/7dtd-server +app_update 294420 validate +exit
1. Open Steam and go to Library
2. Enable "Tools" in the dropdown menu
3. Find "7 Days to Die Dedicated Server"
4. Install to your preferred directory
5. Navigate to installation folder (typically: C:\Program Files (x86)\Steam\steamapps\common\7 Days to Die Dedicated Server\)
The main configuration file is serverconfig.xml located in the server root directory. Key settings:
<?xml version="1.0"?>
<ServerSettings>
<!-- Server Settings -->
<property name="ServerName" value="My 7DTD Server"/>
<property name="ServerDescription" value="Survival Server"/>
<property name="ServerWebsiteURL" value=""/>
<property name="ServerPassword" value=""/>
<property name="ServerLoginConfirmationText" value=""/>
<!-- Networking -->
<property name="ServerPort" value="26900"/>
<property name="ServerVisibility" value="2"/> <!-- 0=Not Listed, 1=Friends, 2=Public -->
<property name="ServerDisabledNetworkProtocols" value="SteamNetworking"/>
<!-- Slots -->
<property name="ServerMaxPlayerCount" value="8"/>
<property name="ServerReservedSlots" value="0"/>
<property name="ServerReservedSlotsPermission" value="100"/>
<!-- Admin -->
<property name="ServerAdminSlots" value="0"/>
<property name="ServerAdminSlotsPermission" value="0"/>
<!-- Web Dashboard -->
<property name="ControlPanelEnabled" value="true"/>
<property name="ControlPanelPort" value="8080"/>
<property name="ControlPanelPassword" value="CHANGEME"/>
<!-- Telnet -->
<property name="TelnetEnabled" value="true"/>
<property name="TelnetPort" value="8081"/>
<property name="TelnetPassword" value="CHANGEME"/>
<!-- World -->
<property name="GameWorld" value="Navezgane"/> <!-- or "RWG" for random -->
<property name="WorldGenSeed" value="asdf"/>
<property name="WorldGenSize" value="4096"/>
<property name="GameName" value="My Game"/>
<property name="GameMode" value="GameModeSurvival"/>
<!-- Difficulty -->
<property name="GameDifficulty" value="2"/> <!-- 0=Scavenger, 1=Adventurer, 2=Nomad, 3=Warrior, 4=Survivalist, 5=Insane -->
<property name="ZombiesRun" value="0"/> <!-- 0=Walk, 1=Jog, 2=Run -->
<property name="BuildCreate" value="false"/>
<property name="DayNightLength" value="60"/> <!-- Real-time minutes -->
<property name="DayLightLength" value="18"/>
<!-- Loot & XP -->
<property name="LootAbundance" value="100"/>
<property name="LootRespawnDays" value="7"/>
<property name="PlayerKillingMode" value="3"/> <!-- 0=No Killing, 1=Kill Allies Only, 2=Kill Strangers Only, 3=Kill Everyone -->
</ServerSettings>
# Navigate to server directory
cd "C:\7DaysToDie\"
# Run dedicated server
startdedicated.bat
# Or with custom config
7DaysToDieServer.exe -configfile=serverconfig.xml
# Make start script executable
chmod +x startserver.sh
# Run in screen session
screen -S 7dtd ./startserver.sh
# Detach: Ctrl+A, D
# Reattach: screen -r 7dtd
# Or direct command
./7DaysToDieServer.x86_64 -configfile=serverconfig.xml
7 Days to Die uses XML files for game configuration, making modding highly accessible without programming knowledge. All game items, blocks, recipes, and mechanics are defined in XML.
Data/Config/Mods/ModName/Config/items.xml - Item definitions and propertiesblocks.xml - Block types and behaviorsrecipes.xml - Crafting recipesloot.xml - Loot tables and containersentityclasses.xml - Zombie and animal statsprogression.xml - Skill trees and perks<configs>
<set xpath="/items/item[@name='resourceWood']/@Stacknumber">10000</set>
<set xpath="/items/item[@name='resourceIron']/@Stacknumber">10000</set>
<set xpath="/items/item[@name='resourceConcreteMix']/@Stacknumber">10000</set>
</configs>
<configs>
<set xpath="/entity_classes/entity_class[@name='zombieSteve']/property[@name='Health']/@value">500</set>
<set xpath="/entity_classes/entity_class[@name='zombieFeral']/property[@name='Health']/@value">1000</set>
</configs>
Mods/ folder in server directoryoutput_log.txt for errors# Check ServerVisibility in serverconfig.xml
<property name="ServerVisibility" value="2"/> <!-- Must be 2 for public -->
# Verify ports are open
netstat -an | grep 26900
# Check firewall rules
sudo ufw status
# Reduce world size
<property name="WorldGenSize" value="4096"/> <!-- Try 2048 or 3072 -->
# Reduce max zombies
<property name="MaxSpawnedZombies" value="60"/> <!-- Lower if needed -->
# Enable/check automatic restarts
# Restart every 24-48 hours to clear memory
# Check output_log.txt for errors
tail -f output_log.txt
# Validate XML syntax (all tags must close)
# Use XML validator tool online
# Remove recently added mods one-by-one
# Common issue: duplicate entries or syntax errors
<!-- Reduce view distance -->
<property name="ServerMaxWorldTransferSpeedKiBs" value="512"/>
<!-- Lower max zombies -->
<property name="MaxSpawnedZombies" value="60"/>
<!-- Reduce AI updates -->
<property name="EnemySpawnMode" value="true"/>
<!-- Disable dynamic mesh -->
<property name="EACEnabled" value="true"/> <!-- Can impact perf if disabled -->
| Players | RAM | CPU Cores |
|---|---|---|
| 1-4 | 4-6GB | 2-4 |
| 5-8 | 8-12GB | 4-6 |
| 9-16 | 12-16GB | 6-8 |
| 17-32 | 16-24GB | 8+ |
output_log.txt shows errors and performance issuesPopular server modifications compatible with 7 Days to Die: