¿Establecer una contraseña muy segura es suficiente para asegurar un SSH en el puerto 22?

8

Suponiendo que nadie pueda robarme la contraseña real, es prácticamente 99.9% imposible usar SSH para entrar en mi servidor que ejecuta SSH en un puerto estándar usando muy fuerte (24 símbolos que contienen mayúsculas, minúsculas, paréntesis, guiones bajos, dólares, puntos, etc. y sin palabras del lenguaje humano) contraseña?

Ivan
fuente
2
No publicaría esto como respuesta porque mucha gente parece estar en desacuerdo conmigo por alguna razón, pero cambiar el puerto a algo no estándar también ayudará a disminuir la superficie de ataque. Obviamente, necesitará usar una contraseña segura y mantener el servidor actualizado para proporcionar seguridad real, pero esto ayudará a evitar los escaneos comunes para puertos abiertos.
Paul Kroon

Respuestas:

3

aunque es raro, todavía hay exploits de 0 días ... así que nunca se sabe. ¿tal vez pueda limitar el acceso al puerto 22 [en el nivel de firewall] solo a unos pocos hosts / redes?

¿O tal vez puedes ir de manera segura aunque oscura e implementar el bloqueo de puertos ?

pQd
fuente
1
Creo que tocar puertos es la mejor idea entonces. Limitar redes / hosts es un andamio, soy muy móvil y tiendo a usar diferentes redes wifi y 3G.
Ivan
8

Recuerde que SU contraseña puede ser muy segura, mientras que otros usuarios pueden tener contraseñas realmente débiles. Poner AllowGroupso AllowUsersen /etc/ssh/sshd_configpara desactivar el acceso ssh para otros usuarios.

Recuerde también que su contraseña puede ser demasiado segura: es casi seguro que esta contraseña se anotará.

Habiendo dicho eso, creo que estás bastante seguro; si lo combinas con el bateo de babor, entonces estás muy seguro.

Moritz Ambos
fuente
1
+1 para AllowUsers ... definitivamente una ventaja.
Paul Kroon
1
Y por si
acaso
4

Todo depende de qué tan rápido pueda atacar un atacante en su puerto tcp / 22 para iniciar sesión. Si no está usando algo para terminar tales conexiones repetidas, con el tiempo se puede descubrir cualquier contraseña. En este caso, el tiempo será muy largo. Meses de martilleo constante. En los registros de SSH he dado un paseo, he visto poco martilleo dirigido contra cuentas específicas, y muchas puertas golpeando buscando contraseñas débiles.

Sin embargo, no puedes asumir que todos los atacantes son casuales. Alguien dirigido específicamente a usted tendrá la inversión de esperar varios meses para entrar. Es por razones como esta que se prefiere la clave compartida siempre que sea posible. Es muy probable que la contraseña que describa sea de tres nueves imposible de descifrar (en limitaciones de tiempo razonables). No aguantaría la respiración por cinco nueves.

sysadmin1138
fuente
1
"Todo depende de qué tan rápido pueda atacar un atacante en su puerto tcp / 22 para inicios de sesión. Si no está usando algo para terminar tales conexiones repetidas" - ¿No está configurado en todas las distribuciones comunes de forma predeterminada hoy en día?
Ivan
2
@Ivan Decepcionantemente, no, no lo es. apt-get install denyhosts(basado en Debian) pkg_add -r denyhosts(FreeBSD) es una de las primeras cosas que hacer en una caja nueva.
Pete
2
No siempre. Ubuntu no lo tiene por defecto y tampoco openSUSE o Fedora / Centos. Existen paquetes precompilados para los tres, pero debe tomar medidas positivas para activarlo.
sysadmin1138
3

Utiliza denyhosts. También considere usar un inicio de sesión basado en clave en lugar de una contraseña.

Pete
fuente
Sí, uso una clave (y con una buena frase de contraseña simbólica aleatoria, escrita solo en mi mente y con una fecha de vencimiento que tiene sentido). Pero todavía hay una contraseña para el usuario que configuré como describí.
Ivan
1

Mover sshd a un puerto no estándar probablemente sería trivial para agregar a su configuración, y probablemente eliminaría el 99% del tráfico de bots ssh. ¿Por qué exponerse a todos los ataques de fuerza bruta cuando puede esconderse tan fácilmente? ;-)

Por lo general, también recomiendo configurar sshd para usar solo la autenticación basada en pares de claves SSH, si va a estar expuesto a Internet en general. Mientras mantenga segura su clave privada, es casi imposible que los malos se autentiquen como usted con el servidor.

Como ya señaló otro comentarista, esto no lo protege contra exploits de 0 días en sshd. Siempre es una buena idea limitar el tráfico solo a las máquinas que necesitan conectarse mediante reglas de firewall.

Patrick Heckenlively
fuente