Respostas:
Você pode ter chaves privadas diferentes em arquivos diferentes e especificar todas elas ~/.ssh/configusando IdentityFilevalores separados (ou usando a -iopção durante a execução ssh). Eles seriam tentados em sequência (checkout man 5 ssh_config).
No ssh-agententanto, se você estiver usando , pode ser necessário informar o agente sobre as várias chaves que você está usando ssh-add.
Sim:
-i identity_fileSeleciona um arquivo do qual a identidade (chave privada) para autenticação de chave pública é lida. O padrão é
~/.ssh/identitypara a versão 1 do protocolo e~/.ssh/id_dsa,~/.ssh/id_ecdsae~/.ssh/id_rsapara a versão 2. do protocolo. Os arquivos de identidade também podem ser especificados por host no arquivo de configuração. É possível ter várias-iopções (e várias identidades especificadas nos arquivos de configuração). O ssh também tentará carregar as informações do certificado do nome do arquivo obtido anexando-cert.pubaos nomes dos arquivos de identidade.
Basta adicionar -ipara cada identidade ou usar várias IdentityFilelinhas em você .ssh/config.
authorized_keyscomandos específicos em vez de um shell), pode ser necessário usar aIdentitiesOnly yesopção para garantirssh-agentque não use a incorreta. Veja também unix.stackexchange.com/q/52092/863