--- title: "Cómo crear un servidor de 7 Days to Die en Ubuntu 24.04" description: "Instala un servidor de 7 Days to Die en Ubuntu 24.04 con SteamCMD, configura serverconfig.xml y el mundo, ejecútalo con systemd y añade administradores." category: "Servidores de Juegos" language: es source: https://cubepath.com/es/docs/servidores-de-juegos/servidor-7-days-to-die-en-linux updated: 2026-09-25 --- # Cómo crear un servidor de 7 Days to Die en Ubuntu 24.04 7 Days to Die incluye un servidor dedicado para Linux que se descarga de forma anónima con SteamCMD. Con tu propio servidor el mundo sigue activo aunque el anfitrión se desconecte, y puedes controlar la dificultad, la frecuencia de las hordas, el tamaño del mapa y quién tiene permisos de administrador. En este tutorial instalarás el servidor de 7 Days to Die en Ubuntu 24.04, configurarás `serverconfig.xml`, lo ejecutarás como servicio systemd y lo administrarás por telnet. ## Requisitos previos Para seguir esta guía necesitas: - Un servidor con Ubuntu 24.04 LTS (x86_64), por ejemplo un VPS de CubePath. Calcula 4 núcleos de CPU y 8 GB de RAM para unos 8 jugadores; los mapas grandes y las hordas numerosas necesitan más memoria. - Unos 20 GB libres en disco. - Un usuario no root con privilegios `sudo`. - Una copia de 7 Days to Die en Steam, en la misma versión que el servidor. ## Paso 1: Instalar SteamCMD SteamCMD está en el repositorio `multiverse` de Ubuntu y necesita bibliotecas de 32 bits, así que activa ambos primero: ```bash sudo add-apt-repository multiverse sudo dpkg --add-architecture i386 sudo apt update ``` Instala SteamCMD y el cliente `telnet`, que usarás para administrar el servidor. Acepta la licencia de Steam seleccionando **I AGREE** cuando se te pida: ```bash sudo apt install steamcmd telnet ``` Comprueba que el binario existe: ```bash ls -l /usr/games/steamcmd ``` ## Paso 2: Crear un usuario dedicado El servidor debe ejecutarse con un usuario sin privilegios. Crea el usuario `steam` y cambia a él: ```bash sudo useradd -m -s /bin/bash steam sudo -iu steam ``` ## Paso 3: Descargar el servidor El servidor dedicado de 7 Days to Die es la aplicación de Steam `294420`. Recuerda que `+force_install_dir` debe ir antes de `+login`: ```bash /usr/games/steamcmd +force_install_dir /home/steam/7dtd +login anonymous +app_update 294420 validate +quit ``` ```output Success! App '294420' fully installed. ``` Comprueba que el binario existe: ```bash ls -l /home/steam/7dtd/7DaysToDieServer.x86_64 ``` ## Paso 4: Configurar serverconfig.xml La configuración está en `serverconfig.xml`, pero SteamCMD sobrescribe ese archivo al actualizar con `validate`. Copia la plantilla a un archivo propio fuera del directorio del juego y edita la copia: ```bash cp /home/steam/7dtd/serverconfig.xml /home/steam/serverconfig.xml nano /home/steam/serverconfig.xml ``` Cada ajuste es una línea ``. Cambia al menos estas propiedades, que ya existen en el archivo: ```xml ``` Qué hacen: - `ServerPassword`: la contraseña para entrar. Déjala vacía para un servidor abierto. - `ServerVisibility`: `2` lo muestra en la lista pública, `1` solo a amigos y `0` lo oculta. - `GameWorld`: `Navezgane` usa el mapa fijo creado a mano; `RWG` genera un mapa aleatorio a partir de `WorldGenSeed` y `WorldGenSize` (un tamaño mayor, como `8192`, tarda más en generarse y consume más memoria). - `GameName`: el nombre de la partida guardada. Cambiarlo crea una partida nueva en el mismo mundo. - `GameDifficulty`: de `0` (la más fácil) a `5` (la más difícil). - `TelnetEnabled`, `TelnetPort` y `TelnetPassword`: la consola de administración remota. Sustituye `tu_contraseña_telnet` por una contraseña larga. El resto del archivo incluye opciones como `BloodMoonFrequency` (cada cuántos días llega la horda) o `DayNightLength`. Cada propiedad lleva un comentario que explica sus valores. Comprueba que el XML sigue siendo válido tras editarlo: ```bash python3 -c "import xml.dom.minidom as m; m.parse('/home/steam/serverconfig.xml'); print('XML válido')" ``` Vuelve a tu usuario con sudo: ```bash exit ``` ## Paso 5: Crear el servicio systemd Crea la unidad para que el servidor arranque con el sistema, se reinicie si falla y se actualice antes de cada arranque: ```bash sudo nano /etc/systemd/system/7dtd.service ``` ```ini [Unit] Description=7 Days to Die dedicated server Wants=network-online.target After=network-online.target [Service] Type=simple User=steam Group=steam WorkingDirectory=/home/steam/7dtd Environment=LD_LIBRARY_PATH=/home/steam/7dtd ExecStartPre=-/usr/games/steamcmd +force_install_dir /home/steam/7dtd +login anonymous +app_update 294420 +quit ExecStart=/home/steam/7dtd/7DaysToDieServer.x86_64 -quit -batchmode -nographics -dedicated -configfile=/home/steam/serverconfig.xml -logfile /dev/stdout TimeoutStartSec=900 TimeoutStopSec=120 Restart=on-failure RestartSec=15 [Install] WantedBy=multi-user.target ``` `LD_LIBRARY_PATH` apunta al directorio del servidor, que es lo que hace el script `startserver.sh` incluido. `-logfile /dev/stdout` envía el log del juego al journal de systemd en lugar de a un archivo con fecha. Recarga systemd y arranca el servidor: ```bash sudo systemctl daemon-reload sudo systemctl enable --now 7dtd ``` ## Paso 6: Comprobar que el servidor funciona La primera vez, si usas `RWG`, el servidor genera el mapa, lo que puede tardar entre 5 y 20 minutos según el tamaño y la CPU. Sigue el log: ```bash sudo journalctl -u 7dtd -f ``` Cuando el servidor esté listo verás una línea como esta: ```output ... INF [Steamworks.NET] GameServer.LogOn successful, SteamID=..., public IP=... ``` Pulsa `CTRL+C` para salir y comprueba los puertos: ```bash sudo ss -tulpn | grep 7DaysToDie ``` ## Paso 7: Abrir el cortafuegos 7 Days to Die usa el puerto indicado en `ServerPort` en TCP y UDP, y los tres siguientes en UDP. No abras el puerto de telnet (8081), porque la consola da control total del servidor; úsalo solo desde el propio servidor o por un túnel SSH. ```bash sudo ufw allow 26900/tcp sudo ufw allow 26900:26903/udp sudo ufw status ``` Para conectarte, abre el juego, entra en **Unirse a una partida**, pulsa **Conectar a IP** y escribe la IP del servidor con el puerto 26900. Si usaste `ServerVisibility` `2`, también aparecerá en la lista de servidores. ## Paso 8: Administrar el servidor por telnet La consola telnet acepta los mismos comandos que la consola del juego. Conéctate desde el propio servidor e introduce la contraseña de `TelnetPassword` cuando te la pida: ```bash telnet 127.0.0.1 8081 ``` Comandos útiles: - `lp`: lista los jugadores conectados, con su ID de plataforma (por ejemplo `Steam_76561198000000000`). - `admin add Steam_76561198000000000 0`: concede el nivel de permisos máximo (`0`) a un jugador. Los niveles más altos tienen menos permisos. - `kick ` y `ban add 1 year`: expulsa o banea. - `say "mensaje"`: envía un aviso a todos los jugadores. - `saveworld`: guarda el mundo inmediatamente. - `shutdown`: guarda y apaga el servidor. Para salir de telnet escribe `exit`. La lista de administradores se guarda en `serveradmin.xml`, en el directorio de partidas. > Nota: ejecuta `saveworld` antes de cualquier mantenimiento. `shutdown` apaga el servidor de forma limpia, pero como es una salida normal, systemd no lo vuelve a arrancar; usa `sudo systemctl start 7dtd` para iniciarlo de nuevo. ## Paso 9: Hacer copias de seguridad Las partidas y los mapas generados están en `/home/steam/.local/share/7DaysToDie/`: el subdirectorio `Saves` contiene el progreso y `GeneratedWorlds` los mapas RWG. Crea una tarea cron para el usuario `steam` que archive ambos cada noche y borre las copias de más de 7 días: ```bash sudo -u steam mkdir -p /home/steam/backups sudo -u steam crontab -e ``` ```text 0 5 * * * tar -czf /home/steam/backups/7dtd-$(date +\%F).tar.gz -C /home/steam .local/share/7DaysToDie serverconfig.xml && find /home/steam/backups -name '7dtd-*.tar.gz' -mtime +7 -delete ``` Los `%` van escapados porque cron interpreta un `%` sin escapar como salto de línea. Ejecuta el `tar` a mano una vez para comprobar que funciona y copia las copias fuera del servidor con regularidad. Para restaurar, detén el servicio, extrae la copia en `/home/steam` como usuario `steam` y arráncalo de nuevo. ## Solución de problemas - **El servidor tarda mucho en arrancar la primera vez.** Es la generación del mapa RWG. Espera a ver `GameServer.LogOn successful` en el log. Si se queda sin memoria, prueba con un `WorldGenSize` menor. - **Los cambios en la configuración no se aplican.** Comprueba que editas `/home/steam/serverconfig.xml`, que es el que usa `-configfile`, y reinicia con `sudo systemctl restart 7dtd`. - **Los jugadores ven un error de versión.** El servidor no está actualizado. Reinicia el servicio para que `ExecStartPre` descargue la actualización. Si el juego pasa a una versión mayor, las partidas antiguas pueden no ser compatibles; cambia `GameName` para empezar una nueva. - **Nadie puede conectarse.** Revisa que 26900/tcp y 26900-26903/udp están abiertos en UFW y en cualquier cortafuegos externo. ## Conclusión Tu servidor de 7 Days to Die ya funciona en Ubuntu 24.04 como servicio systemd, se actualiza en cada reinicio, se administra por telnet y guarda copias nocturnas. Como siguientes pasos puedes ajustar la frecuencia de las hordas y la dificultad en `serverconfig.xml`, activar el panel web de administración solo en local o instalar mods en el directorio `Mods` del servidor.