El comando ssh-add no agrega mi identidad a ssh-agent
20
Acabo de instalar ubuntu 13.10 y estaba a punto de agregar mi identidad a mi agente ssh, así que abrí una Terminal e hice esto
bjorgvin@buntu:~$ ssh-add -l
The agent has no identities.
bjorgvin@buntu:~$ ssh-add
bjorgvin@buntu:~$ ssh-add -l
The agent has no identities.
bjorgvin@buntu:~$
ssh-add agrega identidades de clave privada al agente de autenticación, ssh-agent (1). Cuando se ejecuta sin argumentos, agrega los archivos ~ / .ssh / id_rsa, ~ / .ssh / id_dsa, ~ / .ssh / id_ecdsa y ~ / .ssh / identity. [...]
Los archivos de identidad no deben ser legibles por nadie más que el usuario. Tenga en cuenta que ssh-add ignora los archivos de identidad si otros pueden acceder a ellos.
Entonces, debido a un The agent has no identities.error, probablemente no tenga esos archivos o tal vez otros puedan acceder a esos archivos. Puede verificar esto utilizando el siguiente comando:
ls -l ~/.ssh
Además, después de ejecutar el ssh-addcomando, ejecútelo echo $?para ver el estado de error del comando anterior. Si el estado de salida devuelve 0, el comando se ejecutó con éxito. Si el estado de salida devolvió un valor distinto de cero, el comando no se pudo ejecutar.
Es cierto, no tengo esos archivos y el valor de salida de ssh-addera 1 pero no 0. Obviamente hay algún problema con mis permisos ya que los archivos no se crean. ¿Alguna idea de cómo podría solucionar esto? el directorio ~/.sshexiste (está vacío) pero no aparece cuando lo hagols -l
bjorgvin
Ejecuté este comando ssh-keygen -q -t rsa -N 'password' -f ~/.ssh/id_rsapara que man ssh-keygen me ayudara, gracias.
bjorgvin
1
Eso me dio la pista de importación en la dirección correcta para mí. Tenía varias claves ssh y primero tuve que agregar la clave adecuada usando ssh-add <keyname>. Entonces funcionó como un encanto. thx
paulroho
3
Por alguna razón, no tuve ningún resultado al ejecutar ssh-adddespués de ingresar la frase de contraseña, (estaba fallando de acuerdo con la $?retirada 1. Lo intenté chmod 600 ~/.ssh/id_rsa* sin suerte. Generé una nueva clave desde cero ssh-keygeny luego funcionó. Triste pero al menos es ok ahora (la clave fallida se generó usando ssh-keygen -t rsa -b 4096 -C "[email protected]", solo ejecuté ssh-keygenesta vez).
GabLeRoux
1
Tuve que hacer lo siguiente en este orden: (si es necesario, generar una nueva clave ssh y asegurarse de agregar la clave .pub a github), luego cd ~/.ssh && ls -lahpara ver los permisos de lectura / escritura en la carpeta .ssh, cambie todas las claves (s) ) con, chmod 400 myKeyentonces, ssh-add **ABSOLUTE**pathToKey si no agrega la ruta ABSOLUTE , no funcionará. Luego, ssh -vT [email protected]
pruébelo
3
Además de las consideraciones anteriores, descubrí que si está utilizando un shell alternativo, es posible que deba configurarlo para cargar ssh-agent. Por ejemplo, en Zsh, hay que añadir ssh-agentque pluginsen .zshrc.
Este método funciona muy bien en Ubuntu 17.10 con la última versión de Zsh
Otros encontraron que con las id_ed25519teclas, rsafuncionaba sin un complemento. Después de agregar ssh-agenta ~/.zshrc, reinicie el shell con exec "$SHELL"y ejecute:ssh-add ~/.ssh/id_ed25519
Enter passphrase for ~/.ssh/id_ed25519:
Identity added: ~/.ssh/id_ed25519 (user@host)
ssh-add
era 1 pero no 0. Obviamente hay algún problema con mis permisos ya que los archivos no se crean. ¿Alguna idea de cómo podría solucionar esto? el directorio~/.ssh
existe (está vacío) pero no aparece cuando lo hagols -l
ssh-keygen -q -t rsa -N 'password' -f ~/.ssh/id_rsa
para que man ssh-keygen me ayudara, gracias.ssh-add
después de ingresar la frase de contraseña, (estaba fallando de acuerdo con la$?
retirada 1. Lo intentéchmod 600 ~/.ssh/id_rsa*
sin suerte. Generé una nueva clave desde cerossh-keygen
y luego funcionó. Triste pero al menos es ok ahora (la clave fallida se generó usandossh-keygen -t rsa -b 4096 -C "[email protected]"
, solo ejecutéssh-keygen
esta vez).cd ~/.ssh && ls -lah
para ver los permisos de lectura / escritura en la carpeta .ssh, cambie todas las claves (s) ) con,chmod 400 myKey
entonces,ssh-add **ABSOLUTE**pathToKey
si no agrega la ruta ABSOLUTE , no funcionará. Luego,ssh -vT [email protected]
Además de las consideraciones anteriores, descubrí que si está utilizando un shell alternativo, es posible que deba configurarlo para cargar ssh-agent. Por ejemplo, en Zsh, hay que añadir
ssh-agent
queplugins
en.zshrc
.Este método funciona muy bien en Ubuntu 17.10 con la última versión de Zsh
Otros encontraron que con las
id_ed25519
teclas,rsa
funcionaba sin un complemento. Después de agregarssh-agent
a~/.zshrc
, reinicie el shell conexec "$SHELL"
y ejecute:ssh-add ~/.ssh/id_ed25519
fuente