Elegir un VPS adecuado desde el minuto cero
El error más común al contratar un VPS es pagar de más o escoger mal los recursos. Si es tu primer servidor, empieza simple: 1 GB de RAM, 1 vCPU y 25 GB de SSD son suficientes para un entorno de pruebas o una web pequeña. Servicios como Hetzner, Contabo o Vultr ofrecen planes básicos y fiables desde unos pocos euros al mes. Lo importante al inicio no es la potencia, sino la estabilidad y la facilidad de gestión.
Sistema operativo: Ubuntu LTS o Debian estable
Evita distribuciones raras. A menos que tengas un motivo técnico muy específico, instala Ubuntu 22.04 LTS o Debian 12. Son estables, cuentan con soporte prolongado y tienen una enorme comunidad detrás. En el panel del proveedor puedes elegirlo antes de desplegar el servidor. En unos segundos tendrás tu máquina virtual lista, con una IP pública asignada.
Primer acceso y medidas básicas de seguridad
Con el VPS creado, recibirás una dirección IP y una contraseña de root. No la compartas con nadie. Conéctate desde tu terminal usando SSH:
ssh root@tu_ip_publica
Acepta la huella digital del servidor y escribe la contraseña. Si todo va bien, ya estás dentro del sistema. Empieza protegiéndolo antes de instalar nada.
1. Cambiar la contraseña de root y crear un usuario propio
Por motivos de seguridad, no es buena idea trabajar directamente como root. Crea un usuario con permisos administrativos:
- adduser pedro
- usermod -aG sudo pedro
Ahora podrás conectarte con ese usuario y usar sudo cuando necesites privilegios.
2. Autenticación por clave SSH
Desde tu equipo local genera una clave SSH con ssh-keygen. Sube la clave pública al servidor:
mkdir -p /home/pedro/.ssh && nano /home/pedro/.ssh/authorized_keys
Pega ahí tu clave pública, guarda y asegúrate de que los permisos son correctos. Una vez verificado que puedes entrar sin contraseña, deshabilita el login por password editando el archivo /etc/ssh/sshd_config y cambiando:
PasswordAuthentication no
Reinicia SSH con systemctl restart ssh. Con esto evitas la mayoría de ataques brutos automatizados.
3. Cortafuegos simple con UFW
Activa un firewall básico para cerrar todo lo que no necesites:
- apt install ufw
- ufw allow OpenSSH
- ufw enable
Si vas a montar un servidor web, más adelante abriremos el puerto 80 y 443.
Actualizar paquetes y preparar la base del entorno
Antes de instalar nada, actualiza el sistema:
apt update && apt upgrade -y
Esto evita conflictos posteriores y te garantiza tener los últimos parches de seguridad.
Instalar la pila web básica
Depende del tipo de proyecto. Para un entorno genérico recomiendo Nginx, PHP-FPM y MariaDB. Es moderno, ligero y se ajusta a la mayoría de CMS o aplicaciones web.
1. Nginx
apt install nginx -y
Activa su arranque automático:
systemctl enable nginx
Comprueba que funciona accediendo desde tu navegador a la IP del VPS. Si ves la página por defecto de Nginx, todo está correcto.
2. PHP-FPM y extensiones
Instala PHP y módulos útiles:
apt install php-fpm php-mysql php-cli php-curl php-xml php-gd -y
El servicio se inicia automáticamente. Verifica con php -v.
3. MariaDB o MySQL
apt install mariadb-server -y
Protege la instalación con el asistente:
mysql_secure_installation
Te pedirá deshabilitar el acceso remoto del root y borrar bases de datos de prueba. Recomiendo decir “sí” a todo lo que refuerce la seguridad.
Conectar los componentes
Para que Nginx procese PHP, edita un bloque de servidor similar a este en /etc/nginx/sites-available/miweb.conf:
server {
listen 80;
server_name tu_dominio.com;
root /var/www/miweb;
index index.php index.html;
location / { try_files $uri $uri/ =404; }
location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.1-fpm.sock; }
}
Actívalo con:
ln -s /etc/nginx/sites-available/miweb.conf /etc/nginx/sites-enabled/
Y recarga el servicio:
systemctl reload nginx
Crea la carpeta /var/www/miweb y pon un index.php simple para probar:
<?php phpinfo(); ?>
Accede a tu dominio o IP y deberías ver la información de PHP renderizada por Nginx. Si llegas a este punto, ya tienes un entorno funcional.
Configurar HTTPS con Let’s Encrypt
El siguiente paso es asegurar la conexión. Instala Certbot:
apt install certbot python3-certbot-nginx -y
Ejecuta el asistente:
certbot –nginx -d tu_dominio.com -d www.tu_dominio.com
Certbot configura Nginx automáticamente y renueva los certificados de forma programada. Revisa con systemctl list-timers que la tarea esté activa.
Automatizar copias de seguridad básicas
Un VPS nuevo sin backup es una bomba de relojería. Para algo rápido, crea un script en /usr/local/bin/backup.sh que guarde una copia comprimida de tu web y base de datos:
#!/bin/bash
DATE=$(date +%F)
tar -czf /root/backup_web_$DATE.tar.gz /var/www/miweb
mysqldump -u root -p’contraseña’ mi_base > /root/db_$DATE.sql
Hazlo ejecutable (chmod +x) y programa una tarea en cron (crontab -e):
0 3 * * * /usr/local/bin/backup.sh
Cada madrugada tendrás una copia en tu servidor. Más adelante conviene subirlas a un espacio remoto o S3.
Supervisión y mantenimiento mínimo
Mantener el VPS estable no requiere horas. Solo disciplina: actualiza regularmente (apt update && apt upgrade -y), revisa logs en /var/log/nginx/error.log y monitoriza el uso de RAM y disco con htop y df -h. Si el servidor empieza a ir lento, lo primero no es ampliar recursos, sino mirar qué proceso consume más.
Optimización rápida
Con Nginx, PHP-FPM y MariaDB ya montados, puedes ajustar algo de rendimiento sin complicarte. En /etc/php/8.x/fpm/php.ini cambia memory_limit a 256M y upload_max_filesize a 64M. Reinicia el servicio con systemctl restart php8.x-fpm. En Nginx, activa compresión Gzip y cachea archivos estáticos. No te llevará más de cinco minutos y mejora la respuesta notablemente.
Escalado sencillo sin romper nada
Cuando el proyecto crezca, clonar el entorno será fácil porque tienes una estructura limpia. Haz snapshot del VPS antes de tocar configuraciones grandes. Cualquier cambio que implique riesgo, pruébalo en una copia. Este hábito te ahorra horas de dolor.
Conclusión
Montar un entorno funcional en un VPS desde cero lleva menos de 30 minutos si sigues un orden lógico y no improvisas. Empieza por la seguridad, instala solo lo necesario y automatiza actualizaciones y backups. No necesitas ser sysadmin para tener un servidor sólido, solo sentido común y método.
Si estás valorando contratar tu primer VPS y no sabes cuál elegir, echa un vistazo a esta comparativa de servidores web económicos. Te ayudará a no pagar de más por rendimiento que no vas a usar.
Deja una respuesta