Adicionando uma chave privada à cadeia ssh

2

Eu tenho várias chaves privadas que uso para se conectar a várias caixas. Principalmente, isso é para a AWS que me importa uma chave para me conectar a máquinas - criei um conjunto de chaves separado para essa finalidade. Em vez de fazer constantemente:

ssh -i ~/.ssh/aws-key.pem [email protected]

Qual é a melhor maneira de adicionar aws-key.pem ao meu "ssh keychain" para que ele verifique por padrão todas as solicitações SSH, além da chave "id_dsa" existente?

    
por imaginative 01.06.2012 / 00:54

2 respostas

8

Você tem algumas escolhas.

Use o agente SSH . Simplesmente use ssh-add para todas as suas chaves privadas e deixe seu agente descobrir qual tecla usar. Eu geralmente prefiro usar um agente, e sempre inicio quando eu faço login no meu sistema, e adiciono todas as minhas chaves. Isso torna tudo fácil.

Altere sua configuração do ssh

# .ssh/config

# per host example
Host blah.example.com
    User zoredache
    IdentityFile ~/.ssh/username_YYYYMMDD_id_rsa

# global example
Host *
    User zoredache
    IdentityFile ~/.ssh/key1_YYYYMMDD_id_rsa
    IdentityFile ~/.ssh/key2_YYYYMMDD_id_rsa
    IdentityFile ~/.ssh/keyn_YYYYMMDD_id_rsa
    
por 01.06.2012 / 01:12
5

Use IdentityFile em ~/.ssh/config

Se você quiser apenas um host específico, inclua-o na diretiva Host .

     IdentityFile
         Specifies a file from which the user's DSA, ECDSA or DSA authentication identity is read.  The default is ~/.ssh/identity for protocol version 1, and ~/.ssh/id_dsa,
         ~/.ssh/id_ecdsa and ~/.ssh/id_rsa for protocol version 2.  Additionally, any identities represented by the authentication agent will be used for authentication.  ssh(1) will
         try to load certificate information from the filename obtained by appending -cert.pub to the path of a specified IdentityFile.

         The file name may use the tilde syntax to refer to a user's home directory or one of the following escape characters: ‘%d’ (local user's home directory), ‘%u’ (local user
         name), ‘%l’ (local host name), ‘%h’ (remote host name) or ‘%r’ (remote user name).

         It is possible to have multiple identity files specified in configuration files; all these identities will be tried in sequence.  Multiple IdentityFile directives will add
         to the list of identities tried (this behaviour differs from that of other configuration directives).
    
por 01.06.2012 / 00:59

Tags