Al poco tiempo de poner en marcha el servidor que alberga esta página comprobé que se estaban dando un montón de ataques por ssh.
Tras algunas lecturas y consultas me indicaron que un procedimiento de protección muy simple es el del cambio del puerto ssh por defecto y de la instalación de las aplicaciones denyhosts y fail2ban.
De esta manera aunque no evitaremos ataques DDOS (de denegación de servicio, vamos que te bombardean con tantas peticiones que te dejan el servidor asfixiado) ni ataques más serios, por lo menos nos quitaremos de encima a un buen número de zombies que se dedican a ir probando contraseñas por fuerza bruta.
Respecto a lo del puerto ssh podemos configurarlo editando /etc/ssh/sshd_config :
$ sudo nano /etc/ssh/sshd_config
y donde pone:
Port 22
lo sustituimos por otro cualquiera entre el 1025 y 65535, por ejemplo:
Port 1778
Aunque esta solución no nos libra de que mediante nmap o amap detecten en que puerto está escuchando nuestro ssh, por lo menos nos quitamos de encima algunos scripts malignos que buscan en el 22 directamente.
También se recomienda cortar el acceso al root:
PermitRootLogin no
Como veis en este archivo hay muchos parámetros que se pueden editar. Aquí y aquí podeis documentaros un poco de que cosas se pueden variar para mejorar nuestra protección.
Al acabar debéis parar el servicio ssh y reiniciarlo para que los cambios se activen
$ sudo /etc/init.d/ssh stop
$ sudo /etc/init.d/ssh start
Por último no olvides redirigir el puerto 1778 (o el que hayas elegido) de tu router a la IP de tu servidor.
Para conectarte por el nuevo puerto el comando es:
$ ssh -p 1778 usuario@IP_servidor
Si al conectarte te sale error de public keys (esto es porque tu servidor detectó anteriormente movimiento en el 22) borralos con:
$ sudo rm ~/.ssh/known_hosts
Esto es todo, en la próxima entrega hablaremos de denyhosts y fail2ban.
Deja una respuesta