Skip to content

Seguridad Básica

Medidas de seguridad fundamentales para proteger tu servidor.

Terminal window
# Instalar UFW (generalmente ya viene instalado)
sudo apt install ufw
# Permitir SSH (IMPORTANTE: hazlo antes de activar el firewall)
sudo ufw allow ssh
sudo ufw allow 22/tcp
# Permitir HTTP y HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# Activar firewall
sudo ufw enable
# Verificar estado
sudo ufw status verbose

UFW bloquea todo el tráfico excepto lo que permitas explícitamente.

Terminal window
# Generar par de claves (si no tienes una)
ssh-keygen -t ed25519 -C "tu@email.com"
# Copiar clave pública al servidor
ssh-copy-id tunombre@tu-ip-del-vps
Terminal window
# Editar configuración SSH
sudo vim /etc/ssh/sshd_config
# Cambiar estas líneas:
# PermitRootLogin no
# PasswordAuthentication no
# PubkeyAuthentication yes
# Reiniciar servicio SSH
sudo systemctl restart sshd

Esto desactiva login con contraseña y login como root vía SSH.

Terminal window
# Instalar Fail2Ban
sudo apt install fail2ban -y
# Crear configuración local
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
# Editar configuración
sudo vim /etc/fail2ban/jail.local
# Busca y ajusta:
# bantime = 1h
# findtime = 10m
# maxretry = 5
# Iniciar y activar Fail2Ban
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
# Ver estado
sudo fail2ban-client status

Fail2Ban bloquea IPs que intentan accesos no autorizados repetidamente.

4. Actualizaciones Automáticas de Seguridad

Section titled “4. Actualizaciones Automáticas de Seguridad”
Terminal window
# Instalar actualizaciones desatendidas
sudo apt install unattended-upgrades -y
# Configurar
sudo dpkg-reconfigure --priority=low unattended-upgrades

Selecciona “Sí” para instalar actualizaciones de seguridad automáticamente.

Terminal window
# Ver puertos en escucha
sudo ss -tulpn
# Ver puertos abiertos con netstat
sudo netstat -tulpn | grep LISTEN

Asegúrate de reconocer todos los servicios que están escuchando.

Terminal window
# Editar límites
sudo vim /etc/security/limits.conf
# Añadir al final:
# * soft nofile 65536
# * hard nofile 65536

Previene que procesos consuman demasiados recursos.

Terminal window
# Ver intentos de login fallidos
sudo lastb
# Ver logins exitosos
sudo last
# Ver logs de autenticación
sudo tail -f /var/log/auth.log

Revisa los Comandos Útiles para el mantenimiento diario.