Servidor de V Rising en VPS: paso a paso
Servidores de jogos · Por Kevin Marcondes · Publicado el · Actualizado el · 9 min de lectura
¿Quieres jugar con amigos en un mundo persistente? Aprende a desplegar un servidor de V Rising en una VPS con Ubuntu, instalando mediante SteamCMD y ejecutando el binario con Wine. Abrirás los puertos correctos, configurarás ServerHostSettings.json, crearás un servicio systemd y validarás la conexión desde el cliente del juego. Es un paso a paso directo y práctico.
Requisitos previos y dimensionamiento de recursos
El tutorial usa Ubuntu Server 22.04 LTS (64 bits) en una VPS con IPv4 público y acceso SSH. Necesitarás privilegios de root para instalar paquetes y crear servicios.
Abre los puertos UDP del juego tanto en el panel del proveedor como en el sistema operativo: 9876 (GamePort) y 9877 (QueryPort). Si habilitas RCON, libera también la puerta TCP que configures.
Elige la VPS teniendo en cuenta CPU, RAM, disco y tráfico. A continuación, sugerencias iniciales (ajusta según mods, mapa, ticks y número de jugadores):
Si planteas empaquetar el servidor en contenedores, compara pros y contras de VMs vs contenedores en Docker vs máquinas virtuales para HA.
- IPv4 público y puerto 22/TCP abierto para SSH.
- UDP 9876 y 9877 abiertos en el proveedor y en el sistema (ufw/iptables).
- Disco SSD y buenas IOPS para saves y autosaves.
- Backups regulares del directorio de saves.
- Ventana de mantenimiento para actualizar el binario vía SteamCMD.
| Jugadores simultáneos | vCPU sugerido | RAM sugerida | Almacenamiento / IOPS |
|---|---|---|---|
| 2–6 | 2 vCPU | 4 GB | SSD, ~10–20 GB libres |
| 7–16 | 3–4 vCPU | 6–8 GB | SSD rápido, ~20–40 GB |
| 17–30 | 4–6 vCPU | 8–12 GB | SSD rápido, ~40–80 GB |
1) Preparar la VPS: usuario, actualizaciones y firewall
Ejecuta las actualizaciones, crea un usuario dedicado (steam) y habilita el firewall liberando SSH y los puertos de V Rising. Cuidado al tocar el firewall remoto: siempre mantén la sesión SSH abierta para evitar bloquear el acceso.
En el panel del proveedor, revisa también las reglas de firewall/VPC. Ayuda: Grupos de seguridad de AWS y Firewall de VPC en GCP.
# Atualizar sistema
sudo apt update && sudo apt -y upgrade
# Criar usuário dedicado sem shell de login interativo
sudo adduser --disabled-login --gecos "" steam
# UFW: liberar SSH e portas do V Rising (UDP)
sudo apt -y install ufw
sudo ufw allow 22/tcp
sudo ufw allow 9876/udp
sudo ufw allow 9877/udp
# (Opcional) se usar RCON, ajuste a porta TCP correspondente
# sudo ufw allow 25575/tcp
sudo ufw --force enable
# Diretórios do servidor
sudo mkdir -p /srv/vrising/save-data
sudo chown -R steam:steam /srv/vrising
2) Instalar SteamCMD y Wine en Ubuntu
Vamos a instalar SteamCMD (cliente de línea de comandos de Steam) y Wine para ejecutar el binario del servidor (Windows) en Linux. Esto requiere paquetes de 32 bits para compatibilidad.
Tras la instalación, el steamcmd quedará disponible en /usr/games/steamcmd.
# Habilitar arquitetura i386 e repositório multiverse (para steamcmd)
sudo dpkg --add-architecture i386
sudo add-apt-repository multiverse -y
sudo apt update
# Instalar SteamCMD, Wine e dependências comuns
sudo apt install -y steamcmd wine64 wine32:i386 winbind lib32gcc-s1
# Verificações rápidas (opcional)
/usr/games/steamcmd +quit
wine64 --version
3) Descargar y actualizar el servidor con SteamCMD
Instala el VRising Dedicated Server en /srv/vrising. En muchos casos el login anónimo funciona. Si aparece un error de autorización, autentícate con tu cuenta Steam usando steamcmd.
Para ejecutar comandos como el usuario steam, usa sudo -u steam. Evita poner contraseñas en la línea de comando en máquinas compartidas; si es necesario, inicia sesión de forma interactiva dentro del prompt de steamcmd.
# Opção A: tentar login anônimo
sudo -u steam /usr/games/steamcmd \
+force_install_dir /srv/vrising \
+login anonymous \
+app_update 1829350 validate \
+quit
# Opção B: se anônimo falhar, use sua conta Steam (substitua usuário/senha)
# sudo -u steam /usr/games/steamcmd \
# +force_install_dir /srv/vrising \
# +login SEU_USUARIO SEU_PASSWORD \
# +app_update 1829350 validate \
# +quit
4) Configurar el servidor: puertos, contraseña y nombre
El servidor usa dos archivos principales de configuración: ServerHostSettings.json (nombre, puertos, contraseña, anuncio) y ServerGameSettings.json (reglas de juego). Puedes mantener los valores por defecto en VRisingServer_Data/StreamingAssets/Settings y/o usar una ruta de datos persistente.
Crea/edita ServerHostSettings.json. No uses contraseñas débiles. Ajusta GamePort/QueryPort según el firewall y guarda el archivo. Ejemplo mínimo:
- Ruta común del archivo (por defecto): /srv/vrising/VRisingServer_Data/StreamingAssets/Settings/ServerHostSettings.json
- Separar saves: usa -persistentDataPath y mantiene los JSON en /srv/vrising/save-data/Settings/
{
"Name": "MeuServidorVPS",
"Description": "Servidor privado em VPS",
"GamePort": 9876,
"QueryPort": 9877,
"MaxConnectedUsers": 10,
"MaxConnectedAdmins": 2,
"SaveName": "world1",
"Password": "troque-esta-senha",
"ListOnMasterServer": false
}
5) Crear un servicio systemd para iniciar automáticamente
Crea una unidad systemd para arrancar el servidor al iniciar la máquina y facilitar reinicios. Usaremos wine64 para ejecutar el binario Windows. Ajusta WorkingDirectory y parámetros (nombre, puertos, save).
Después de crear la unidad, recarga systemd y habilita el servicio.
# /etc/systemd/system/vrising.service
[Unit]
Description=V Rising Dedicated Server (Wine)
After=network.target
[Service]
User=steam
WorkingDirectory=/srv/vrising
Environment=WINEDEBUG=-all
ExecStart=/usr/bin/wine64 VRisingServer.exe \
-persistentDataPath /srv/vrising/save-data \
-serverName "MeuServidorVPS" \
-saveName "world1" \
-gamePort 9876 \
-queryPort 9877
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
6) Verificar el funcionamiento y conectar
Inicia el servicio y consulta los logs. Verifica que los puertos UDP estén en escucha. En el cliente del juego, conéctate usando la IP pública en el puerto GamePort (por defecto 9876).
Si hay NAT/firewall del proveedor, ajusta también las reglas externas. Sin eso, el servidor no aparecerá ni aceptará conexiones.
# Habilitar e iniciar
sudo systemctl daemon-reload
sudo systemctl enable --now vrising
# Acompanhar logs e checar portas
journalctl -u vrising -f
ss -lun | egrep '9876|9877'
Mantenimiento y problemas comunes
Mantén el binario actualizado con SteamCMD y realiza backups periódicos de los saves. En caso de error de conexión, revisa los puertos en el sistema y en el panel del proveedor. A continuación, consejos rápidos.
Para reducir costes y ajustar la capacidad en la nube al uso real, consulta reducir costos en la nube sin retrabajo. Para operación continua, considera alertas con un sistema de monitorización remoto de servidores Linux 24/7.
- Actualizar sin perder datos: para el servicio, ejecuta steamcmd +app_update 1829350 validate e inicia de nuevo.
- Backups: comprime /srv/vrising/save-data (incluye mundos y configs) y guárdalo fuera de la VPS.
- Puertos cerrados: verifica UFW/iptables y el firewall del proveedor; prueba desde fuera con nmap/udp.
- Anonymous falló en la descarga: inicia sesión en steamcmd con tu cuenta Steam.
- Lag o TPS bajos: aumenta vCPU/RAM, prioriza SSD y reduce cargas paralelas en la VPS.
- Lista pública: define ListOnMasterServer=true y asegúrate de que QueryPort esté accesible externamente.
- RCON: habilítalo sólo con contraseña fuerte y protege la puerta TCP con firewall.
Preguntas frecuentes
¿Qué puertos usa el servidor de V Rising por defecto?
Por defecto el servidor usa UDP 9876 (GamePort) y UDP 9877 (QueryPort). Si habilitas RCON, configura y abre la puerta TCP que elijas. Ajusta estos puertos en ServerHostSettings.json (GamePort/QueryPort) y ábrelos tanto en el firewall del sistema (ufw/iptables) como en el panel del proveedor para que el servidor acepte conexiones externas.
¿Necesito Windows Server o puedo usar Linux?
El binario oficial del servidor se distribuye para Windows, pero en este tutorial se ejecuta en Ubuntu usando Wine (wine64) y SteamCMD para descargar e instalar. Si prefieres evitar Wine, una VPS con Windows Server ejecutará el binario nativo; en ambos casos debes abrir los mismos puertos y aplicar reglas de firewall equivalentes.
¿Cómo actualizar sin perder el mundo?
Para actualizar sin perder el mundo, detén el servicio systemd del servidor, ejecuta steamcmd en el directorio de instalación con app_update 1829350 validate y vuelve a iniciar el servicio. Los mundos y configuraciones están en la carpeta de saves o en la ruta definida con -persistentDataPath; realiza un backup antes de actualizar para mayor seguridad.
¿Por qué mi servidor no aparece en la lista pública?
Que el servidor no aparezca en la lista pública suele ser por ListOnMasterServer=false o por bloqueo del QueryPort. Activa ListOnMasterServer=true en ServerHostSettings.json, abre el QueryPort UDP en el firewall del sistema y en el panel del proveedor y espera unos minutos a la propagación. Algunos proveedores filtran UDP por defecto; revisa esas reglas.
¿Cuántos recursos necesita la VPS para jugar sin lag?
Los recursos dependen de jugadores, mods y frecuencia de guardado. Como punto de partida, la guía sugiere 2 vCPU y 4 GB de RAM para grupos pequeños; para 10–20 jugadores recomienda 3–4 vCPU y 6–8 GB. Prioriza disco SSD con buenas IOPS y monitoriza CPU, RAM y disco para ajustar la VPS según el uso real.
¿Puedo ejecutar en Docker?
Sí es posible contenerizar el servidor, pero requiere una imagen adecuada, mapear volúmenes persistentes para saves y configurar la señalización y parada limpias del proceso. Valora trade-offs entre contenedores y VMs: Docker ofrece despliegue reproducible y menor overhead, mientras que VMs facilitan aislamiento y compatibilidad nativa con Windows si optas por esa ruta.
¿Necesitas ayuda para automatizar tu servidor?
Si quieres asistencia para estandarizar despliegues, monitorizar, automatizar backups y mantener el servidor estable, contáctame. Podemos revisar tu VPS, firewall y el servicio systemd.
Hablar sobre mi infraestructuraVer también
- Tutorial: implementar Canary releases con Traefik en Docker Compose usando headers y weighted routing para despliegues graduales de aplicaciones PHP
- Tutorial: configurar HAProxy con Let's Encrypt y healthchecks para balanceo de tráfico entre contenedores Docker en VPS (paso a paso)
- Tutorial práctico: implementar mTLS entre Nginx y microservicios usando smallstep CA en Docker Compose
- Tutorial: configurar cgroup v2 y systemd ResourceControl para limitar CPU, memoria e I/O de contenedores Docker en Debian