5 mejores prácticas de seguridad del servidor OpenSsh

5 mejores prácticas de seguridad del servidor OpenSsh

Ssh (Shel segurol) es un protocolo de red de código abierto que se utiliza para conectar servidores Linux locales o remotos para transferir archivos, hacer copias de seguridad remotas, ejecución de comandos remotos y otras tareas relacionadas con la red a través del comando SCP o el comando SFTP entre dos servidores que se conectan en un Asegure el canal a través de la red.

En este artículo, le mostraré algunas herramientas y trucos simples que lo ayudarán a ajustar la seguridad de su servidor SSH. Aquí encontrará información útil sobre cómo asegurar y evitar que los servidores SSH fuerza bruta y ataques de diccionario.

1. Negarhosts

Negarhosts es un script de seguridad de prevención de intrusos basado en el registro de código abierto para servidores SSH que se escribió en un lenguaje de programación de Python que pretende ser ejecutado por los administradores y usuarios del sistema de Linux para monitorear y analizar los registros de acceso al servidor SSH para los intentos de inicio de sesión fallidos conocidos como conocidos como conocidos ataques basados ​​en el diccionario y ataques de fuerza bruta.

El script funciona prohibiendo IP Direcciones después de un número establecido de intentos de inicio de sesión fallidos y también evitan que dichos ataques obtengan acceso al servidor.

Características de Denyhosts
  • Realiza un seguimiento de /var/log/seguro Para encontrar todos los intentos de inicio de sesión exitosos y fallidos y los filtra.
  • Esté atento a todos los intentos de inicio de sesión fallidos por parte del usuario y el host ofensivo.
  • Sigue observando en cada usuario existente e inexistente (por ejemplo,. xyz) Cuando un fallido intentos de inicio de sesión.
  • Realiza un seguimiento de cada usuario ofensivo, host y intentos de inicio de sesión (si una serie de fallas de inicio de sesión) prohíbe ese host IP dirección agregando una entrada en /etc/huéspedes.denegar archivo.
  • Opcionalmente envía una notificación por correo electrónico de hosts recién bloqueados e inicios de sesión sospechosos.
  • También mantiene todos los intentos de inicio de sesión de usuario fallidos válidos e inválidos en archivos separados para que sea fácil para identificar qué usuario válido o inválido está bajo ataque. Entonces, para que podamos eliminar esa cuenta o cambiar la contraseña, o deshabilitar el shell para ese usuario.

[También te puede gustar: Cómo bloquear los ataques de fuerza bruta SSH usando Denyhosts]

2. Fail2ban

Fail2ban es una de las intrusiones de código abierto más popular detección/prevención marcos escritos en un pitón lenguaje de programación. Funciona escaneando archivos de registro como /var/log/seguro, /var/log/auth.registro, /var/log/pwdfail etc. para demasiados intentos de inicio de sesión fallidos.

Fail2ban se usa para actualizar NetFilter/iptables o envoltorio TCP Hospedadores.denegar archivo, para rechazar el atacante IP Dirección por una cantidad de tiempo establecida. También tiene la capacidad de desahogar una dirección IP bloqueada durante un cierto período de tiempo establecido por los administradores. Sin embargo, un cierto minuto de desahogar es más que suficiente para detener tales ataques maliciosos.

Fail2ban características
  • Múltiple y Altamente configurable.
  • Soporte para la rotación de archivos de registro y puede manejar múltiples servicios como (SSHD, VSFTPD, apache, etc).
  • Monitorea archivos de registro y busque patrones conocidos y desconocidos.
  • Usos NetFilter/iptables y Envoltorio TCP (/etc/huéspedes.denegar) Tabla para prohibir los atacantes IP.
  • Ejecuta scripts cuando se ha identificado un patrón dado para la misma dirección IP más que X veces.

[También puede gustar: Cómo usar Fail2Ban para asegurar su servidor Linux]

3. Deshabilitar el inicio de sesión de la raíz

Por defecto, los sistemas de Linux están preconfigurados para permitir los inicios de sesión remotos de SSH para todos, incluidos los raíz el propio usuario, que permite a todos iniciar sesión directamente en el sistema y obtener acceso raíz. A pesar del hecho de que el servidor SSH permite una forma más segura de desactivar o habilitar los inicios de sesión raíz, siempre es una buena idea deshabilitar el acceso a la raíz, manteniendo los servidores un poco más seguros.

Hay tantas personas que intentan bruta de las cuentas de la raíz de la fuerza Ataques ssh simplemente proporcionando diferentes nombres de cuenta y contraseñas, una tras otra. Si es un administrador del sistema, puede verificar los registros del servidor SSH, donde encontrará una serie de intentos de inicio de sesión fallidos. La razón principal detrás de una serie de intentos de inicio de sesión fallidos es tener contraseñas lo suficientemente débiles y eso tiene sentido para hackers/atacantes intentar.

Si tiene contraseñas seguras, entonces probablemente esté a salvo, sin embargo, es mejor deshabilitar el inicio de sesión raíz y tener una cuenta separada regular para iniciar sesión, y luego usar sudo o SU Para obtener acceso a la raíz cuando sea necesario.

[También puede que le guste: Cómo deshabilitar el inicio de sesión de la raíz SSH y limitar el acceso SSH en Linux]

4. Exhibir banner ssh

Esta es una de las características más antiguas disponibles desde el comienzo del proyecto SSH, Pero apenas lo he visto es usado por cualquiera. De todos modos, siento que es una característica importante y muy útil que he usado para todos mis servidores Linux.

Esto no es para ningún propósito de seguridad, pero el mayor beneficio de este banner es que se usa para mostrar SSH mensajes de advertencia a No autorizado Acceso y mensajes de bienvenida a los usuarios autorizados antes de la solicitud de contraseña y después de que el usuario inició sesión.

[También puede gustar: Cómo proteger los inicios de sesión de SSH con mensajes de banner SSH y MOTD]

5. SSH inicio de sesión sin contraseña

Un Inicio de sesión sin contraseña de SSH con Ssh keygen establecerá una relación de confianza entre dos Servidores de Linux que hace transferencia de archivos y sincronización más fácil.

Esto es muy útil si está tratando con copias de seguridad automatizadas remotas, ejecución de secuencias de comandos remotas, transferencia de archivos, administración de script remotos, etc. sin ingresar la contraseña cada vez.

[También puede que le guste: cómo configurar SSH sin contraseña Iniciar sesión en Linux [3 sencillos pasos]]

Para asegurar aún más su servidor SSH, lea nuestro artículo sobre cómo asegurar y endurecer el servidor OpenSSH