Adquirir un Servidor Privado Virtual (VPS) por primera vez puede ser una experiencia emocionante pero intimidante. A diferencia del hosting compartido, un VPS te da control total sobre tu entorno de servidor, lo que conlleva una mayor responsabilidad en términos de seguridad y configuración. Esta guía te llevará paso a paso a través del proceso de configuración inicial para asegurar tu servidor y prepararlo para uso.
1. Conexión inicial a tu VPS
Lo primero que necesitarás es conectarte a tu servidor. La mayoría de los proveedores de VPS te enviarán por correo electrónico la dirección IP de tu servidor, junto con las credenciales de acceso.
Para usuarios de Windows, necesitarás un cliente SSH como PuTTY. Los usuarios de macOS y Linux pueden usar la terminal nativa. Una vez accedas solo tienes que poner este texto:
ssh root@tu_direccion_ip
Se te pedirá la contraseña (que probablemente recibiste por correo electrónico). Esta es tu primera conexión como usuario «root», que tiene privilegios administrativos completos.
2. Actualización del sistema
Una vez conectado, lo primero que debes hacer es actualizar el sistema para asegurarte de tener todos los parches de seguridad más recientes.
Para sistemas basados en Debian/Ubuntu:
apt update && apt upgrade -y
Para sistemas basados en CentOS/RHEL:
yum update -y
3. Creación de un usuario nuevo
Trabajar constantemente como root es peligroso; un error podría dañar todo el sistema. Vamos a crear un nuevo usuario con privilegios limitados.
adduser nombredeusuario
Se te pedirá que establezcas una contraseña y opcionalmente información adicional. Ahora, vamos a darle privilegios de sudo para que pueda ejecutar comandos administrativos cuando sea necesario:
usermod -aG sudo nombredeusuario
4. Configuración de la autenticación basada en clave SSH
Las contraseñas son vulnerables a ataques de fuerza bruta. La autenticación basada en clave SSH es mucho más segura.
Primero, en tu máquina local (no en el VPS), genera un par de claves si aún no tienes una:
ssh-keygen -t rsa -b 4096
Sigue las instrucciones. Puedes dejar la frase de contraseña en blanco si lo prefieres, pero añadir una capa adicional de seguridad.
Ahora, copia tu clave pública al servidor:
ssh-copy-id nombredeusuario@tu_direccion_ip
Esto añadirá tu clave pública al archivo ~/.ssh/authorized_keys en el servidor.
5. Configuración del firewall
Un firewall es esencial para proteger tu servidor. UFW (Uncomplicated Firewall) es una interfaz fácil de usar para iptables.
Instala UFW si no está ya instalado:
apt install ufw # Para Debian/Ubuntu
yum install ufw # Para CentOS/RHEL
Por defecto, denegaremos todas las conexiones entrantes y permitiremos todas las salientes:
ufw default deny incoming
ufw default allow outgoing
Ahora, permitiremos las conexiones SSH para que no te bloquees fuera:
ufw allow ssh
Si planeas alojar un sitio web, también necesitarás permitir el tráfico HTTP y HTTPS:
ufw allow http
ufw allow https
Finalmente, activa el firewall:
ufw enable
6. Deshabilitar el acceso root y autenticación por contraseña
Ahora que tenemos un usuario con sudo y autenticación por clave SSH, podemos hacer nuestro servidor más seguro deshabilitando el acceso root y la autenticación por contraseña.
Edita el archivo de configuración SSH:
sudo nano /etc/ssh/sshd_config
Busca y cambia las siguientes líneas:
PermitRootLogin no
PasswordAuthentication no
Guarda el archivo (Ctrl+O, Enter, Ctrl+X en nano) y reinicia el servicio SSH:
sudo systemctl restart sshd
Importante: Antes de cerrar tu sesión actual, abre una nueva terminal y verifica que puedes conectarte con tu nuevo usuario usando la autenticación por clave SSH. Si no puedes, no cierres la sesión actual hasta que resuelvas el problema.
7. Configuración de la zona horaria
Configurar correctamente la zona horaria es importante para que los registros del sistema reflejen el tiempo local correcto.
sudo dpkg-reconfigure tzdata # Para Debian/Ubuntu
sudo timedatectl set-timezone tu/zona/horaria # Para sistemas más nuevos
8. Instalación de utilidades básicas
Dependiendo de tus necesidades, es posible que quieras instalar algunas utilidades básicas:
sudo apt install htop git curl wget nano # Para Debian/Ubuntu
sudo yum install htop git curl wget nano # Para CentOS/RHEL
9. Configuración de copias de seguridad
Las copias de seguridad son cruciales. Aunque muchos proveedores de VPS ofrecen soluciones de copia de seguridad, es recomendable configurar tus propias copias de seguridad adicionales.
Puedes usar herramientas como Rsync para copias de seguridad incrementales o configurar scripts personalizados que se ejecuten periódicamente mediante cron.
10. Monitoreo básico
Configurar un monitoreo básico te ayudará a detectar problemas antes de que se conviertan en crisis.
Puedes instalar herramientas como:
htoppara monitorear procesos y uso de recursosnetstatpara ver conexiones de redfail2banpara proteger contra ataques de fuerza bruta
Para instalar fail2ban, la que recomiendo por ser más sencilla:
sudo apt install fail2ban # Para Debian/Ubuntu
sudo yum install fail2ban # Para CentOS/RHEL
Ta-chán!
Con estos pasos, has establecido una base sólida para tu VPS que es significativamente más segura que la configuración predeterminada. Recuerda que la seguridad de un servidor es un proceso continuo, no un estado final. Mantén tu sistema actualizado, revisa regularmente los registros y considera implementar medidas de seguridad adicionales según tus necesidades específicas.
A medida que ganes confianza, podrás explorar configuraciones más avanzadas como la configuración de servidores web, bases de datos, contenedores Docker, y más. Pero por ahora, has dado un paso fundamental para asegurar tu servidor y prepararlo para uso productivo.
Preguntas frecuentes: configuración inicial de un VPS
?¿Qué es exactamente un VPS y en qué se diferencia del hosting compartido?
▶¿Cómo me conecto por primera vez?
ssh root@IP. En Windows puedes usar PuTTY u OpenSSH. Introduce la contraseña temporal enviada por tu proveedor.⬆¿Por qué debo actualizar el sistema al inicio?
apt update && apt upgrade -y (Ubuntu/Debian) o yum update -y (RHEL/CentOS).👤¿Es obligatorio crear un usuario distinto de root?
adduser nombre y usermod -aG sudo nombre.🔑¿Cómo activo claves SSH y desactivo contraseñas?
ssh-keygen -t rsa -b 4096, súbela con ssh-copy-id y en /etc/ssh/sshd_config define PermitRootLogin no y PasswordAuthentication no. Reinicia SSH.🛡¿Qué reglas mínimas de firewall debería aplicar?
ufw default deny incoming, ufw default allow outgoing, ufw allow ssh, y si hay web: ufw allow http + ufw allow https. Luego ufw enable.🌍¿Cómo configuro zona horaria y registros correctos?
timedatectl set-timezone Region/Ciudad (ej.: Europe/Madrid) para que los logs reflejen la hora local.🧰¿Qué utilidades básicas conviene instalar?
htop, git, curl, wget, nano y fail2ban para protegerte de fuerza bruta.💾¿Cómo hago copias de seguridad sencillas?
rsync con cron hacia otro servidor o almacenamiento en la nube. Prueba la restauración periódicamente.📈¿Qué debo monitorear desde el primer día?
htop), acceso/errores de servicios, intentos fallidos (con fail2ban) y alertas básicas por correo.


¿No sería más seguro añadir una etapa adicional de autenticación de dos factores después de la configuración SSH? Solo pregunto.
¿Por qué no mencionaron la importancia de cambiar el puerto predeterminado SSH para mejorar la seguridad?
Porque cambiar el puerto SSH no mejora la seguridad, solo complica las cosas.
¿Y si prefiero mantener la autenticación por contraseña? ¡La clave SSH parece complicada!
¡Y si te roban la contraseña? ¡La clave SSH es más segura y eficiente!
¿No sería más seguro si también recomendamos cambiar el puerto predeterminado de SSH en la configuración inicial del VPS?
¿No sería mejor si se automatizara la actualización del sistema? ¿O podría comprometer la estabilidad del VPS?
Claro, automatizar podría facilitar, pero ¿y si la actualización trae fallos? ¡El VPS sufriría!
¿No les parece que deberían añadir un paso sobre cómo implementar medidas de seguridad básicas para el VPS?
¿No sería más seguro usar autenticación de dos factores en lugar de autenticación basada en clave SSH? Me gustaría saber su opinión.
Vaya, nunca había pillado tanto detalle en la configuración inicial de un VPS, me ha sorprendido, la verdad. Lo de la actualización del sistema me parece crucial, ¿no? Crear un usuario nuevo también, claro. Ahora que lo pienso, me ha dejado pensando lo de la autenticación basada en clave SSH, eso es tipo, ¿mejor que una contraseña normal, no? Por cierto, ¿alguien sabe si se puede hacer esto mismo pero en un Mac? Igual estoy diciendo una tontería, eh…
Vaya, este artículo sobre cómo configurar tu primer VPS es un poco complicado, ¿no? No sé, igual me estoy liando, pero creo que entendí bien el punto sobre la actualización del sistema. Pero, por cierto, hay algo que no me queda claro. Me pregunto, ¿por qué es necesario crear un usuario nuevo? Y otra cosa, esa configuración de la autenticación SSH, ¿es algo que tendría que hacer cada vez que accedo al VPS? A ver, no soy un experto en esto, ¿podría alguien echarme una mano?
¿Y si prefiero usar contraseñas en lugar de autenticación por clave SSH? ¡Debate abierto!
Prefieres contraseñas porque no has vivido la seguridad de SSH. ¡Despierta!
¿Y si prefiero usar contraseñas en lugar de autenticación SSH por comodidad?
¿No sería más seguro si se añade la autenticación de dos factores después de la configuración SSH? Solo una idea.
Por cierto, me ha parecido bastante útil el artículo, sobre todo la parte de la autenticación basada en clave SSH, aunque, no sé, siempre me ha dado un poco de miedo eso de tener toda la seguridad centralizada en una clave, ¿no? Por otro lado, y esto igual es un poco tangente, pero en la creación de un usuario nuevo, no mencionas nada sobre los permisos, que creo que es un tema bastante importante, ¿no te parece? ¿O es que me estoy liando con otra cosa? Ahora que lo pienso, ¿no habría alguna forma de hacer la actualización del sistema de forma más automática?
Pues, a ver, después de leer el artículo, creo que entendí bien esto de la conexión inicial al VPS. Es como una especie de primer saludo al sistema, ¿no? Pero, oye, ¿qué pasa si me salto la parte de la actualización del sistema? Ahora que lo pienso, igual estoy metiendo la pata. Y otra cosa, esto de la autenticación basada en clave SSH me tiene un poco liado, ¿es realmente seguro crear un nuevo usuario así como así?
¿Alguien ha probado estos pasos en un VPS con sistema operativo diferente? ¡Me intriga saber si funcionaría igual!
He probado en varios SO y funcionó perfectamente. ¡No temes al cambio!
¿No sería más seguro configurar la autenticación SSH antes de crear un nuevo usuario? Así se limita el acceso inicial.
Chicos, ¿no creen que la autenticación basada en clave SSH debería ser el primer paso antes de todo lo demás?
En realidad, creo que la autenticación multifactorial debería ser la prioridad.
¿Alguien ha tenido problemas al crear un nuevo usuario? No me queda claro el proceso. Agradezco cualquier ayuda.
Entra a configuración, es sencillo. Antes de quejarte, intenta explorar un poco más.
¿Alguien más piensa que deberían haber cubierto la configuración del firewall en este tutorial de VPS? Es fundamental para la seguridad.
¿Realmente necesitamos un nuevo usuario? Yo lo hago todo con el root. ¿Qué opinan?
Usar root continuamente es una irresponsabilidad. Protege tu sistema, crea un usuario.
¿Alguien ha probado configurar VPS en una red WiFi pública? ¿Crees que sería seguro actualizar el sistema allí?
¿Por qué no hablaron sobre la configuración del firewall? Creo que es un paso fundamental en la seguridad de un VPS.
¿No creen que sería útil incluir una sección sobre seguridad contra ataques DDoS en la configuración inicial del VPS?
¿Alguien más piensa que podrían haber abordado más a fondo la autenticación basada en clave SSH? Me quedé con dudas.
¿No creéis que es esencial hablar también de la configuración de firewall en un primer VPS?
Totalmente de acuerdo, la seguridad del firewall es crítica en cualquier VPS.
¿Y si prefiero configurar mi VPS con un enfoque menos técnico? ¡Déjate de SSH!
Entonces, ¿prefieres pagar más por menos control? ¡SSH no es tan complicado!
Bueno, a ver si lo he pillado bien. Enciendo el VPS, lo actualizo, creo un usuario nuevo y le configuro la clave SSH, ¿no? Muy útil el tutorial, pero tengo una duda… ¿es necesario crear un usuario nuevo siempre o me puedo saltar ese paso si es mi VPS personal? Igual me estoy liando con eso.
¿Soy la única que se lía con esto de la autenticación basada en clave SSH? ¿No hay alguna forma más sencilla de hacerlo? No sé si me he saltado algo, pero es que me parece un poco lioso. Y eso de la creación de un usuario nuevo, pues vale, lo entiendo, pero ¿es realmente necesario? Igual me estoy liando yo sola…
Interesante la parte de configurar la autenticación con clave SSH, siempre me pareció un rollo pero supongo que es necesario para mantener la seguridad. Eso sí, lo de crear un usuario nuevo me ha dejado un poco perdido, ¿es realmente necesario? ¿No puedo seguir con el usuario por defecto? En fin, parece que hay mucho que aprender en esto de los VPS.
La verdad es que nunca me había planteado lo de la autenticación basada en clave SSH, siempre he usado usuario y contraseña. Pero ahora que lo pienso, parece mucho más seguro, ¿no? Aunque no acabo de entenderlo del todo, ¿es muy complicado de configurar? Ah, y otra cosa, ¿es necesario hacerlo si mi VPS solo lo voy a usar yo? Es que igual me lío más de la cuenta.
Bueno, la conexión inicial al VPS me ha costao un poco, pero ahí vamos. Eso de autenticación con clave SSH me suena a chino, ¿no podrían simplificar un poco el proceso? Creo que voy a necesitar un par de cafés para terminar de configurar esto, jeje. En fin, gracias por la guía, a seguir dándole caña. ¿Alguien tiene un tutorial para dummies?
La verdad es que me ha venido genial este artículo, justo estaba buscando cómo hacer la conexión inicial a mi VPS. Pero me ha surgido una duda, al crear un nuevo usuario, ¿te refieres a un usuario del sistema operativo o a un usuario de la aplicación? Igual me estoy liando, pero es que soy nuevo en todo esto. Por otro lado, lo de la autenticación basada en clave SSH me ha quedado claro, gracias por la explicación.
Bueno, sigo con dudas en eso de la autenticación basada en clave SSH. ¿Es realmente más seguro que una contraseña? A veces se me hace un poco lioso. Por otro lado, el tema de actualización del sistema me pareció bien explicado. En fin, es mi primer VPS y no quiero liarla. ¿Algún consejo extra para novatos?
Interesante lo de la configuración de la autenticación basada en clave SSH, siempre pensé que era más complicado. Aunque sigo sin entender muy bien, ¿es como una llave digital que te permite entrar a tu VPS? Y si pierdes esa llave ¿qué pasa? No me quedó claro tampoco lo de la creación del usuario nuevo, ¿es necesario hacerlo siempre? En fin, gracias por el artículo, me ha aclarado algunas cosas.
Interesante eso de la autenticación basada en clave SSH, aunque me ha costado un poco entenderlo, no soy muy experto en estos temas. ¿Alguien puede explicar un poco más sobre eso? Creo que es importante para la seguridad, ¿no? Por cierto, me ha parecido muy útil el paso a paso para configurar el VPS, gracias. A ver si lo consigo…
El paso de la autenticación con clave SSH me ha liado un poco, ¿alguien sabe si es necesario hacerlo siempre al configurar un VPS? Creo que me he perdido en esa parte. Por cierto, muy útil el punto sobre la actualización del sistema, no sabía que era tan importante hacerlo de inmediato.
Pues estoy siguiendo los pasos y me resulta bastante fácil conectar a la VPS, menos mal que lo explican bien. Eso sí, lo de crear un nuevo usuario me ha liado un poco, ¿no es más sencillo mantener el que viene por defecto? Y lo de la autenticación SSH, entiendo que es por seguridad, pero me parece un lío. A ver si me aclaro con esto, que no soy muy técnico.
Me ha hecho gracia lo de conectar por primera vez al VPS, me ha recordado a la primera vez que conecté a uno, ¡vaya lío! Y lo de actualizar el sistema, crucial, aunque a veces se nos olvida, no? jajaja. Ahora, sobre la autenticación basada en clave SSH, siempre me ha dado un poco de miedo, ¿no es más seguro el usuario y contraseña de toda la vida? Que alguien me ilumine, por favor.
Estoy intentando configurar mi VPS por primera vez y este artículo me ha venido de perlas. Me ha costado un poco lo de la conexión inicial, pero con un poco de paciencia lo he conseguido. Ahora estoy con la actualización del sistema y la creación de un nuevo usuario. Lo que no entiendo muy bien es la autenticación basada en clave SSH, ¿cómo funciona eso? ¿Es seguro? Bueno, seguiré con ello a ver qué tal. Gracias por el tutorial, de verdad, me está siendo de mucha ayuda.
Me parece un buen tutorial para configurar un VPS. La parte de la autenticación basada en clave SSH me ha dejado un poco confuso, la verdad. ¿No sería más sencillo usar un nombre de usuario y contraseña? ¿O es que la clave SSH es más segura? Perdón por la pregunta de novato, pero es que estoy empezando en esto de los servidores.
Interesante artículo, me ha ayudado un montón para configurar mi primer VPS, especialmente la parte de actualización del sistema. Aunque, me he liado un poco con la autenticación SSH, ¿el sistema te genera la clave o hay que crearla uno mismo? No sé, igual me estoy liando… Bueno, gracias de todas formas.
Vaya, esto de la autenticación basada en clave SSH parece más lioso de lo que pensaba. ¿No hay una forma más sencilla de hacerlo? Me pierdo un poco con tantos comandos. Por cierto, lo de actualizar el sistema, ¿es algo que hay que hacer a menudo o con una vez es suficiente? En fin, a ver si me aclaro con todo esto.
Bueno, pues he logrado conectar mi VPS, pero me he perdido un poco en la parte de actualización del sistema. ¿Es necesario hacerlo siempre o solo cuando se instala por primera vez? Por otro lado, en lo de la autenticación SSH, ¿no es peligroso si pierdo la clave? No sé, igual me estoy liando…
Muy útil el artículo, gracias! He estado peleándome con la autenticación SSH, la parte de crear un nuevo usuario me ha quedado clara pero la actualización del sistema me ha liado un poco. ¿Es necesario hacerlo de forma manual cada vez o hay alguna forma de automatizarlo? Igual me estoy haciendo un lío yo solo, jeje.