SSH e chaves públicas

1

Eu criei chaves para o git seguindo as instruções no link

Isso funciona bem, mas quando eu tento ssh para outro host, ele tenta usar a mesma chave pública. Além disso, ssh para servidores sem chave pública, mas a autenticação de senha falha com

$ssh user@host
Permission denied (publickey,password).

Como posso resolver isso usando chaves padrão para o github, mas não para outros hosts?

Eu vi esta mas não quero adicionar entrada para cada host , Quero que outro se comporte como se eu não tivesse nenhuma chave configurada e pedisse senha.

    
por umpirsky 19.03.2012 / 13:03

2 respostas

1

Renomeie sua chave do GitHub para que ela não use nenhum dos arquivos de chave padrão que ssh procura (algo como ~/.ssh/id_rsa_github ). Em seguida, adicione o seguinte a ~/.ssh/config para informar ssh para usar somente essa chave para conexões com o GitHub.

Host *.github.com
    IdentityFile ~/.ssh/id_rsa_github

Todas as outras conexões não tentarão a autenticação de chave porque não há chaves padrão. No entanto, geralmente não há nenhum dano nisso acontecer - se a chave for rejeitada, ssh tentará a autenticação por senha se ela estiver disponível.

    
por 02.06.2012 / 06:46
0

use seu .ssh/config e a expressão IdentityFile :

Specifies a file from which the user's RSA or DSA authentication identity is read. The default is ~/.ssh/identity for protocol version 1, and ~/.ssh/id_rsa and ~/.ssh/id_dsa for protocol version 2. Additionally, any identities represented by the authentication agent will be used for authentication.

em seguida, consulte .ssh/id_rsa_github (ou qualquer que seja o nome do seu 'keypair' para o github apenas ')'

    
por 19.03.2012 / 13:29