--- title: "Cómo crear un servidor dedicado de Valheim en Ubuntu 24.04" description: "Instala un servidor dedicado de Valheim en Ubuntu 24.04 con SteamCMD, ejecútalo como servicio systemd que se actualiza solo, abre los puertos y haz copias." category: "Servidores de Juegos" language: es source: https://cubepath.com/es/docs/servidores-de-juegos/servidor-dedicado-de-valheim-en-linux updated: 2026-09-25 --- # Cómo crear un servidor dedicado de Valheim en Ubuntu 24.04 Valheim incluye un servidor dedicado gratuito para Linux que se descarga de forma anónima con SteamCMD, el cliente de Steam para línea de comandos. Tener tu propio servidor mantiene el mundo en línea aunque el anfitrión se desconecte y te da control total sobre contraseñas, administradores y copias de seguridad. En este tutorial instalarás el servidor de Valheim en Ubuntu 24.04, lo ejecutarás como servicio systemd con su propio usuario, abrirás los puertos necesarios y programarás copias del mundo. ## Requisitos previos Para seguir esta guía necesitas: - Un servidor con Ubuntu 24.04 LTS (x86_64), por ejemplo un VPS de CubePath. Calcula 2 núcleos de CPU y 4 GB de RAM para un grupo pequeño; los mundos grandes o muy construidos consumen más memoria. - Unos 5 GB libres en disco para los archivos del servidor y las partidas. - Un usuario no root con privilegios `sudo`. - Una copia de Valheim en Steam en el ordenador desde el que vas a jugar. ## 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 el paquete. Durante la instalación se te pedirá aceptar la licencia de Steam; selecciona **I AGREE** para continuar: ```bash sudo apt install steamcmd ``` El binario queda instalado en `/usr/games/steamcmd`. Compruébalo: ```bash ls -l /usr/games/steamcmd ``` ## Paso 2: Crear un usuario dedicado Un servidor de juegos nunca debe ejecutarse como root. Crea un usuario normal llamado `steam` con su propio directorio personal, donde estarán los archivos del servidor y las partidas: ```bash sudo useradd -m -s /bin/bash steam ``` Cambia a ese usuario para el siguiente paso: ```bash sudo -iu steam ``` ## Paso 3: Descargar el servidor de Valheim El servidor dedicado de Valheim es la aplicación de Steam `896660` y se puede descargar sin cuenta de Steam. Ten en cuenta que `+force_install_dir` debe ir antes de `+login`: ```bash /usr/games/steamcmd +force_install_dir /home/steam/valheim +login anonymous +app_update 896660 validate +quit ``` La primera ejecución también actualiza SteamCMD, por lo que tarda unos minutos. Termina con: ```output Success! App '896660' fully installed. ``` Comprueba que el binario del servidor existe y vuelve a tu usuario con sudo: ```bash ls /home/steam/valheim/valheim_server.x86_64 exit ``` ## Paso 4: Crear el servicio systemd Valheim trae un script de ejemplo, `start_server.sh`, pero una unidad systemd es mejor opción: arranca el servidor al iniciar el sistema, lo reinicia si se cae, envía los logs al journal y puede actualizar el juego antes de cada arranque. Decide los valores que vas a usar: - **Nombre del servidor** (`-name`): el que verán los jugadores en la lista de servidores. - **Nombre del mundo** (`-world`): el nombre del archivo de partida. En el primer arranque se crea un mundo nuevo con ese nombre. - **Contraseña** (`-password`): al menos 5 caracteres y no puede estar contenida en el nombre del servidor, o el servidor se negará a arrancar. Crea el archivo de la unidad: ```bash sudo nano /etc/systemd/system/valheim.service ``` ```ini [Unit] Description=Valheim dedicated server Wants=network-online.target After=network-online.target [Service] Type=simple User=steam Group=steam WorkingDirectory=/home/steam/valheim Environment=LD_LIBRARY_PATH=/home/steam/valheim/linux64 Environment=SteamAppId=892970 ExecStartPre=-/usr/games/steamcmd +force_install_dir /home/steam/valheim +login anonymous +app_update 896660 +quit ExecStart=/home/steam/valheim/valheim_server.x86_64 -nographics -batchmode -name "CubePath Vikings" -port 2456 -world "Midgard" -password "tu_contraseña_servidor" -public 1 -savedir /home/steam/valheim-data KillSignal=SIGINT TimeoutStartSec=600 TimeoutStopSec=60 Restart=on-failure RestartSec=10 [Install] WantedBy=multi-user.target ``` Sustituye `tu_contraseña_servidor` por la contraseña que elijas. Qué hacen las líneas menos evidentes: - `SteamAppId=892970` es el ID del juego Valheim, que el servidor necesita para registrarse en Steam (la descarga del servidor en sí es `896660`). - `ExecStartPre` busca actualizaciones del juego en cada arranque, así que tras un parche de Valheim basta con reiniciar. El `-` inicial permite arrancar igualmente si Steam no responde, y `TimeoutStartSec` da tiempo a que termine la actualización. - `KillSignal=SIGINT` hace que `systemctl stop` apague el servidor igual que `CTRL+C`, que guarda el mundo antes de salir. - `-public 1` muestra el servidor en el navegador de la comunidad del juego. Usa `-public 0` para ocultarlo y conectar solo por IP. - `-savedir` guarda los mundos, la lista de administradores y la de baneos en `/home/steam/valheim-data` en lugar de un directorio oculto. Si van a entrar jugadores de Xbox o de la versión de Microsoft Store, añade `-crossplay` al final de la línea `ExecStart`. Recarga systemd y arranca el servidor: ```bash sudo systemctl daemon-reload sudo systemctl enable --now valheim ``` ## Paso 5: Comprobar que el servidor funciona Sigue el log. El mundo se genera o se carga y, tras uno o dos minutos, deberías ver que el servidor se registra en Steam: ```bash sudo journalctl -u valheim -f ``` ```output ... Game server connected ``` Pulsa `CTRL+C` para dejar de seguir el log. El estado del servicio debe ser `active (running)`: ```bash sudo systemctl status valheim --no-pager ``` Comprueba que el servidor escucha en sus puertos UDP: ```bash sudo ss -ulpn | grep valheim ``` ```output UNCONN 0 0 0.0.0.0:2456 0.0.0.0:* users:(("valheim_server.",pid=4121,fd=...)) UNCONN 0 0 0.0.0.0:2457 0.0.0.0:* users:(("valheim_server.",pid=4121,fd=...)) ``` ## Paso 6: Abrir el cortafuegos Valheim usa el puerto indicado en `-port` (2456) y el siguiente (2457), ambos UDP. Si tienes UFW activado, permítelos: ```bash sudo ufw allow 2456:2457/udp sudo ufw status ``` Ahora conéctate desde el juego. En Valheim, elige **Unirse a partida**, pulsa **Unirse por IP**, escribe `ip_de_tu_servidor:2456` e introduce la contraseña. Si usaste `-public 1`, el servidor también aparecerá en la pestaña **Comunidad** al cabo de unos minutos. ## Paso 7: Añadir administradores Los administradores pueden expulsar y banear jugadores y usar los comandos de consola del juego. El servidor lee la lista de administradores de `adminlist.txt` en el directorio de partidas, con un SteamID64 por línea. Puedes ver el SteamID64 de un jugador en el panel de conexión del juego (**F2**) o en la URL de su perfil de Steam. ```bash sudo -u steam nano /home/steam/valheim-data/adminlist.txt ``` ```text 76561198000000000 ``` Reinicia el servidor para aplicar el cambio: ```bash sudo systemctl restart valheim ``` En el mismo directorio, `bannedlist.txt` y `permittedlist.txt` (lista blanca, cuando no está vacía) usan el mismo formato. ## Paso 8: Hacer copias de seguridad del mundo Un mundo de Valheim son dos archivos en `/home/steam/valheim-data/worlds_local/`: `Midgard.db` contiene los datos del mundo y `Midgard.fwl` sus metadatos. Valheim guarda sus propias copias rotativas ahí, pero están en el mismo disco, así que conviene tener copias en otro sitio. Crea un directorio de copias y añade una tarea cron para el usuario `steam` que archive los mundos cada noche a las 05:00 y borre los archivos de más de 14 días: ```bash sudo -u steam mkdir -p /home/steam/backups sudo -u steam crontab -e ``` ```text 0 5 * * * tar -czf /home/steam/backups/valheim-$(date +\%F).tar.gz -C /home/steam/valheim-data worlds_local && find /home/steam/backups -name 'valheim-*.tar.gz' -mtime +14 -delete ``` Los `%` van escapados porque cron interpreta un `%` sin escapar como salto de línea. Ejecuta el mismo `tar` una vez a mano para comprobar que funciona y copia el directorio `backups` fuera del servidor con regularidad (por ejemplo con `rsync` a otra máquina o a un almacenamiento de objetos). Para restaurar, detén el servidor, extrae el archivo en `/home/steam/valheim-data` y vuelve a arrancarlo: ```bash sudo systemctl stop valheim sudo -u steam tar -xzf /home/steam/backups/valheim-2026-09-25.tar.gz -C /home/steam/valheim-data sudo systemctl start valheim ``` ## Solución de problemas - **El servicio se detiene justo después de arrancar.** Revisa `sudo journalctl -u valheim -n 50`. La causa más habitual es una contraseña de menos de 5 caracteres o que aparece dentro del nombre del servidor. - **El servidor funciona pero nadie puede conectarse.** Asegúrate de que UDP 2456 y 2457 están permitidos en UFW y en cualquier cortafuegos externo, y de que te conectas al puerto 2456, no al 2457. - **El servidor no aparece en la lista de la comunidad.** El listado puede tardar varios minutos y a veces falla. Conectar por IP funciona siempre. - **Los jugadores ven un error de versión incompatible.** Se actualizó el cliente pero no el servidor. Ejecuta `sudo systemctl restart valheim`; la línea `ExecStartPre` descarga la actualización. ## Conclusión Tu servidor dedicado de Valheim ya funciona en Ubuntu 24.04 como servicio systemd, se actualiza al reiniciar y guarda copias nocturnas del mundo. Como siguientes pasos, puedes subir un mundo de un solo jugador copiando sus archivos `.db` y `.fwl` a `worlds_local` y poniendo su nombre en `-world`, limitar el acceso con `permittedlist.txt` o instalar BepInEx si tu grupo quiere mods en el servidor.