🇪🇸 Fail2ban es una aplicación escrita en Python para la prevención de intrusos en un sistema, que actúa penalizando o bloqueando las conexiones remotas que intentan accesos por fuerza bruta.

Fail2ban escanea los archivos de registro (por ejemplo, /var/log/httpd/error_log) y prohíbe las IP que muestran signos maliciosos así como las que muestren muchos errores de contraseña, búsqueda de vulnerabilidades, etc. Normalmente, Fail2ban se utiliza para actualizar las reglas del cortafuegos a fin de rechazar las direcciones IP durante un período de tiempo específico, aunque también permite configurar cualquier otra acción (por ejemplo, enviar un correo electrónico).

La versión de Fail2ban sobre la que se ha realizado este post :

$ sudo fail2ban-client version
0.11.2

Bueno, y que pasa si empiezas a mirar un tuto sur yt como por ejemplo el de Grafikart.fr sobre ssh y te vienen unas ganas compulsivas de trastear en tu directorio ~/.ssh ? Pues puede pasar que te banées a ti mismo si lo haces con tu servidor… en vez de probar con una maquina virtual como dios manda 🤣

2 Soluciones :

  • haces los tests mientras que estas loguéado en otro terminal (solución de socorro)
  • la cagaste y no hiciste lo precedente y te baneas sin poder volver a entrar a tu servidor, aunque tengas la private key. 🔐

Y ahora que ? tengo que llamar a soporte o alguna de esas cosas ?

Pues aquí viene la solución…

Puedes leerte este super post sobre como acceder a un vpn con la terminal o sino utilizar tu solución vpn favorita para conectarte à tu servidor, solo si no esta configurado para aceptar una sola ip para la conexión claro esta.

Una vez conectado ya vas a poder jugar a desbanearte de tu servidor 🤣

Algo asi como si eres un poco bruto y no pones hash en las contraseñas de la base de datos para ir a buscar tus credenciales cuando no consigues loguearte…

Venga, digamos que estabas en casa de tu amigo Willy Wonka mientras hacías esas chorradas, tomaremos pués esa ip (111.231.174.116) para quitarla de la lista de ip baneadas.

$ host wiliwonka.com
wiliwonka.com has address 111.231.174.116

Vamos a ello…

1. Listar las jaulas

$ sudo fail2ban-client status
Status
|- Number of jail:	2
`- Jail list:	nginx-http-auth, sshd

 

2. Encontrar la ip baneada

Miremos en la jaula sshd

$ sudo fail2ban-client status sshd | grep Banned | tr ' ' '\n'

Aqui te podria salir algo como esto, seguro que sale la de Willy Wonka :wink:

43.156.106.209
49.235.69.63
70.142.144.73
72.206.88.130
137.184.170.19
121.88.22.100
193.106.245.20
102.53.9.67
154.222.226.137
124.106.104.139
175.6.27.133
38.188.248.0
171.244.49.199
111.231.174.116
125.94.71.207
20.225.126.147
43.131.45.99
210.61.180.175
165.232.179.177
96.84.198.29
193.151.153.188
180.76.184.79
58.213.147.49
58.210.241.5
78.134.104.30
166.247.198.92
151.177.15.89
182.253.47.126
179.197.87.159
74.40.19.68
43.131.54.174
43.156.201.224
208.109.37.82
43.159.36.26
43.157.58.25
203.55.196.146
223.247.134.165

 

3. Quitar el ban de la ip

A continuación el comando mágico que buscabas y que te abrirá las puertas del paraíso:

$ sudo fail2ban-client set sshd unbanip 111.231.174.116
1

Si estas verdaderamente cabreado puedes mandar fail2ban al perneo (donde da la vuelta el viento) :

$ sudo systemctl stop fail2ban.service

Pero no es un buen consejo, digamos que con el comando mágico todo debería estar de nuevo operacional.

 


Agradecimientos a Willy Wonka por habernos prestado la ip de la chocolatería.

Saludos y ¡¡¡Happy Hacking !!!