Cuando no estoy delante de mi equipo y necesito algo, me conecto a él por SSH, que es una manera segura y cómoda de hacer casi cualquier cosa que necesite.
El problema es que “los malos” también pueden lograr conectarse. Voy a tratar de ponérselo un poco más difícil estableciendo un baneo por IP tras unos cuantos intentos de acceso infructuosos. Al menos, que les cueste más tiempo acceder a mis fotos de primera comunión.
No voy a hacer nada sofisticado, solo voy a instalar fail2ban, que es una aplicación que monitorea los intentos infructuosos de acceso a los servicios que yo le indique y si fallan un determinado número de veces, bloquean el acceso desde esa IP durante un tiempo. Yo solo lo voy a utilizar para SSH, pero fail2ban sirve para un montón de aplicaciones.
Para instalarlo, paseíto por Synaptic e instalación de fail2ban y sus dependencias. Nada complicado o que no sepamos hacer.
Una vez instalado, debemos asegurarnos de que se inicia al arrancar el equipo, para que siempre estemos protegidos y no dependamos de haber recordado iniciarlo
- sudo systemctl enable fail2ban.service
Para configurarlo podríamos tocar su fichero de configuración y editarlo al gusto, pero por todas partes dicen que no debemos hacerlo, por si alguna actualización sobrescribe el fichero y perdemos el trabajo de configuracion, así que vamos a crear un fichero de configuración independiente.
- sudo nano /etc/fail2ban/jail.local
¿Y cómo rellenamos el ficherito? Bueno, pues puedes copiar lo siguiente
[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
findtime = 300
bantime = 3600
Como estamos hablando de seguridad, no te voy a pedir que copies y pegues sin más y te voy a explicar para que sirve ese galimatías.
[sshd] El servicio que vamos a controlar.
enabled Aqui decimos si lo monitorizamos o no
port El puerto a escuchar, por si lo has cambiado
filter Que demonio presta el servicio
logpath Donde está el log que debe escuchar
maxretry Cuantos reintentos antes del bloqueo
findtime En cuanto tiempo se deben producir los fallos
bantime Tiempo de baneo
Una vez guardado el fichero, reiniciamos el servicio para que surta efecto.
- sudo systemctl restart fail2ban.service
Si quieres probar que el servicio está funcionando
- sudo fail2ban-client status
Pero la prueba de fuego es cometer 4 fallos en menos de 5 minutos y comprobar que efectivamente, nos manda a freír espárragos y esperar una horita para ver que ahora si nos deja entrar. Aquí lo estoy probando desde un Windows y al cuarto intento, mi equipo ni contesta.
Solo has bloqueado la IP desde la que has fallado el acceso, pero si quieres desbloquearla sin tener que esperar...
- sudo fail2ban-client set sshd unbanip [dirección_IP]
Y ya tenemos otra capita más de seguridad en mi equipo.
No hay comentarios:
Publicar un comentario