bolt Valebyte VPS desde $4/mes — NVMe, despliegue en 60s.

Obtener VPS arrow_forward
eco Principiante Tutorial/Cómo hacer

Servidor de Valheim: cuánta RAM necesitan 10 jugadores y cómo instalar mods

calendar_month Sep 27, 2026 schedule 22 min de lectura visibility 59 vistas
Сервер Valheim: сколько RAM на 10 игроков и как ставить моды
info

¿Necesitas un servidor para esta guía? Ofrecemos servidores dedicados y VPS en más de 50 países con configuración instantánea.

¿Necesitas un VPS para esta guía?

Explore otras opciones de servidores dedicados en

Servidor de Valheim: cuánta RAM para 10 jugadores y cómo instalar mods

TL;DR

Para un servidor dedicado de Valheim para 10 jugadores, 4 GB de RAM son suficientes con pocos mods, pero una reserva práctica para 2026 es de 6–8 GB de RAM, 2–4 vCPU rápidos y SSD desde 40 GB. A continuación, el servidor se instala en Ubuntu 24.04 LTS mediante SteamCMD, se ejecuta con un usuario independiente, se protege con firewall y fail2ban, y los mods se instalan mediante BepInExPack Valheim con copia de seguridad del mundo antes de cada actualización.

  • Configuración mínima funcional: 2 vCPU, 4 GB de RAM, 40 GB de SSD NVMe.
  • Opción recomendada para 10 jugadores y un modpack: 4 vCPU, 8 GB de RAM, 60–80 GB de SSD NVMe.
  • Para conectarse normalmente se requieren los puertos UDP 2456–2458; los puertos TCP no son obligatorios para el tráfico del juego en sí.
  • Los datos del mundo se almacenan por separado de los archivos de la aplicación y deben copiarse regularmente a almacenamiento externo.
  • BepInEx se instala en el directorio de Valheim, y los mods DLL del servidor, en BepInEx/plugins.
  • Valheim y los mods deben actualizarse solo después de realizar una copia de seguridad y comprobar la compatibilidad de versiones.

1. TL;DR

Esta sección repite intencionadamente la respuesta breve en un formato conveniente para búsquedas rápidas: si juegan hasta 10 personas simultáneamente en el servidor, tenga en cuenta no solo la cantidad nominal de RAM, sino también una reserva para el sistema operativo, los mods y los picos temporales de carga del mundo.

Escenario CPU RAM Disco
Valheim vanilla, 2–5 jugadores 2 vCPU 4 GB 40 GB SSD NVMe
Hasta 10 jugadores, mods ligeros 3–4 vCPU 6 GB 50 GB SSD NVMe
Hasta 10 jugadores, modpack grande 4 vCPU con buena frecuencia 8 GB 60–80 GB SSD NVMe
Más de 10 jugadores o varios mundos 4–8 vCPU 8–16 GB 80 GB o más

2. Contenido

La guía está diseñada para un VPS limpio con Ubuntu Server 24.04 LTS y arquitectura x86_64. Los comandos se ejecutan como un usuario con privilegios sudo, salvo que se indique lo contrario.

La versión de servidor de Valheim y BepInEx cambian con el tiempo. Los ejemplos utilizan SteamCMD y el esquema de instalación para Linux vigente en 2026, pero compruebe siempre las versiones específicas de los mods en la página de su lanzamiento. No mezcle DLL de una versión antigua del juego con un servidor nuevo sin realizar pruebas.

3. Qué configuramos y por qué

Схема: 3. Что мы настраиваем и зачем
Esquema: 3. Qué configuramos y por qué

Objetivo del servidor dedicado de Valheim

Valheim es un juego cooperativo de supervivencia en el que el mundo continúa existiendo independientemente de que el propietario del mundo esté en el juego. Si ejecuta el servidor en un ordenador doméstico, dependerá de la electricidad, el internet doméstico, NAT y de si el ordenador está encendido. Un servidor dedicado en un VPS funciona las 24 horas, y los jugadores se conectan a una única dirección permanente.

En este artículo se crea un servidor Linux con un usuario independiente valheim. Los archivos del juego estarán ubicados en /opt/valheim/server, la configuración de inicio estará en una unidad de systemd y las partidas guardadas en /opt/valheim/data. Esta separación simplifica las actualizaciones, las copias de seguridad y la restauración del mundo.

Para diez jugadores, no solo importa la RAM. El rendimiento se ve afectado por la frecuencia de uno o dos núcleos de CPU, la latencia de red hacia los jugadores, la velocidad del disco, la cantidad de objetos activos en el mundo y los mods. El pico de consumo suele producirse durante la generación de nuevas zonas, la carga masiva de objetos y el guardado del mundo.

Resultado final

  • Inicio automático del servidor tras reiniciar el VPS.
  • Acceso al mundo mediante nombre de dominio o dirección IP.
  • Restricción del acceso mediante firewall únicamente a los puertos necesarios.
  • Instalación de BepInEx para mods de servidor.
  • Archivo de inicio independiente con el nombre del mundo, contraseña y visibilidad del servidor.
  • Copia de seguridad diaria local y externa de las partidas guardadas.
  • Comandos para consultar registros, comprobar puertos y diagnosticar falta de memoria.

Cloud-managed y self-hosted

El hosting cloud-managed proporciona un panel listo para usar: el usuario elige el juego, pulsa el botón de inicio y obtiene acceso a los registros y al administrador de archivos. Es conveniente si el servidor se necesita por poco tiempo o el administrador no desea ocuparse de Linux. Entre las desventajas pueden estar las limitaciones de mods, recursos adicionales de pago, la dependencia de las funciones del panel y un menor control sobre las copias de seguridad.

Un VPS self-hosted requiere más configuración manual, pero permite controlar el SO, systemd, firewall, la estructura de archivos, el calendario de copias de seguridad y el conjunto de mods. Un VPS es adecuado para un pequeño grupo estable de amigos si está dispuesto a supervisar por su cuenta las actualizaciones y la seguridad.

Un servidor doméstico sigue siendo una alternativa. Puede ser más barato si ya dispone de equipo, pero para partidas públicas necesitará un upload estable, reenvío de puertos, una IP pública o un túnel, así como protección contra interrupciones. Para jugadores de distintas regiones, normalmente es más sencillo colocar un VPS cerca de la mayoría de los participantes.

Particularidades de los mods

Los mods de Valheim pueden ser de cliente, de servidor y combinados. Un mod de cliente modifica la interfaz o el comportamiento local y puede no ser necesario en el servidor. Un mod de servidor funciona en el proceso del dedicated server. Un mod combinado debe instalarse tanto en el servidor como en cada cliente con una versión compatible.

BepInEx es un cargador de plugins, no una garantía universal de compatibilidad. El simple hecho de iniciar BepInEx no significa que cualquier mod funcione en Linux o en un servidor headless. Antes de instalarlo, lea los requisitos del mod, la versión de Valheim, la lista de dependencias y los comentarios sobre dedicated server.

4. Qué configuración de VPS se necesita para esta tarea

Схема: 4. Какой VPS-конфиг нужен под эту задачу
Esquema: 4. Qué configuración de VPS se necesita para esta tarea

Cuánta RAM necesita Valheim para 10 jugadores

No existe una cifra oficial fija de «RAM por jugador». El consumo depende de la versión del juego, el tamaño del mundo, la cantidad de zonas abiertas, el número de construcciones, animales, objetos, mods y el tiempo de funcionamiento del proceso. Para un servidor limpio con diez jugadores, es razonable comenzar con 4–6 GB de RAM, pero 6–8 GB proporcionan una reserva notablemente mayor.

En un VPS con 4 GB de RAM, reserve al menos 700–1000 MB para el sistema y los procesos de servicio. Si instala mods grandes, añade monitorización, un agente de copias de seguridad o varias instancias del juego, la reserva desaparecerá rápidamente. Swap ayuda a superar un pico breve, pero no sustituye la memoria física: con swap activo de forma constante, el proceso del juego empezará a experimentar retrasos.

Configuración práctica

Componente Mínimo Recomendado para 10 jugadores
CPU 2 vCPU, alta frecuencia 4 vCPU, arquitectura moderna
RAM 4 GB 8 GB
Disco 40 GB SSD 60–80 GB SSD NVMe
Red 100 Mbit/s, sin límite de tráfico estricto Puerto de 1 Gbit/s, tráfico mensual suficiente
SO Ubuntu Server 24.04 LTS x86_64 Ubuntu Server 24.04 LTS x86_64

Como una de las opciones, puede elegir un VPS con estas características: 4 vCPU, 8 GB de RAM, SSD NVMe desde 60 GB e IPv4 pública. Para un servidor de juegos, es recomendable confirmar que el plan no tenga una limitación estricta de tráfico saliente y que permita UDP entrante.

Cuándo se necesita un dedicated

No se necesita un servidor físico dedicado solo por tener diez jugadores. Un VPS será más racional si se ejecuta un único mundo, no hay modpacks pesados y se aceptan CPU virtuales. Conviene considerar un dedicated con varios mundos independientes, un gran número de jugadores simultáneos, mods pesados de servidor, requisitos de rendimiento garantizado o la necesidad de aislar completamente los recursos de otros usuarios.

Para un único servidor de Valheim con diez jugadores, un dedicated suele ser excesivo. Sus ventajas se manifiestan cuando utiliza los recursos libres para varios servicios de juego, CI, monitorización o almacenamiento de archivos. En ese caso, tenga en cuenta no solo la RAM, sino también la reserva de CPU para cada proceso.

Elección de ubicación

Elija la región según la latencia hasta el grupo principal de jugadores, y no solo por la distancia geográfica. Una latencia de 30–60 ms suele ser cómoda, pero la estabilidad de la ruta y la ausencia de pérdida de paquetes son más importantes que la diferencia entre 40 y 50 ms. Compruebe la ruta con los comandos ping y mtr desde varias redes de clientes.

Si los jugadores están en distintos países, coloque el servidor más cerca del centro de su distribución. Para Valheim no suele ser necesaria una latencia extremadamente baja como en un shooter competitivo; sin embargo, los picos de latency, packet loss y un canal saturado provocan desincronización y retrasos al interactuar con objetos.

5. Preparación del servidor

Esquema: 5. Preparación del servidor
Esquema: 5. Preparación del servidor

Acceso mediante SSH y creación del usuario

Después de recibir el VPS, conéctese con el usuario administrativo temporal. No ejecute el servidor del juego como root: un error en un mod o script obtendría entonces permisos adicionales sobre el sistema de archivos.

# Actualizamos el índice de paquetes e instalamos las actualizaciones
sudo apt update && sudo apt full-upgrade -y

# Creamos un usuario del sistema independiente para Valheim
sudo adduser --disabled-password --gecos "" valheim

# Creamos el directorio de la aplicación y asignamos el propietario
sudo install -d -o valheim -g valheim /opt/valheim/server /opt/valheim/data /opt/valheim/backups

# Añadimos el usuario administrativo al grupo sudo
sudo usermod -aG sudo deploy

Reemplace deploy por el nombre real de su usuario administrativo. Si el proveedor solo ha proporcionado root, cree un usuario normal y añádalo al grupo sudo antes de desactivar el acceso de root.

Claves SSH

En el equipo local, genere una clave Ed25519 si aún no dispone de una. Una passphrase protegida reduce el riesgo de compromiso en caso de robo del archivo de clave privada.

# Se ejecuta en su equipo de trabajo
ssh-keygen -t ed25519 -C "valheim-admin"

# Copiamos la clave pública al servidor
ssh-copy-id deploy@SERVER_IP

# Comprobamos el acceso mediante la clave
ssh deploy@SERVER_IP

Después de realizar la comprobación, abra la configuración de SSH y prohíba el acceso mediante contraseña y directamente como root. Antes de reiniciar el servicio, mantenga abierta la sesión SSH actual y compruebe la nueva.

# Abrimos la configuración de SSH
sudoedit /etc/ssh/sshd_config.d/10-hardening.conf
PermitRootLogin no
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
AllowUsers deploy
# Comprobamos la sintaxis y volvemos a cargar la configuración de SSH
sudo sshd -t && sudo systemctl reload ssh

Firewall

Valheim Dedicated Server utiliza un rango de puertos que comienza con el puerto base, 2456 de forma predeterminada. En la práctica, abra los puertos UDP 2456–2458. Limite SSH a su IP si es estática; de lo contrario, deje SSH abierto para las direcciones desde las que administre el servidor y utilice siempre claves.

# Instalamos los paquetes básicos, UFW y fail2ban
sudo apt install -y ca-certificates curl wget unzip tar jq htop tmux \
    ufw fail2ban chrony rsync restic unattended-upgrades

# Permitimos SSH y los puertos UDP del juego
sudo ufw allow from YOUR_ADMIN_IP to any port 22 proto tcp
sudo ufw allow 2456:2458/udp

# Activamos el firewall con una política de denegación de conexiones entrantes
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw --force enable

# Comprobamos las reglas
sudo ufw status verbose

Si su IP administrativa cambia, en lugar de la regla con una dirección específica puede utilizar sudo ufw allow 22/tcp, pero esto aumentará la cantidad de escaneos automatizados. No es necesario abrir los puertos del juego mediante TCP «por si acaso»: utilice el protocolo indicado en la documentación y en los registros reales.

Configuración de fail2ban

Fail2ban analiza los registros y bloquea temporalmente las direcciones con repetidos intentos fallidos de acceso SSH. No protege Valheim contra ataques dentro del juego ni sustituye a las actualizaciones, pero reduce el ruido de los intentos de adivinar contraseñas.

# Creamos la configuración local de jail para SSH
sudo tee /etc/fail2ban/jail.d/sshd.local >/dev/null <<'EOF'
[sshd]
enabled = true
port = 22
backend = systemd
maxretry = 5
findtime = 10m
bantime = 1h
EOF

# Iniciamos fail2ban y lo añadimos al inicio automático
sudo systemctl enable --now fail2ban

# Comprobamos el estado de la protección SSH
sudo fail2ban-client status sshd

Swap y utilidades básicas

En un VPS con 4–8 GB de RAM se puede crear un archivo swap de 2 GB. Esto no acelera el juego, pero reduce el riesgo de finalización inesperada del proceso durante un pico breve. No configure demasiado swap en un disco lento y controle el valor de vm.swappiness.

# Creamos un archivo swap de 2 GB si aún no se ha configurado swap
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile

# Hacemos que swap sea permanente después de reiniciar
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

# Comprobamos la memoria y swap
free -h
swapon --show

Compruebe la hora del servidor: un reloj correcto es necesario para los registros, los certificados y la programación de las copias de seguridad.

# Activamos la sincronización horaria
sudo systemctl enable --now chrony

# Comprobamos el estado del reloj
timedatectl status

6. Instalación de Valheim y mods paso a paso

Esquema: 6. Instalación de Valheim y mods paso a paso
Esquema: 6. Instalación de Valheim y mods paso a paso

Paso 1. Instalación de SteamCMD

Para Linux dedicated server se utiliza SteamCMD. En Ubuntu 24.04, active la arquitectura i386, ya que algunas bibliotecas de SteamCMD tienen dependencias de 32 bits. Los comandos siguientes instalan SteamCMD desde el repositorio de Ubuntu.

# Activamos la arquitectura de 32 bits para las dependencias de SteamCMD
sudo dpkg --add-architecture i386

# Actualizamos la lista de paquetes
sudo apt update

# Instalamos SteamCMD y las bibliotecas necesarias
sudo apt install -y steamcmd libc6:i386 libstdc++6:i386

En algunas imágenes de Ubuntu, el paquete SteamCMD solicita aceptar la licencia en modo interactivo. Si la instalación termina con un error de licencia, repita el comando en una sesión SSH interactiva y confirme las condiciones.

Paso 2. Creación del directorio y descarga del servidor

La aplicación Valheim Dedicated Server tiene el Steam App ID 896660. Ejecute SteamCMD con el usuario valheim para que todos los archivos obtengan inmediatamente el propietario correcto.

# Descargamos o actualizamos el dedicated server de Valheim
sudo -u valheim /usr/games/steamcmd \
    +force_install_dir /opt/valheim/server \
    +login anonymous \
    +app_update 896660 validate \
    +quit

SteamCMD descargará la última versión del servidor disponible en la rama pública. El comando validate comprueba la integridad de los archivos y puede tardar varios minutos. La ejecución repetida de este comando se utiliza para actualizarlo.

Paso 3. Preparación del directorio de partidas guardadas

Es preferible trasladar las partidas guardadas del servidor a un directorio independiente. Esto permite actualizar o sustituir los archivos de la aplicación sin afectar al mundo. En Linux Valheim utiliza la variable VALHEIM_INSTALL_ROOT para que el proceso sepa dónde se encuentran los datos del servidor.

# Comprobamos que existe el archivo ejecutable del servidor
sudo -u valheim test -x /opt/valheim/server/valheim_server.x86_64 \
    && echo "Valheim server binary is present"

# Comprobamos el propietario de los directorios
sudo chown -R valheim:valheim /opt/valheim/server /opt/valheim/data

# Creamos el directorio para los registros
sudo install -d -o valheim -g valheim /var/log/valheim

Paso 4. Primer inicio sin systemd

Antes de crear un servicio permanente, es útil realizar un breve inicio manual. Así podrá ver directamente en el terminal cualquier error de dependencias o argumentos incorrectos.

# Iniciamos el servidor de prueba en una sesión independiente del usuario valheim
sudo -u valheim env VALHEIM_INSTALL_ROOT=/opt/valheim/server \
    /opt/valheim/server/valheim_server.x86_64 \
    -name "Valheim Test" \
    -port 2456 \
    -world "DedicatedWorld" \
    -password "ChangeThisPassword123" \
    -public 1

La contraseña debe cumplir los requisitos del juego y no coincidir con la contraseña de SSH ni con la del panel del proveedor. Para detener el proceso de prueba, utilice Ctrl+C. No inserte la contraseña real en registros públicos, en el historial de comandos ni en el artículo.

Paso 5. Instalación de BepInExPack Valheim

Para un servidor modificado necesitará una compilación compatible con Linux de BepInExPack Valheim. Descargue el archivo únicamente desde la página oficial del proyecto en Thunderstore o desde otra fuente enlazada por el autor de la versión. No es posible fijar de forma fiable la URL de una versión concreta en un artículo general: cambia cuando se publican nuevas compilaciones.

Descargue el archivo en el equipo local, compruebe la suma de comprobación si el autor la publica y transfiéralo al servidor. A continuación, el nombre del archivo es ilustrativo; sustitúyalo por el nombre real del archivo descargado.

# En el equipo local transferimos el archivo de BepInEx al servidor
scp BepInExPack_Valheim-.zip deploy@SERVER_IP:/tmp/

# En el servidor creamos un directorio temporal para la extracción
sudo install -d -o valheim -g valheim /tmp/bepinex-valheim

# Extraemos el archivo en el directorio temporal
sudo unzip -q /tmp/BepInExPack_Valheim-.zip -d /tmp/bepinex-valheim

# Revisamos la estructura del archivo antes de copiarlo
find /tmp/bepinex-valheim -maxdepth 3 -type f | sort | head -50

En distintas versiones, el archivo puede contener un directorio adicional como BepInExPack_Valheim. Copie el contenido exactamente del directorio donde se encuentran BepInEx, doorstop_config.ini y el archivo de carga. Ejemplo con una estructura habitual:

# Copiamos los archivos del cargador al directorio del dedicated server
sudo cp -a /tmp/bepinex-valheim/BepInExPack_Valheim/. /opt/valheim/server/

# Corregimos el propietario de todos los archivos del servidor modificado
sudo chown -R valheim:valheim /opt/valheim/server

# Comprobamos que existe el directorio de plugins
sudo -u valheim mkdir -p /opt/valheim/server/BepInEx/plugins

Compruebe siempre la ruta dentro del archivo con el comando find. Si copia el directorio externo completo en el lugar equivocado, Valheim se iniciará sin BepInEx y dará la impresión de que el mod «no funciona».

Paso 6. Instalación de un mod del servidor

Instale cada mod siguiendo las instrucciones de su autor. Normalmente, el archivo DLL se coloca en /opt/valheim/server/BepInEx/plugins, y la configuración aparece en BepInEx/config después del primer inicio. Las dependencias, como una biblioteca de uso general, también se copian en el directorio correspondiente.

# Transferimos el mod DLL al servidor desde el equipo local
scp ExampleServerMod.dll deploy@SERVER_IP:/tmp/

# Copiamos el mod al directorio de plugins como root
sudo install -o valheim -g valheim -m 0644 \
    /tmp/ExampleServerMod.dll \
    /opt/valheim/server/BepInEx/plugins/ExampleServerMod.dll

# Comprobamos la lista de plugins instalados
sudo -u valheim find /opt/valheim/server/BepInEx/plugins \
    -maxdepth 1 -type f -name '.dll' -printf '%f\n'

No descargue DLL aleatorias de archivos adjuntos de foros ni instale mods con el mismo nombre sin comprobar su origen. El plugin tiene los permisos del proceso de Valheim y potencialmente puede leer o modificar los archivos disponibles para el usuario valheim.

Paso 7. Compatibilidad de los mods con los clientes

Elabore una lista sencilla: nombre del mod, versión exacta, dependencias, si lo necesita el cliente, si lo necesita el servidor y fecha de instalación. Los mods de comandos y de contenido suelen requerir el mismo conjunto en todos los clientes. Si la versión de la DLL del cliente difiere de la del servidor, pueden producirse errores RPC, desaparición de objetos o imposibilidad de iniciar sesión.

# Guardamos un inventario de los archivos de mods antes de actualizar
sudo -u valheim find /opt/valheim/server/BepInEx \
    -type f \( -name '.dll' -o -name '.cfg' \) -print0 \
    | sort -z | xargs -0 sha256sum \
    | sudo tee /opt/valheim/data/mod-files.sha256

7. Configuración, inicio y comprobación

Diagrama: 7. Configuración, inicio y comprobación
Diagrama: 7. Configuración, inicio y comprobación

Archivo de variables de entorno

La contraseña y los parámetros del mundo no deben almacenarse directamente en la unidad de systemd, accesible para todos los usuarios. Cree el archivo /etc/valheim/valheim.env con permisos solo para root y el grupo valheim. Systemd podrá leerlo al iniciarse, y un usuario normal no verá el secreto sin privilegios administrativos.

# Создаём защищённый каталог конфигурации
sudo install -d -o root -g valheim -m 0750 /etc/valheim

# Создаём файл переменных окружения
sudo tee /etc/valheim/valheim.env >/dev/null <<'EOF'
VALHEIM_NAME=Friends Valheim
VALHEIM_PORT=2456
VALHEIM_WORLD=DedicatedWorld
VALHEIM_PASSWORD=replace-with-a-long-game-password
VALHEIM_PUBLIC=1
VALHEIM_SAVE_DIR=/opt/valheim/data
EOF

# Запрещаем чтение файла посторонним пользователям
sudo chown root:valheim /etc/valheim/valheim.env
sudo chmod 0640 /etc/valheim/valheim.env

No utilice espacios, comillas ni caracteres que puedan ser interpretados por el shell en la contraseña, a menos que comprenda las reglas de los archivos de entorno de systemd. La contraseña del servidor de juego no debe ser más corta que el requisito mínimo de la versión actual de Valheim.

Unidad de systemd

Systemd proporciona inicio automático después de reiniciar, detención correcta y acceso al registro mediante journalctl. El parámetro Restart=on-failure resulta útil en caso de un fallo inesperado, pero no debe ocultar un mod incompatible: analice primero los registros.

# Создаём службу dedicated server
sudo tee /etc/systemd/system/valheim.service >/dev/null <<'EOF'
[Unit]
Description=Valheim Dedicated Server
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=valheim
Group=valheim
WorkingDirectory=/opt/valheim/server
EnvironmentFile=/etc/valheim/valheim.env
Environment=VALHEIM_INSTALL_ROOT=/opt/valheim/server
ExecStart=/opt/valheim/server/valheim_server.x86_64 -name "${VALHEIM_NAME}" -port ${VALHEIM_PORT} -world "${VALHEIM_WORLD}" -password "${VALHEIM_PASSWORD}" -public ${VALHEIM_PUBLIC} -savedir "${VALHEIM_SAVE_DIR}"
Restart=on-failure
RestartSec=15
KillSignal=SIGINT
TimeoutStopSec=120
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

# Перечитываем unit-файлы systemd
sudo systemctl daemon-reload

# Запускаем сервер и добавляем его в автозагрузку
sudo systemctl enable --now valheim.service

# Проверяем состояние службы
sudo systemctl status valheim.service --no-pager

Si una compilación específica del servidor no acepta el parámetro -savedir, elimínelo de ExecStart y configure el directorio de guardados mediante una variable o mecanismo compatible con esa versión. Compruebe la ayuda real del propio binario y no copie argumentos de una guía para otra versión.

Registros y comprobación del proceso

# Смотрим последние 100 строк журнала
sudo journalctl -u valheim.service -n 100 --no-pager

# Следим за журналом в реальном времени
sudo journalctl -u valheim.service -f

# Проверяем запущенный процесс и использование памяти
ps -o pid,user,%cpu,%mem,rss,etime,cmd -C valheim_server.x86_64
free -h
df -h /opt/valheim

# Проверяем, слушаются ли игровые UDP-порты
sudo ss -lunp | grep -E '2456|2457|2458'

Un inicio correcto no siempre significa que el servidor sea accesible desde Internet. Compruebe localmente que el proceso escucha los puertos y después asegúrese de que UFW y el firewall de red del proveedor permiten UDP 2456–2458. En el cliente, conéctese mediante la lista de servidores o agregando directamente la dirección en la interfaz de Steam.

Comprobación de recursos

Durante la prueba, inicie varios clientes, cargue territorios nuevos y observe los valores máximos de RSS y swap. Si la RAM permanece ocupada de forma estable por encima del 85–90 por ciento, primero elimine los mods no utilizados y compruebe posibles fugas; después aumente el plan.

# Устанавливаем интерактивный монитор процессов
sudo apt install -y sysstat

# Проверяем нагрузку CPU, память и swap
vmstat 5 12

# Смотрим нагрузку по CPU и дисковую активность
iostat -xz 5 6

Gestión de la configuración de mods

Tras el primer inicio, BepInEx normalmente crea configuraciones en /opt/valheim/server/BepInEx/config. Detenga el servidor antes de editar si el mod no admite cambios en caliente. Copie las configuraciones en un directorio independiente o en un sistema de control de versiones sin secretos.

# Останавливаем сервер перед изменением конфигурации
sudo systemctl stop valheim.service

# Создаём снимок конфигурации модов
sudo tar -C /opt/valheim/server -czf \
    /opt/valheim/data/bepinex-config-$(date +%F-%H%M).tar.gz \
    BepInEx/config BepInEx/plugins

# После изменений запускаем сервер
sudo systemctl start valheim.service

TLS y HTTPS para la página de servicio

Valheim no utiliza HTTPS para la conexión de juego, por lo que no se necesita un certificado TLS para los puertos UDP del juego. Si publica una página web de estado independiente, un webhook o un panel de monitorización, no lo exponga directamente sin protección. La opción más sencilla es un reverse proxy Caddy con certificado automático para el dominio.

No publique la contraseña de Valheim ni las API administrativas en un endpoint público de estado. Para el panel, utilice autenticación independiente, restricción por IP o VPN. Si no necesita el servicio web, no instale Caddy en absoluto: la ausencia de un servicio público adicional reduce la superficie de ataque.

# Устанавливаем Caddy из официального репозитория проекта
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl

curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' \
    | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg

curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' \
    | sudo tee /etc/apt/sources.list.d/caddy-stable.list

sudo apt update && sudo apt install -y caddy
# /etc/caddy/Caddyfile
status.example.org {
    reverse_proxy 127.0.0.1:8080
    encode gzip
}
# Проверяем конфигурацию и перезапускаем Caddy
sudo caddy validate --config /etc/caddy/Caddyfile
sudo systemctl reload caddy

# Открываем HTTPS только если веб-сервис действительно нужен
sudo ufw allow 443/tcp

Para obtener el certificado, el dominio debe apuntar al VPS y el puerto TCP entrante 443 debe estar disponible. No abra el puerto 80 sin necesidad si el método de emisión de certificados elegido no lo requiere; Caddy normalmente lo utiliza para la comprobación HTTP automática y la redirección.

8. Copias de seguridad y mantenimiento

Diagrama: 8. Copias de seguridad y mantenimiento
Diagrama: 8. Copias de seguridad y mantenimiento

Qué guardar

Los archivos del mundo, de los personajes y la configuración del servidor son críticos. Según la versión de Valheim y los parámetros de inicio, se encuentran en el directorio definido por -savedir, mientras que en la configuración estándar pueden usar el directorio de perfil del usuario. Determine siempre la ruta real según los parámetros de inicio y la hora de modificación de los archivos.

  • Archivos de mundo con las extensiones .db y .fwl.
  • Archivos de personajes, si el servidor o el entorno los almacena localmente.
  • /etc/valheim/valheim.env, pero solo en almacenamiento cifrado.
  • BepInEx/config y la lista de complementos DLL.
  • La unidad de systemd y la configuración del firewall.
  • La lista de versiones de Valheim, BepInEx y los mods.

Una copia de seguridad en el mismo disco no protege contra fallos del disco, eliminación del directorio o compromiso del VPS. El esquema mínimo es una copia local diaria más una copia en almacenamiento externo compatible con S3 o en un servidor independiente. Pruebe la restauración: un archivo que nunca se ha abierto no puede considerarse una copia de seguridad verificada.

Detención correcta antes de copiar

El mundo puede escribirse durante el juego. Antes de una copia de seguridad completa, es mejor detener el servicio, copiar los datos y volver a iniciarlo. Para diez jugadores, una breve ventana de mantenimiento suele ser preferible a un guardado potencialmente dañado.

# Создаём каталог для ежедневных архивов
sudo install -d -o valheim -g valheim -m 0750 /opt/valheim/backups

# Останавливаем сервер и ждём завершения процесса
sudo systemctl stop valheim.service

# Архивируем сохранения и конфигурацию модов
sudo tar -C /opt/valheim -czf \
    /opt/valheim/backups/valheim-$(date +%F-%H%M).tar.gz \
    data server/BepInEx/config server/BepInEx/plugins

# Запускаем сервер после завершения копирования
sudo systemctl start valheim.service

# Удаляем локальные архивы старше 14 дней
sudo find /opt/valheim/backups -type f -name '.tar.gz' -mtime +14 -delete

Este escenario de archivado debe ejecutarse con permisos que permitan detener el servicio de systemd y leer el directorio. Para la automatización, cree un script root independiente con una ruta fija, en lugar de permitir que el usuario del juego ejecute comandos arbitrarios como root.

Script sencillo para cron

# Создаём скрипт резервного копирования
sudo tee /usr/local/sbin/backup-valheim.sh >/dev/null <<'EOF'
#!/usr/bin/env bash
set -euo pipefail

SERVICE="valheim.service"
ROOT="/opt/valheim"
DEST="$ROOT/backups"
STAMP="$(date +%F-%H%M%S)"
ARCHIVE="$DEST/valheim-$STAMP.tar.gz"

mkdir -p "$DEST"
systemctl stop "$SERVICE"
trap 'systemctl start "$SERVICE"' EXIT

tar -C "$ROOT" -czf "$ARCHIVE" \
    data server/BepInEx/config server/BepInEx/plugins

find "$DEST" -type f -name 'valheim-.tar.gz' -mtime +14 -delete
EOF

# Ограничиваем запуск скрипта и делаем его исполняемым
sudo chown root:root /usr/local/sbin/backup-valheim.sh
sudo chmod 0750 /usr/local/sbin/backup-valheim.sh

# Добавляем ежедневный запуск в 04:15
echo '15 4    root /usr/local/sbin/backup-valheim.sh >> /var/log/valheim-backup.log 2>&1' \
    | sudo tee /etc/cron.d/valheim-backup

El script utiliza trap, por lo que el servicio se iniciará incluso si ocurre un error tras detenerlo, pero siga comprobando las notificaciones y el tamaño de los archivos. Si el archivo debe enviarse a S3, añada restic después del archivo local. El repositorio de restic debe tener una contraseña independiente y no almacenarla en texto plano en un directorio compartido.

Restic en almacenamiento externo

# Инициализация выполняется один раз с защищёнными переменными
export AWS_ACCESS_KEY_ID='replace-me'
export AWS_SECRET_ACCESS_KEY='replace-me'
export RESTIC_PASSWORD='replace-with-a-long-repository-password'
export RESTIC_REPOSITORY='s3:https://s3.example.org/valheim-backups'

# Создаём restic-репозиторий
sudo -E restic init

# Загружаем сохранения и конфигурацию
sudo -E restic backup /opt/valheim/data /opt/valheim/server/BepInEx/config

# Удаляем старые точки восстановления и проверяем репозиторий
sudo -E restic forget --keep-daily 14 --keep-weekly 8 --keep-monthly 6 --prune
sudo -E restic check

Para un funcionamiento permanente, guarde las variables de restic en un archivo con permisos 0600 o utilice un gestor de secretos. No añada dicho archivo a Git ni pase claves en la línea de comandos si pueden aparecer en el historial del shell o en la lista de procesos.

Actualización de Valheim y mods

Valheim no tiene una actualización progresiva clásica para un único mundo de juego: funcionan simultáneamente una versión del proceso y un conjunto de archivos. Utilice una ventana de mantenimiento. Avise a los jugadores, detenga el servidor, haga una copia de seguridad, actualice los archivos mediante SteamCMD y luego actualice uno por uno los mods incompatibles.

# Останавливаем сервер перед обновлением
sudo systemctl stop valheim.service

# Обновляем dedicated server и проверяем файлы
sudo -u valheim /usr/games/steamcmd \
    +force_install_dir /opt/valheim/server \
    +login anonymous \
    +app_update 896660 validate \
    +quit

# Просматриваем новые ошибки до запуска в обычном режиме
sudo systemctl start valheim.service
sudo journalctl -u valheim.service -n 150 --no-pager

Si el juego se ha actualizado pero el mod todavía no, es más seguro eliminar temporalmente el complemento problemático e iniciar el servidor vanilla que intentar usar una DLL incompatible en el mundo principal. Para experimentar, cree una copia del mundo con otro nombre y pruebe el paquete de mods en ella.

9. Solución de problemas y preguntas frecuentes

El servidor no aparece en la lista, aunque el servicio está en ejecución. ¿Qué comprobar?

Primero ejecute systemctl status valheim y asegúrese de que el proceso no se reinicia en bucle. Luego compruebe ss -lunp | grep 2456, las reglas de ufw status y el firewall externo del proveedor. Abra UDP 2456–2458, compruebe que el IPv4 público sea correcto y no utilice una regla TCP en lugar de UDP. Si el servidor está oculto, compruebe el parámetro -public 1 e intente una conexión directa mediante Steam.

¿Qué configuración mínima de VPS sirve para 10 jugadores?

Para Valheim sin modificaciones y un grupo pequeño, basta con un VPS de 2 vCPU, 4 GB de RAM, SSD desde 40 GB e IPv4 público. Es el límite inferior, no un estándar universal cómodo: durante la generación del mundo y al usar mods, la memoria libre puede agotarse rápidamente. Una opción más segura es 4 vCPU y 8 GB de RAM. Deje al menos 1–2 GB de reserva, controle el swap y aumente el plan según las mediciones, no según suposiciones.

¿Qué elegir: VPS o dedicated para esta tarea?

Para un mundo de Valheim con diez jugadores, normalmente basta con un VPS. Es más económico, se escala con mayor facilidad y no requiere administrar un servidor físico. Un dedicated se justifica si se ejecutan varios mundos, modpacks pesados, otros juegos o se necesita rendimiento garantizado sin la influencia de máquinas virtuales vecinas. Primero mida el CPU steal time, la RAM, la latencia de disco y las pérdidas de red en el VPS; cambie a dedicated si precisamente estos indicadores generan el problema.

El mod está instalado, pero BepInEx no lo carga. ¿Cuál es la causa?

Compruebe la ubicación de la DLL: el plugin del servidor normalmente debe estar directamente en /opt/valheim/server/BepInEx/plugins, y no en un directorio anidado dentro del archivo. Revise el registro journalctl -u valheim y los archivos en BepInEx/LogOutput.log. Compruebe el propietario, la arquitectura de la compilación de Linux, las dependencias y la compatibilidad con la versión actual de Valheim. Después de modificar los plugins, reinicie completamente el servicio, no solo vuelva a conectarse con el cliente.

Los jugadores son expulsados, aparecen retrasos y desincronización. ¿Qué medir?

Primero compare la carga de CPU, RSS, swap y la latencia del disco en el momento del problema: vmstat 5, iostat -xz 5 y journalctl. Desde el cliente ejecute mtr -rw SERVER_IP para encontrar pérdidas de paquetes y saltos en la ruta. Dentro del juego, la causa también puede ser miles de construcciones, objetos, animales o un mod que crea una gran cantidad de objetos. Aumentar la RAM no solucionará la pérdida de paquetes ni un único CPU sobrecargado.

Después de reiniciar, el mundo se inicia vacío o se revierte. ¿Cómo restaurarlo?

No continúe jugando en un estado dañado para no sobrescribir la copia funcional. Detenga el servicio y determine el directorio real de guardados a partir de ExecStart, la variable VALHEIM_SAVE_DIR y los registros. Compare las fechas de los archivos .db y .fwl, luego restaure el último par verificado desde el archivo. Después de restaurar, inicie el servidor con el mismo nombre de mundo y los mismos mods que se utilizaron al crear el backup.

¿Se pueden instalar mods solo en el servidor?

A veces sí, pero depende del tipo de mod. Los plugins de servidor que modifican reglas, comandos o el guardado del mundo pueden funcionar solo en el dedicated server. Los mods que añaden interfaz de cliente, efectos visuales o nuevos mensajes de red normalmente requieren instalación en todos los clientes. Consulte las instrucciones del proyecto específico. Mantenga las mismas versiones de DLL y dependencias, de lo contrario algunos jugadores pueden recibir errores de inicio de sesión o un estado incorrecto del mundo.

¿Se necesita HTTPS para un servidor de juego Valheim?

No. El dedicated server de juego utiliza sus propios protocolos de red y puertos UDP, y HTTPS no cifra ni gestiona este tráfico. TLS solo es necesario para un panel web independiente, status endpoint, webhook o monitorización, si están disponibles mediante un dominio. Dicho servicio debe proxificarse mediante Caddy u otro reverse proxy, cerrar las rutas administrativas y no publicar secretos del juego. Si no hay interfaz web, basta con no abrir TCP 80 y 443.

10. Conclusiones y próximos pasos

Схема: 10. Выводы и следующие шаги
Esquema: 10. Conclusiones y próximos pasos

Para Valheim con diez jugadores, una referencia práctica es un VPS con 4 vCPU, 8 GB de RAM y un SSD rápido. El servidor se instala mediante SteamCMD, se ejecuta con un usuario independiente bajo systemd y los mods se conectan mediante BepInEx con comprobación obligatoria de compatibilidad.

A continuación, configure la monitorización de RAM, CPU, disco y pérdidas de red, y después compruebe regularmente la restauración de los backups. Al crecer el mundo o el modpack, primero pruebe los cambios en una copia del guardado y solo después actualice el servidor de producción. Si aparecen varios mundos u otros servicios, sepárelos por servicios systemd y revise los límites de recursos.

¿Te fue útil esta guía?

Tus comentarios nos ayudan a mejorar nuestras guías.

Compartir esta publicación:

Envía esta guía a alguien a quien pueda resultarle útil.

Telegram VKVK WhatsApp Facebook LinkedIn XX

servidor valheim: cuánta RAM para 10 jugadores y cómo instalar mods
support_agent
Valebyte Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.