Como várias chaves privadas podem ser usadas com o ssh?


58

Consegui configurar o ssh para usar a autenticação de chave pública / privada. Agora eu sou capaz de fazer

ssh user@server1

E faz logon com a chave privada. Agora eu quero conectar-me a outro servidor e usar uma chave diferente. Como configurá-lo para

ssh user@server1

usa privatekey1

ssh user@server2

e usa privatekey2


7
Sem motivo real - um é um mythbox pessoal e o outro é um servidor de trabalho, e eu não queria usar minha chave de casa no trabalho.
Joshua

nenhuma das respostas parecem responder à quesiton completo, por exemplo, como criar chaves diferentes privatekey1 e privatekey2
jpwynn

Respostas:


49

Existem algumas opções.

  1. Carregue as duas chaves no seu agente ssh usando ssh-add. Em seguida, ambas as chaves estarão disponíveis ao se conectar aos dois servidores

  2. Crie seu $HOME/.ssh/configarquivo e crie uma Hostseção para server1 e outra para server2. Em cada Hostseção, adicione uma IdentityFileopção apontando para o arquivo de chave privada apropriado


2
O agente ssh foi uma ótima idéia, também se eu tiver os arquivos de chave pública e privada, como key1 e key1.pub, em ~ / .ssh, ele os carregará automaticamente.
Joshua

57

Você pode configurá-lo em seu ~/.ssh/configarquivo. Você teria algo parecido com isto:

Host server1
IdentityFile ~/.ssh/key_file1

Host server2
IdentityFile ~/.ssh/key_file2

man ssh_config é uma referência


4
Você também pode especificar Userpara cada host reduzir os pressionamentos de tecla. Por fim, ao gerar uma nova chave SSH para cada host, ssh-keygenverifique se você realmente inseriu um caminho de chave alternativo.
Marco Ceppi

Existe uma opção para especificar uma chave padrão, como dizer host x ->key1e depois o resto dos anfitriõeskey2
azerafati

Sim, use sh Host * E adicione os padrões. Em seguida, substitua a van por baixo. Além disso: sh man_ssh_config Especificamente a parte na seção "Host" com relação ao asterisco '*' e ponto de exclamação '!'
Immeëmosol> 19/0318
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.