Respostas:
Sim, você deseja criar um ~/.ssh/configarquivo. Isso permite definir um nome de atalho para um host, o nome de usuário ao qual você deseja se conectar e qual chave usar. Aqui está uma parte minha, com nomes de host ofuscados:
Guias do host
HostName tabs.com
Usuário me
Arquivo de identidade ~ / .ssh / new_rsa
Host scm.company.com
Limite de usuário
Arquivo de identidade ~ / .ssh / git_rsa
Organizar o estadiamento do projeto
HostName 50.56.101.167
Usuário me
Arquivo de identidade ~ / .ssh / new_rsa
Com isso eu posso dizer, ssh tabse me conectar ao host tabs.com como usuário me, com chave new_rsa, como se eu tivesse usado ssh me@tabs.com -i ~/.ssh/new_rsa.
Os clientes SSH normalmente usam ~/.ssh/identity(ssh v1) ou um dos ( ~/.ssh/id_rsaou ~/.ssh/id_dsav2) como a chave privada padrão. Você pode alterar isso em ~/.ssh/config(o IdentityFileparâmetro - a -iopção para SSH realmente substitui isso. Consulte man ssh_configpara obter detalhes).
Se você tiver várias chaves privadas para lidar com o uso, ssh-agentprovavelmente é uma escolha melhor.
Veja man ssh-agentpara mais detalhes.
Se você usar chaves diferentes para servidores diferentes, não acho que exista.
Se você usar uma única chave para todos os servidores, salve-a como ~/.ssh/id_rsa, ela será usada automaticamente.
ssh-agentpor qualquer motivo.