¿Porque configurar el fichero ssh?
El fichero que se genera tras la instalación es un fichero por defecto es decir con una configuración que se conoce por cualquiera, con el puerto predefinido, el acceso mediante root, número de intentos de login y mas directivas que veremos en adelante.
Configuración del fichero:
Lo primero accedemos al fichero donde muchas de las líneas vendrán comentadas con '#' y este fichero se ecuentra en '/etc/ssh/', mediante la siguiente linea de comando entramos en el fichero para editarlo 'sudo nano /etc/ssh/sshd_config' o 'sudo gedit /etc/ssh/sshd_config' una vez dentro comenzamos a editar el fichero.
Para cambiar el puerto por defecto (22) nos dirigimos a la linea que dice 'Port 22' editamos ese puerto por otro que queramos siempre que no sea un puerto usado o que vaya a ser usado por otro servicio, lo editamos y cambiamos el puerto por ejemplo por el 7425 quedando 'Port 7425' y apartir de esto ya tendremos que aclarar que ese servicio esta en ese puerto, por ejemplo sería 'ssh -p 7425 usuario@ipdelservidor'.
Evitamos la conexión mediante root, para ello vamos a 'PermitRootLogin yes' y lo deshabilitamos con no 'PermitRootLogin no', esto lo haremos para evitar que inicien sencillamente un ataque de fuerza bruta a nuestro servidor.
Limitando el tiempo para logear. Para esto editamos la línea 'LoginGraceTime 120' no vamos a dedicar mucho tiempo si conocemos la contraseña mucho tiempo, mas de 15, 20 segundo lo normal o demasiado, pero 120 segundo si que es demasiado. En mi ejemplo o dejaré en 20 segundos 'LoginGraceTime 20'.
Ahora limitaremos los intentos de login, esto lo haremos añadiendo la siguiente línea 'MaxAuthTries 3' es decir bloqueamos el número de intentos a 3.
Finalmente veremos algunas configuraciones por encima:
AllowGroups / DennyGroups: Con estas directivas podremos permitir o rechazar el acceso mediante ssh a determinados grupos.
AllowUsers / DennyUsers: Con estas directivas podremos permitir o rechazar el acceso mediante ssh a determinados usuarios.
LogLevel: Esta directiva entre las cuales esta quiet, fatal, error, info, verbose y debug. Determinamos el nivel de explicidad de los logs.