Si bien SSH (Secure Shell) es de por sí un protocolo considerado seguro, puede ser atacado por fuerza bruta mediante ataques de replay. Entonces será una cuestión de tiempo lograr acceso (incluso hay casos en los que se pueden causar denegaciones de servicio).
Existen soluciones prácticas que están relacionadas con reforzar este protocolo de conexión remota: por ejemplo usando “autenticación por llaves” (RSA Keys) o definiendo “claves robustas” que no terminan de solucionar completamente el ataque de fuerza bruta.
No obstante, hay algunas herramientas que nos ayudarán a resolver eficientemente este ataque:
Ssdfilter lee los logs del servicio sshd y, ante ataques de repeticiones, bloquea la IP de origen a través de iptables.
Más información: http://www.csc.liv.ac.uk/~greg/sshdfilter/
Fail2Ban es un script escrito en Python que agrega reglas a los firewalls instalados (iptables, ipfwadm, o ipfw).
Más información: http://fail2ban.sourceforge.net/
DenyHosts es un script escrito en Python que, en vez de escribir reglas de firewall, las escribe en el archivo host.deny y, de esta forma, la IP queda denegada para cualquier otro tipo de ataque a otro puerto.
Más información: http://denyhosts.sourceforge.net/
