SSH A veces funciona, a veces no: red local

SSH A veces funciona, a veces no: red local

Empecé a tener los problemas más extraños: cuando intento conectarme por SSH al servidor que está a mi lado, se niega a conectarse. Si sigo intentándolo, eventualmente se conectará.

~ $ ssh 192.168.0.10
ssh: connect to host 192.168.0.10 port 22: Connection refused
~ $ ssh 192.168.0.10
ssh: connect to host 192.168.0.10 port 22: Connection refused
~ $ ssh 192.168.0.10
ssh: connect to host 192.168.0.10 port 22: Connection refused
~ $ ssh 192.168.0.10
ssh: connect to host 192.168.0.10 port 22: Connection refused
~ $ ssh 192.168.0.10
[email protected]'s password: <--- Connected here

Lo primero que pensé fue que se trataba de algún tipo de conflicto de IP inducido por DHCP en mi red, pero después de comprobarlo cuidadosamente, ese no es el caso.

Lo extraño es que todo es aleatorio, a veces funciona de inmediato, otras pueden requerir más de 100 intentos. A veces, en mi computadora portátil (a través de WiFi) funciona la primera vez y falla otras veces, en comparación con mi computadora de escritorio con cable, que solía funcionar siempre pero ahora comienza a mostrar el mismo comportamiento.

¿Alguien ha experimentado esto antes? ¿Qué registros debería mirar en mi servidor para ayudar a determinar qué está causando este comportamiento extraño?

El servidor ejecuta Ubuntu 20.04

Respuesta1

En caso de que esto te ayude, tuve problemas similares.

Después de descartarlo fail2bandescubrí sshd_configque lo usaba ufwcon una LIMITregla para el puerto ssh. Permití SSH en blanco y ahora funciona. El problema fue con demasiadas conexiones.

Respuesta2

¿Este 'servidor' tiene un puerto SSH público?

Podría ser el resultado de que alguien intente iniciar sesión por fuerza bruta en su servidor. Si tiene la MaxStartupsconfiguración predeterminada, el servidor solo permitirá un número limitado de intentos de conexión entrantes en un momento dado y rechazará el resto.

Los registros que vería en este caso serían toneladas de fallas de autenticación en /var/log/auth.log.

También podría ser rechazado por algún otro sistema de prevención de intrusiones, quizás implementado con netfilter o algo más.

Suponiendo que esto es el resultado de MaxStartups o algún otro sistema de prevención de intrusiones, generalmente no debe hacer que SSH sea público o, si es público, limitar las direcciones entrantes a un subconjunto confiable o requerir una VPN o algo así.

Poner ssh en un puerto no estándar puede ayudar a reducir el sondeo y la fuerza bruta desde Internet.

información relacionada