Posso usar a autenticação de chave SSH para fazer login em um sistema remoto com um nome de usuário diferente?

Posso usar a autenticação de chave SSH para fazer login em um sistema remoto com um nome de usuário diferente?

Suponha que eu tenha um sistema remoto chamado "remotesystem" e uma conta de usuário "foouser" nesse sistema.

Eu sei que no meu sistema local posso gerar um par de chaves SSH como usuário local "foouser", colocar a chave pública no arquivo "/home/foouser/.ssh/authorized_keys" em "remotesystem". Quando eu faço SSH como "foouser" do meu sistema local para "sistema remoto", o SSH usa o par de chaves para me autenticar.

Mas e se meu nome de usuário local não for igual ao nome de usuário do sistema remoto? Ou seja, e se eu quiser fazer SSH como usuário local "baruser" para "remotesystem"? Obviamente, precisarei gerar um par de chaves para "baruser" e adicionar a chave pública a "/home/foouser/.ssh/authorized_keys". Então, eu deveria ser capaz de "ssh foouser@remotesystem" enquanto estiver logado como "baruser" localmente, e o SSH usará o par de chaves para autenticar, certo?

Estou perguntando porque estou tentando fazer com que a autenticação da chave funcione neste cenário, sem sucesso. Não tenho certeza se é devido à incompatibilidade de nome de usuário ou a um problema de configuração com o servidor SSH no sistema remoto.

Responder1

Sim, você pode fazer isso, exatamente como descreveu.

baruser@aqui ~$ ssh-add -l
4096 10:b3:fd:29:08:86:24:a6:da:0a:dd:c6:1e:b0:66:6a id_rsa (RSA)
baruser@aqui ~$ ssh foouser@remotesystem
mensagem motd, etc.
foouser@sistema remoto ~$

Responder2

É um pouco aparte, mas.....

Se você sempre usa o mesmo nome de usuário para um servidor remoto, também pode achar útil adicionar um host à sua configuração ssh:

Host remotesystem
    User baruser

Dessa forma, você não precisa se lembrar de especificar o nome de usuário ao fazer login e descarta isso quando tiver problemas com chaves no futuro.

Responder3

Seu nome de usuário local realmente não importa (além da chave privada ter que residir no diretório inicial do usuário local). Basta copiar a chave para a seção do usuário remoto authorized_keyse ela funcionará.

Responder4

Com qualquer problema relacionado ao ssh, a primeira coisa a fazer é aumentar o detalhamento do cliente:

ssh usuário@máquina -vvv

Se isso não fornecer informações sobre o que está errado, será necessário alterar o nível de log no servidor e reiniciar o daemon.

Nível de registro DEBUG3

Você deve encontrar a saída de depuração em /var/log/auth.log (ou onde quer que o ssh esteja configurado para efetuar login). Depois de encontrar o problema, lembre-se de redefini-lo como você o encontrou.

informação relacionada