Technology Encyclopedia Home >How to Set Up a 7 Days to Die Server on a Cloud Server — Zombie Survival with Friends

How to Set Up a 7 Days to Die Server on a Cloud Server — Zombie Survival with Friends

7 Days to Die is one of those games that's dramatically better with friends. Splitting up tasks — one person fortifies while another gathers food — makes the survival loop feel genuinely cooperative. But the Blood Moon horde on day 7 requires everyone online at the same time, which only works reliably on a persistent server.

Running the dedicated server on a VPS means the world stays running, hordes happen on schedule regardless of who's online, and your base construction persists between sessions.

The server itself is not as resource-intensive as the client, and SteamCMD makes installation straightforward.

I run game servers on Tencent Cloud Lighthouse. 7DtD is moderately resource-intensive — the 2 vCPU / 4 GB RAM plan works for small groups, 8 GB is more comfortable. Choose a region close to your players to keep latency low during Blood Moon nights when server load spikes. The snapshot feature is particularly valuable here: 7DtD worlds can grow large and corrupt, and having a pre-horde snapshot means you can roll back if the worst happens.


Table of Contents

  1. Server Requirements
  2. Prerequisites
  3. Part 1 — Server Setup
  4. Part 2 — Install 7 Days to Die Server
  5. Part 3 — Configure Server Settings
  6. Part 4 — Run as systemd Service
  7. Part 5 — Open Firewall Ports
  8. Part 6 — Connect from the Game
  9. Part 7 — Admin Commands and Telnet Console
  10. Part 8 — Backups
  11. The Gotcha: Server Runs World Even When Empty

  • Key Takeaways
  • Use the appropriate Lighthouse application image to skip manual installation steps where available
  • Lighthouse snapshots provide one-click full-server backup before major changes
  • OrcaTerm browser terminal lets you manage the server from any device
  • CBS cloud disk expansion handles growing storage needs without server migration
  • Console-level firewall + UFW = two independent protection layers

Server Requirements {#requirements}

Players RAM CPU
1–4 4 GB 2 vCPU
4–8 8 GB 4 vCPU
8+ 12 GB+ 4 vCPU

World generation on first startup can take 5-15 minutes and uses significant CPU and RAM.


Prerequisites {#prerequisites}

Requirement Notes
Cloud server Tencent Cloud Lighthouse Ubuntu 22.04
4 GB+ RAM 8 GB recommended
20 GB+ disk Server files + world data

Cost: The Basic plan (4 GB RAM) starts at ~$8/month. Check current promotions.


Part 1 — Server Setup {#part-1}

ssh ubuntu@YOUR_SERVER_IP
sudo apt update && sudo apt upgrade -y

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y lib32gcc-s1 lib32stdc++6 steamcmd

sudo adduser --disabled-password --gecos "" sdtd
sudo su - sdtd

Part 2 — Install 7 Days to Die Server {#part-2}

# App ID 294420 = 7 Days to Die Dedicated Server
/usr/games/steamcmd \
  +login anonymous \
  +force_install_dir ~/sdtd-server \
  +app_update 294420 validate \
  +quit

ls ~/sdtd-server/
exit   # Back to ubuntu user

Part 3 — Configure Server Settings {#part-3}

sudo -u sdtd nano /home/sdtd/sdtd-server/serverconfig.xml

Key settings to modify:

<property name="ServerName"                value="My 7DTD Server"/>
<property name="ServerDescription"         value="Private server for friends"/>
<property name="ServerPassword"            value=""/>  <!-- Optional password -->
<property name="ServerPort"                value="26900"/>
<property name="ServerVisibility"          value="2"/> <!-- 0=not listed, 1=friends, 2=public -->
<property name="ServerMaxPlayerCount"      value="8"/>
<property name="GameWorld"                 value="Navezgane"/> <!-- Navezgane or RWG (random gen) -->
<property name="GameName"                  value="My Game"/>
<property name="GameMode"                  value="GameModeSurvival"/>
<property name="GameDifficulty"            value="2"/> <!-- 0=Easiest, 5=Hardest -->
<property name="ZombieMove"                value="0"/> <!-- 0=Walk, 4=Sprint -->
<property name="ZombieMoveNight"           value="3"/>
<property name="BloodMoonFrequency"        value="7"/> <!-- Days between hordes -->
<property name="BloodMoonRange"            value="1"/>
<property name="LootAbundance"             value="100"/>
<property name="LootRespawnDays"           value="7"/>
<property name="EnemySpawnMode"            value="True"/>
<property name="SaveGameFolder"            value="/home/sdtd/sdtd-saves"/>

<!-- Admin access via Telnet -->
<property name="TelnetEnabled"             value="true"/>
<property name="TelnetPort"                value="8081"/>
<property name="TelnetPassword"            value="your_telnet_password"/>
sudo -u sdtd mkdir -p /home/sdtd/sdtd-saves

Part 4 — Run as systemd Service {#part-4}

sudo nano /etc/systemd/system/sdtd.service
[Unit]
Description=7 Days to Die Dedicated Server
After=network.target

[Service]
Type=simple
User=sdtd
WorkingDirectory=/home/sdtd/sdtd-server
ExecStart=/home/sdtd/sdtd-server/7DaysToDieServer.x86_64 \
  -configfile=/home/sdtd/sdtd-server/serverconfig.xml \
  -logfile=/home/sdtd/sdtd.log \
  -quit -batchmode -nographics -dedicated
Restart=on-failure
RestartSec=30s

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable sdtd
sudo systemctl start sdtd

# First startup takes 5-15 minutes for world generation
sudo journalctl -u sdtd -f
# Wait for: GameServer.net Init complete

Part 5 — Open Firewall Ports {#part-5}

sudo ufw allow 26900/tcp     # Game port
sudo ufw allow 26900/udp     # Game port UDP
sudo ufw allow 26901/udp     # Steam port
sudo ufw allow 26902/udp     # Steam port
sudo ufw allow 8081/tcp      # Telnet admin (restrict to your IP!)
sudo ufw allow ssh
sudo ufw enable

Open the same in the Lighthouse console firewall. For the Telnet port, restrict to your IP:

# Restrict Telnet to your IP only
sudo ufw delete allow 8081/tcp
sudo ufw allow from YOUR_IP to any port 8081

Part 6 — Connect from the Game {#part-6}

In 7 Days to Die:

  1. Play → Connect to IP
  2. Enter: YOUR_SERVER_IP:26900
  3. Enter password if set

Part 7 — Admin Commands and Telnet Console {#part-7}

Connect via Telnet for admin access:

# From your local machine
telnet YOUR_SERVER_IP 8081
# Enter the Telnet password

Common admin commands:

listplayers              - Show online players
kick PlayerName reason   - Kick a player
ban add PlayerName 1 days reason - Ban for 1 day
ban remove PlayerName    - Remove ban
admin add PlayerName 0   - Add admin (level 0 = full admin)
give PlayerName item 10  - Give items
teleport EntityID x y z  - Teleport player
say "Message"            - Server broadcast message
saveworld                - Save the world immediately
shutdown                 - Graceful shutdown

Part 8 — Backups {#part-8}

sudo nano ~/backup_sdtd.sh
#!/bin/bash
BACKUP_DIR=/home/ubuntu/backups/sdtd
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p $BACKUP_DIR

sudo systemctl stop sdtd
sleep 10

sudo tar czf $BACKUP_DIR/sdtd_saves_$DATE.tar.gz \
  /home/sdtd/sdtd-saves/

sudo systemctl start sdtd

find $BACKUP_DIR -mtime +7 -delete
echo "7DTD backup: $DATE"
chmod +x ~/backup_sdtd.sh
(crontab -l; echo "0 5 * * * ~/backup_sdtd.sh") | crontab -

The Gotcha: Server Runs World Even When Empty {#gotcha}

Unlike Minecraft with sleep acceleration, 7DtD's world runs at full speed 24/7 — including zombie spawning, loot respawn timers, and horde day counting. Even with no players online, the server day counter advances.

This means:

  • Blood Moon can happen when no one is online
  • Loot respawns without players present
  • Days since last visit: the world ages at real time

If you want the world to pause when empty, the server doesn't have this built in. Some modding solutions exist, but the vanilla server always runs.

Plan around this: set BloodMoonFrequency high enough that hordes align with your play sessions, and check the current in-game day when logging in so you can prepare.

Troubleshooting {#troubleshooting}

Issue Likely Cause Fix
Connection refused Service not running or wrong port Check systemctl status SERVICE and verify firewall rules
Permission denied Wrong file ownership or permissions Check file ownership with ls -la and use chown/chmod to fix
502 Bad Gateway Backend service not running Restart the backend service; check logs with journalctl -u SERVICE
SSL certificate error Certificate expired or domain mismatch Run sudo certbot renew and verify domain DNS points to server IP
Service not starting Config error or missing dependency Check logs with journalctl -u SERVICE -n 50 for specific error
Out of disk space Logs or data accumulation Run df -h to identify usage; clean logs or attach CBS storage
High memory usage Too many processes or memory leak Check with htop; consider upgrading instance plan if consistently high
Firewall blocking traffic Port not open in UFW or Lighthouse console Open port in Lighthouse console firewall AND sudo ufw allow PORT

Frequently Asked Questions {#faq}

What server size do I need for a 7 Days to Die server?
Check the requirements section in this guide. Generally: more RAM = more players. Start with the recommended specs and monitor actual usage with htop before scaling up.

How do I keep the 7 Days to Die server running when I close my SSH session?
Use screen, tmux, or systemd to run the server as a background process. The guide covers setting up a systemd service for automatic startup and crash recovery.

How do I update the 7 Days to Die server software?
Stop the server, download the new version, replace the old binary or files, and restart. Always back up your world/save data first. Check the game's official documentation for version-specific migration notes.

How do I protect my server from unwanted players?
Use password protection and/or whitelist mode (if supported). Restrict the server port in UFW to known IP addresses if it's a private server for a small group.

What region should I choose for the server?
Choose the Lighthouse data center closest to where most of your players are located. Latency is directly tied to geographic distance from the server.

Run your zombie survival server:
👉 Tencent Cloud Lighthouse — Game server VPS
👉 View current pricing and promotions
👉 Explore all active deals and offers