Guía para Securizar un Servicio SSH

Artículos Guías Manuales Sistemas Linux Windows Redes MySql Binario 0 Binario Cero

Esta guía te proporciona un conjunto de configuraciones para mejorar la seguridad de un servicio SSH, enfocándose en el control de autenticación y la gestión de sesiones.

1. Acceso a la configuración de SSH

  1. Localiza el archivo de configuración del servidor SSH, normalmente ubicado en:

    /etc/ssh/sshd_config
  2. Haz una copia de seguridad del archivo antes de realizar cambios:

    sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

2. Configuraciones de autenticación

Ajusta los siguientes parámetros o descomenta en el archivo sshd_config:

LoginGraceTime

  • Descripción: Define el tiempo máximo permitido para que un usuario inicie sesión antes de que el servidor cierre la conexión.
  • Recomendación: Reducir este tiempo ayuda a prevenir intentos prolongados de conexión.
  • Configuración:

    LoginGraceTime 2m

MaxAuthTries

  • Descripción: Establece el número máximo de intentos de autenticación permitidos por sesión.
  • Recomendación: Limitar los intentos reduce el riesgo de ataques de fuerza bruta.
  • Configuración:

    MaxAuthTries 6

MaxSessions

  • Descripción: Define el número máximo de sesiones simultáneas permitidas por conexión SSH.
  • Recomendación: Limitar las sesiones simultáneas mitiga la posibilidad de abusos de recursos.
  • Configuración:

    MaxSessions 10

3. Aplicar y verificar los cambios

  1. Guarda los cambios en el archivo de configuración.
  2. Reinicia el servicio SSH para que las nuevas configuraciones entren en vigor:

    sudo systemctl restart sshd
  3. Verifica que el servicio esté funcionando correctamente:

    sudo systemctl status sshd

4. Buenas prácticas adicionales

  • Usar autenticación basada en claves: Deshabilita la autenticación por contraseña y utiliza claves públicas/privadas para mayor seguridad.

    PasswordAuthentication no
    PubkeyAuthentication yes
  • Cambiar el puerto por defecto: Evita el puerto 22 para reducir la exposición a ataques automatizados.

    Port 2222
  • Implementar un cortafuegos: Utiliza herramientas como ufw o iptables para restringir el acceso al puerto SSH.

    sudo ufw allow 2222/tcp
  • Habilitar el uso de Fail2Ban: Esto ayuda a bloquear direcciones IP después de múltiples intentos fallidos.

    sudo apt install fail2ban

Siguiendo estas recomendaciones, tu servicio SSH estará configurado con medidas básicas de seguridad mejoradas.