Gravatar de Armonth

Acceso a servidores SSH sin contraseñas y con clave RSA

No hace mucho estuve peleándome con un servidor SSH para quitar el sistema clásico de contraseñas y sustituirlo por claves RSA.

El acceso vía ssh al sistema clásico requiere de un usuario y una contraseña. El crackeo de la contraseña aunque difícil (y casi imposible si usamos contraseñas largas alfanuméricas con símbolos) es posible.

Con el sistema de claves RSA el atacante necesita tres cosas: el nombre de usuario, un fichero de claves RSA y la contraseña de dicho fichero. Un paso extra que sin duda ayudará. Rubén ha escrito un artículo en castellano explicando el método de forma sencilla. Con esto al ya seguro SSH se le añade una capa de seguridad extra.

Si aún así no nos convence o tenemos paranoia podemos usar Port Knocking (en castellano golpeo de puertos) para que el cortafuegos no deje pasar nada al puerto del SSH si no es con una IP que haga previamente conexión a varios puertos TCP prefijados. Aunque claro si para acceder primero tenemos que golpear varios puertos, luego introducir usuario, luego el fichero RSA debe ser correcto y para terminar la contraseña puede que terminemos por no saber entrar ni nosotros xD.

2 Comentarios (feed)

  1. Gravatar de Miquel Miquel nos comenta:

    Paranoyas aparte, el ssh no suele ser el agujero por donde se cuelan. Aún con con todo este tinglado un atacante (juanker) aprovecha un fallo de php para colarte un keystroke reader y se entera del nombre, de la clave de root y con ello el contenido del fichero de RSA, de la configuración de tu port knocking y de paso se cepilla todos tus datos…

    No es que quiera criticar el hecho de tomar medidas de seguridad, solo quiero apuntar que la cadena siempre se rompe por el eslabón más debil.

    Miércoles, 8 de Agosto/2007 @ 13:44

  2. Gravatar de Felipe Alfaro Solana Felipe Alfaro Solana nos comenta:

    Arriesgándome a sonar pedante, no es cierto que siempre hagan falta los tres elementos (nombre de usuario, clave privada RSA/DSA y contraseña de dicho fichero). De hecho, en muchas ocasiones el nombre de usuario es bien conocido y muy poca gente que yo conozca utiliza contraseña para proteger su fichero de clave privada RSA/DSA.

    El hecho de usar ssh-agent tampoco ayuda en gran medida a incrementar la seguridad al mantenerse la clave privada en memoria. Cualquier usuario con privilegios para acceder a /dev/mem o /dev/kmem podría extraerla limpiamente de la memoria. De hecho, recientemente se han publicado ataques similares contra sistemas dmcryt y cryptoloop de Linux.

    En entornos de estricta seguridad, el uso de ssh-agent y archivos de clave privada RSA/DSA creo que deberían estar altamente desaconsejados.

    Miércoles, 8 de Agosto/2007 @ 13:57

No seas tímido, da tu opinión

Sé respetuoso con los demás, la diferencia de opiniones enriquece la discusión, los comentarios bajo ciertas circunstancias pueden ser moderados y requerir aprobación.