2008-09-17 21 views
44

ssh buscará sus claves de forma predeterminada en la carpeta ~/.ssh. Quiero obligarlo a mirar siempre en otro lugar.Configuración de la ubicación predeterminada de la tecla ssh

La solución que estoy usando es para agregar las claves de la ubicación no estándar al agente:

ssh-agent 
ssh-add /path/to/where/keys/really/are/id_rsa 

(el shell de Linux y en Windows MingW32)

+0

Por cierto, la razón por la que quería hacer esto es para poder mantener mis llaves en Dropbox ... ¡funciona bien! – tardate

+3

¿Podría agregar enlaces simbólicos? –

+7

@tardate, hmm, confiar en Dropbox con tus llaves parece peligroso, a menos que las protejas con una contraseña bien ... – gatoatigrado

Respuesta

71

Si sólo está buscando para apuntar a una ubicación diferente para usted archivo de identidad, la que puede modificar su archivo ~/.ssh/config con la siguiente entrada:

IdentityFile ~/.foo/identity 

man ssh_config para encontrar otra opciones de configuración.

+3

Observe también que no puede enumerar este parámetro varias veces para varias claves. Sin embargo, enumerar demasiadas teclas (generalmente> 4) puede hacer que falle la autenticación antes de solicitar una contraseña en los sistemas donde la clave no es válida. ssh-agent o keychain (http://www.gentoo.org/proj/en/keychain/) son útiles aquí. – jmanning2k

+0

si ha protegido con contraseña para usted las claves ssh, es mejor que 'ssh-add-su-privada key', de lo contrario, siempre se pide la contraseña de clave –

+0

he tenido que añadir que la línea al principio de la configuración. Agregarlo hasta el final no funcionó. – SebK

14

man ssh me da esta opción podría ser útil.

identity_file -i Selecciona un archivo desde el que se lee la identidad (clave privada) para RSA o DSA . El valor predeterminado es ~/.ssh/identity para el protocolo versión 1, y ~/.ssh/id_rsa y ~/.ssh/id_dsa para pro- tocol versión 2. Los archivos de identidad también pueden especificarse por host- en el archivo de configuración. Es posible tener múltiples -i opciones (y múltiples identidades especificadas en config- archivos de configuración).

Por lo que podría crear un alias en la configuración del golpe con algo como

ssh alias = "ssh -i/ruta/a/private_key"

No he mirado en un archivo de configuración de ssh, pero al igual que la opción -i esto también podría tener un alias

-F configfile Especifica un archivo de configuración alternativo por usuario. Si se proporciona un archivo de figuración en la línea de comandos, se ignorará el archivo de configuración de todo el sistema (/ etc/ssh/ssh_config). El valor predeterminado para el archivo de configuración por usuario es ~/.ssh/config.

-5

La ubicación del archivo es el directorio /root/.ssh con el nombre "authorized_keys", por lo general está oculto por razones de seguridad. * si usa el puTTy y la línea de comando, use: #cd ~/.ssh y luego edite el archivo "authorized_keys" con el editor vi. Consulte también, escriba #man ssh_config proporcionará más opciones (si es necesario) Espero que esto ayude.

+0

Esto no proporciona una respuesta a la pregunta. Para criticar o solicitar aclaraciones de un autor, deje un comentario debajo de su publicación; siempre puede comentar sus propias publicaciones, y una vez que tenga suficiente [reputación] (http://stackoverflow.com/help/whats-reputation) lo hará poder [comentar cualquier publicación] (http://stackoverflow.com/help/privileges/comment). – Kenster

+0

@Kenster: ¿De qué manera no es una respuesta? –

+1

@LightnessRacesinOrbit La pregunta es acerca de cómo obtener el cliente ssh para leer las claves de otra ubicación. Nada en esta respuesta responde a eso. _authorized_keys_ es leído por el _Server_, no el cliente, y no hay ningún cambio que podría hacer a ese archivo lo que modificaría donde el _Client_ busca sus llaves. Incluso si había una buena razón para editar ese archivo, la respuesta no dice por qué editarlo o qué cambio realizar. Sé que se supone que debemos ser generosos al decidir si algo no es una respuesta. Pero esta "respuesta" es, en el mejor de los casos, un párrafo de texto genérico relacionado con ssh. – Kenster

Cuestiones relacionadas