¡Hola Forastero!

Pareces nuevo por aquí. Si quieres participar, ¡pulsa uno de estos botones!

ssh authorized_keys

edited mayo 2014 en Dudas
Hola,

No consigo que dropbear me reconozca el authorized_keys para poder entrar por ssh sin contraseña. Me la pide cada vez.
He probado ponerlo en todos los lugares donde se me ha ocurrido y no va, con claves dsa y rsa
~/.ssh
/
/etc/dropbear
/usr/local/etc/dropbear

Estoy con firmware con oh04-hmt600w-sr30 








Comentarios

  • edited mayo 2014
    La verdad es que nunca había intentado esa opción, así que me ha tocado investigar un pelín y al final parece que lo he conseguido.

    Hay 2 problemas:

    1 - El binario está mal. Durante un tiempo la toolchain que usé estuvo corrupta y los binarios generados no funcionaban demasiado bien, sobre todo a la hora de detectar los atributos de ficheros/directorios y parece que la versión de dropbear incluida en el firmware LAMENTABLEMENTE se compiló en esa época.

    He subido una nueva versión a http://www.mediafire.com/download/8x867lay281p6ha/dropbear-2012.55_bin.rar. Únicamente incluye el binario dropbear, que para mí ha sido suficiente.

    2 - Dropbear es bastante especial con los permisos de directorios/ficheros, así que hay que tener cuidado con eso. Esto nos lleva a otro problema con el "home directory" de root que es / ya que tampoco sería lógico impedir la lectura de / a cualquier usuario excepto root. Lo que yo he hecho es cambiar el fichero /usr/local/etc/passwd y cambiar el home de root a /root (ahora lo tienes en / ). Una vez hecho esto, he creado el propio directorio /root y dentro de él el .ssh con mi fichero authorized_keys. Los permisos tanto para /root como /root/.ssh los he dejado en 700 y el del fichero en 600.

    ¿Por qué? porque ejecutando el viejo dropbear con los argumentos -E -F -s -g me daba un aviso de que el directorio /root debería ser propiedad del user o root y no debería tener permisos de lectura para el resto de usuarios (luego me he dado cuenta que seguía mostrando dicho aviso, así que he caído en que podría ser el problema 1).

    Haciendo dichos cambios a mí me permite conectar con ssh root@IP_DE_MI_REPRODUCTOR y ya no me pide contraseña. Eso sí, me aparecen avisos porque no existen los directorios/ficheros /var/log/lastlog, lastlog_openseek y /var/log/wtmp, pero eso ya son problemas menores.

    Espero que tú también lo consigas con estos cambios. No te doy una explicación más extensa con los comandos utilizados porque parece que no los necesitas.

    EDITO: Como podrás imaginar (por los argumentos usados en mi prueba), dropbear se tiene que ejecutar con los argumentos -s -g para que no acepte los logins con contraseña ni de usuarios ni de root (más info ejecutando dropbear --help).

    Saludos.
  • Genial, muchas gracias
    Con el binario que has enviado funciona perfecto, y no me sale ningun mensaje de aviso.

    Yo había probado con el dropbearmulti que vi en Opt_GeekyHMB, pero no funcionaba, no siquiera pedia la contraseña. Lo interesante del dropbearmulti es que parece que también es cliente ssh, pues el mismo ejecutable tiene un enlace simbólico a dropbear, ssh y dropbearkey

    Un saludo


  • Los avisos que me daba a mí eran por culpa del cliente ssh. Supongo que por una mala actualización. Lo reinstalé y ya no me han vuelto a aparecer.

    Si no usamos dropbearmulti es porque básicamente lo que me interesaba era un sustituto del telnetd. Si me hubieras dicho que preferías el dropbearmulti te podría haber compilado dicha versión.

    Saludos.
Accede o Regístrate para comentar.