Acabas de contratar tu VPS. Tienes una IP, un usuario root y una contraseña. ¿Y ahora qué?
Esta guía te lleva paso a paso desde un VPS recién creado hasta un servidor seguro y listo para usar. Sin conocimientos previos de Linux, solo siguiendo los comandos.
Al terminar tendrás un VPS con usuario propio, acceso SSH con claves, firewall configurado y actualizaciones automáticas.
Antes de empezar
Lo que necesitas
- IP de tu VPS (te la dan al contratar)
- Usuario root y contraseña (en el email de bienvenida)
- Terminal SSH: En Mac/Linux ya viene. En Windows usa PuTTY o Windows Terminal
Distribución asumida
Esta guía usa Ubuntu 22.04 LTS o Debian 12, las distribuciones más comunes. Si usas otra, los comandos pueden variar ligeramente.
Paso 1: Conectar al VPS por primera vez
Abre tu terminal y conecta:
ssh root@TU_IP_DEL_VPS
Te pedirá la contraseña (no se ve mientras escribes, es normal). La primera vez preguntará si confías en el servidor, escribe yes.
Si todo va bien, verás algo como:
Welcome to Ubuntu 22.04 LTS
root@vps:~#
Ya estás dentro de tu VPS.
Paso 2: Actualizar el sistema
Lo primero siempre: actualizar paquetes.
apt update && apt upgrade -y
Esto descarga la lista de paquetes disponibles y actualiza los instalados. Puede tardar unos minutos.
Si pregunta algo sobre configuraciones, generalmente puedes aceptar la opción por defecto (Enter).
Paso 3: Crear usuario no-root
Nunca trabajes como root habitualmente. Es peligroso: un comando mal escrito puede destruir el sistema.
Crea un usuario normal (cambia tuusuario por el nombre que quieras):
adduser tuusuario
Te pedirá contraseña y algunos datos opcionales (puedes dejarlos en blanco).
Dar permisos sudo
Para que tu usuario pueda ejecutar comandos de administrador cuando lo necesite:
usermod -aG sudo tuusuario
Verificar que funciona
su - tuusuario
sudo whoami
Debe responder root. Si funciona, tu usuario tiene permisos sudo.
Vuelve a root para continuar:
exit
Paso 4: Configurar SSH con claves
Las contraseñas son vulnerables. Las claves SSH son mucho más seguras.
En tu ordenador local (no en el VPS)
Genera un par de claves si no tienes:
ssh-keygen -t ed25519 -C "[email protected]"
Pulsa Enter para aceptar la ubicación por defecto. Puedes poner una passphrase (contraseña para la clave) o dejarla vacía.
Copiar la clave al VPS
ssh-copy-id tuusuario@TU_IP_DEL_VPS
Introduce la contraseña del usuario. La clave se copiará automáticamente.
Verificar acceso con clave
ssh tuusuario@TU_IP_DEL_VPS
No debe pedir contraseña (o solo la passphrase de la clave si la pusiste).
Paso 5: Asegurar SSH
Ahora que puedes entrar con clave, desactivamos el acceso por contraseña y el login directo como root.
Conecta como tu usuario y edita la configuración de SSH:
sudo nano /etc/ssh/sshd_config
Busca y modifica estas líneas (quita el # si lo tienen):
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
Guarda (Ctrl+O, Enter) y cierra (Ctrl+X).
Reinicia SSH:
sudo systemctl restart sshd
¡Importante! Antes de cerrar esta sesión, abre otra terminal y verifica que puedes conectar:
ssh tuusuario@TU_IP_DEL_VPS
Si funciona, perfecto. Si no, revisa la configuración antes de desconectar.
Paso 6: Configurar el firewall (UFW)
UFW es un firewall simple para Ubuntu/Debian.
Instalar y configurar
sudo apt install ufw -y
Reglas básicas
# Permitir SSH (CRÍTICO: hazlo antes de activar)
sudo ufw allow ssh
# Permitir HTTP y HTTPS (si vas a tener webs)
sudo ufw allow 80
sudo ufw allow 443
# Configurar políticas por defecto
sudo ufw default deny incoming
sudo ufw default allow outgoing
Activar el firewall
sudo ufw enable
Confirmará que puede interrumpir conexiones SSH. Como ya permitiste SSH, no hay problema.
Verificar estado
sudo ufw status
Debe mostrar las reglas activas.
Paso 7: Actualizaciones automáticas de seguridad
No quieres estar pendiente de actualizar manualmente. Configura actualizaciones automáticas:
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure -plow unattended-upgrades
Selecciona “Yes” cuando pregunte.
Esto instalará automáticamente parches de seguridad sin reiniciar servicios críticos.
Paso 8: Configurar zona horaria
Configura la zona horaria correcta para tus logs:
sudo timedatectl set-timezone Europe/Madrid
Verifica:
timedatectl
Paso 9: Instalar herramientas básicas
Algunas herramientas útiles que probablemente necesitarás:
sudo apt install -y \
curl \
wget \
git \
htop \
vim \
nano \
zip \
unzip \
net-tools
- htop: Monitor de recursos visual
- git: Control de versiones
- curl/wget: Descargar archivos
- vim/nano: Editores de texto
Paso 10: Configurar hostname (opcional)
Dale un nombre descriptivo a tu servidor:
sudo hostnamectl set-hostname mi-vps
Edita también /etc/hosts:
sudo nano /etc/hosts
Añade:
127.0.0.1 mi-vps
Checklist de configuración completada
Verifica que todo está correcto:
| Tarea | Comando verificación | ✓ |
|---|---|---|
| Sistema actualizado | apt list --upgradable (vacío = ok) | ☐ |
| Usuario no-root creado | id tuusuario | ☐ |
| SSH con claves | Conectar sin contraseña | ☐ |
| Root login desactivado | grep PermitRoot /etc/ssh/sshd_config | ☐ |
| Password auth desactivado | grep PasswordAuth /etc/ssh/sshd_config | ☐ |
| Firewall activo | sudo ufw status | ☐ |
| Actualizaciones auto | systemctl status unattended-upgrades | ☐ |
| Zona horaria | timedatectl | ☐ |
Siguientes pasos según tu uso
Para webs (WordPress, etc.)
- Instalar servidor web (Nginx o Apache)
- Instalar PHP
- Instalar MySQL/MariaDB
- Configurar certificados SSL
Guía relacionada: Mejor VPS para WordPress
Para Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker tuusuario
Guía relacionada: VPS para desarrolladores
Para panel de control
Instala CloudPanel, cPanel o Plesk para gestión visual.
Guía relacionada: VPS con cPanel vs Plesk
Comandos útiles del día a día
Reiniciar el VPS
sudo reboot
Ver uso de recursos
htop
Ver espacio en disco
df -h
Ver logs del sistema
sudo journalctl -xe
Ver quién está conectado
who
Ver intentos de login fallidos
sudo grep "Failed password" /var/log/auth.log
Errores comunes y soluciones
”Connection refused” al conectar por SSH
El servicio SSH no está corriendo o el firewall bloquea el puerto.
# Desde panel de control del proveedor (consola de emergencia)
sudo systemctl start sshd
sudo ufw allow ssh
Me he bloqueado el acceso SSH
Si desactivaste password auth antes de configurar las claves:
- Usa la consola de emergencia del panel de tu proveedor
- Edita
/etc/ssh/sshd_configy ponPasswordAuthentication yes - Reinicia SSH:
systemctl restart sshd
El firewall bloquea mi aplicación
Abre el puerto necesario:
sudo ufw allow PUERTO
Por ejemplo, para MySQL: sudo ufw allow 3306
Disco lleno
# Ver qué ocupa espacio
sudo du -sh /* | sort -h
# Limpiar paquetes antiguos
sudo apt autoremove
sudo apt clean
¿Necesitas ayuda con la configuración?
Si prefieres no hacer esto manualmente, tenemos dos opciones:
VPS preconfigurados: Algunos de nuestros VPS con panel vienen ya con todo configurado: panel de control, SSL automático, firewall…
Administración gestionada: Con la administración de servidores de Avantys, nosotros configuramos y mantenemos tu VPS. Tú te centras en tu proyecto.
Preguntas frecuentes
¿Tengo que hacer todo esto cada vez que contrato un VPS?
Sí, un VPS nuevo viene “en blanco”. Pero puedes crear scripts que automaticen la configuración, o usar los VPS preconfigurados.
¿Puedo usar root directamente?
Puedes, pero no deberías. Un error como rm -rf / ejecutado como root destruye el sistema. Con un usuario normal, el daño está limitado.
¿Qué pasa si olvido la contraseña de mi usuario?
Si tienes acceso por clave SSH, puedes cambiarla con sudo passwd tuusuario. Si no tienes ningún acceso, usa la consola de emergencia del proveedor.
¿Con qué frecuencia debo actualizar manualmente?
Con unattended-upgrades configurado, las actualizaciones de seguridad son automáticas. Las actualizaciones mayores (nueva versión de Ubuntu) requieren intervención manual.
¿Puedo aplicar esta configuración a un VPS Windows?
No directamente. Windows Server tiene su propia configuración de seguridad (RDP, firewall de Windows, etc.). Esta guía es específica para Linux.
Resumen de comandos
# Actualizar sistema
apt update && apt upgrade -y
# Crear usuario
adduser tuusuario
usermod -aG sudo tuusuario
# SSH (en local)
ssh-keygen -t ed25519
ssh-copy-id tuusuario@IP
# Firewall
sudo ufw allow ssh
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable
# Actualizaciones automáticas
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure -plow unattended-upgrades
Conclusión
Configurar un VPS desde cero no es difícil, solo requiere seguir los pasos correctos en orden. Los puntos críticos son:
- Crear usuario no-root (nunca trabajar como root)
- Configurar SSH con claves (las contraseñas son vulnerables)
- Activar firewall (solo abrir puertos necesarios)
- Actualizaciones automáticas (los parches de seguridad son críticos)
Una vez completados estos pasos, tienes un VPS seguro y listo para instalar lo que necesites.
¿Quieres un VPS para configurar? Explora los VPS de Avantys o consulta la guía completa de VPS.
Guías relacionadas
- Securizar un VPS Linux (guía avanzada)
- Primeros pasos después de contratar VPS
- VPS administrado vs no administrado
- Qué es un VPS y para qué sirve
¿Quieres la guía completa con todos los casos de uso?
¿Quieres que lo hagamos por ti?
En Avantys gestionamos tu web, hosting y crecimiento digital de punta a punta. Tú a lo importante.