Pregunta:
Noté algo extraño en mi servidor Ubuntu Xenial.
Tiene SSH en el puerto predeterminado y fail2ban.
Fail2ban detecta intentos de fuerza bruta en el servidor y se registran en consecuencia:
2017-01-12 10:58:19,927 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
2017-01-12 11:03:27,808 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
2017-01-12 11:08:37,936 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
2017-01-12 11:13:51,538 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
2017-01-12 11:18:57,939 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
2017-01-12 11:24:10,399 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
2017-01-12 11:29:23,161 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
2017-01-12 11:34:34,064 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
2017-01-12 11:39:44,540 fail2ban.filter [23119]: INFO [sshd] Found x.x.x.x
xxxx es la misma IP en todos los casos, y este tipo solo está suplantando nombres de usuario aleatorios, como se ve en auth.log:
Jan 12 12:05:46 MYSERVER sshd[23579]: Invalid user journalist from x.x.x.x
Jan 12 12:05:46 MYSERVER sshd[23579]: input_userauth_request: invalid user journalist [preauth]
Jan 12 12:05:46 MYSERVER sshd[23579]: Received disconnect from x.x.x.x port 47995:11: Normal Shutdown, Thank you for playing [preauth]
Jan 12 12:05:46 MYSERVER sshd[23579]: Disconnected from x.x.x.x port 47995 [preauth]
Fail2ban los ve, los enumera como "Encontrados", pero sin prohibirlos. ¿Algunas ideas?
Editar:
cat /etc/fail2ban/jail.d/myjails.local
[apache-auth]
enabled = true
[sshd-ddos]
enabled = true
[recidive]
enabled = true
[dovecot]
enabled = true
[postfix]
enabled=true
Los archivos de configuración restantes se dejan como están de acuerdo con los valores predeterminados de Ubuntu, a saber, /etc/fail2ban/jail.conf
tiene:
[sshd]
port = ssh
logpath = %(sshd_log)s
[sshd-ddos]
# This jail corresponds to the standard configuration in Fail2ban.
# The mail-whois action send a notification e-mail with a whois request
# in the body.
port = ssh
logpath = %(sshd_log)s
y tenemos:
cat /etc/fail2ban/jail.d/defaults-debian.conf
[sshd]
enabled = true
Respuesta:
Fail2ban parece legítimamente no prohibir a nadie: el registro proporcionado no muestra a nadie que exceda los límites predeterminados que Ubuntu xenial incluye con fail2ban.
Busque en su /etc/fail2ban/jail.conf
, en la sección [DEFAULT]
están los parámetros findtime
(por defecto 600 segundos , 10 minutos) y maxretry
(por defecto 5 veces , dentro de esa ventana de búsqueda). Lo que significa que alguien que está probando solo unas pocas contraseñas por hora simplemente no las activará.
Tenga en cuenta que no necesita cambiar este archivo (y no debería hacerlo, para poder actualizarlo limpiamente). También puede poner el bloque [DEFAULT] en su /etc/fail2ban/jail.d/myjails.local
:
[DEFAULT]
findtime = 3600
bantime = 3600
maxretry = 4
- Mire al comienzo del archivo
jail.conf
en realidad le da algunas pistas sobre cómo y por qué. - No te encierres.
- Tus contraseñas deben ser lo suficientemente fuertes para que te sientas cómodo sabiendo que hay un par de personas probando un par de contraseñas por hora sin encontrar nada en un millón de años.