Especifique o arquivo de Identidade Específica quando o ssh'ing for determinado usuário em ~ / .ssh / config

3

Eu gostaria de especificar um arquivo de identidade específico com base no usuário que eu estou ssh'ing quanto a um servidor.

Por exemplo, quando ssh como user1 do host 1 para o host 2 como user1

[user1@host1 ~]$ ssh user1@host2

Eu gostaria de usar um determinado arquivo de identidade. No entanto, quando eu ssh como user1 de host1 para host2 como user2, gostaria de usar um arquivo de identidade diferente

[user1@host1 ~]$ ssh user2@host2

Agora, posso fazer isso especificando o arquivo de identidade no comando

[user1@host1 ~]$ ssh -i ~/.ssh/id_user1 user1@host2

[user1@host1 ~]$ ssh -i ~/.ssh/id_user2 user2@host2

mas eu adoraria fazer isso no meu arquivo ~ / .ssh / config. Eu tentei o seguinte, mas parece que não funciona

Host user2@*
    IdentityFile ~/.ssh/id_user2

Host user1@*
    IdentityFile ~/.ssh/id_user1

Toda e qualquer ajuda é apreciada. Se isso tiver que ser configurado em outro lugar, tudo bem também. Eu gostaria apenas de evitar especificá-lo na linha de comando. Realmente adoraria descobrir isso, pois seria uma solução legal para o meu problema!

    
por Tyler R 02.03.2018 / 03:27

1 resposta

5

Você deve conseguir fazer isso com a diretiva Match , por exemplo,

Host host2
  HostName host2.some.dom.ain
  Match user user1  
    IdentityFile ~/.ssh/id_user1  
  Match user user2
    Identityfile ~/.ssh/id_user2
    
por 02.03.2018 / 03:56