Como transferir a identidade (SSH) de uma máquina para uma nova máquina?

18

Estou criando uma nova máquina Ubuntu como servidor, que deve substituir uma antiga por uma mais antiga.

Minha pergunta é:

É possível transferir / copiar as credenciais (em termos de SSH) da máquina / servidor antigo para a nova máquina?

Meu objetivo é que a nova máquina substitua a antiga e seja vista pelos outros como a mesma máquina ao usar o SSH. Em outras palavras, desejo facilitar a atualização da minha rede sem precisar redefinir as credenciais baseadas em SSH se um servidor (e em particular o SO) for substituído.

obrigado

- Atualização -

Meu objetivo específico era transferir credenciais apenas para o servidor, mas às vezes uso o ssh para substituir o login baseado em senha, e as sugestões nas conexões cliente / servidor também são muito úteis.

tinlyx
fonte
Forneça mais detalhes. Os usuários usam chaves de senha ou SSH? Você transfere as contas de usuário e as chaves públicas SSH?
AL

Respostas:

29

As credenciais do servidor - que compõem os clientes SSH de "impressão digital" falham sobre se estão incorretas - são na verdade apenas pares de chaves definidos em /etc/ssh/sshd_config:

# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

Copie esses arquivos (com suas variantes .pub), replique uma configuração semelhante apontando para eles, recarregue sshde tudo deve funcionar.

Você também deseja copiar as chaves de publicação do cliente (que as pessoas fizeram upload nas suas, ~/.ssh/authorized_keysmas, como se trata de uma atualização, você provavelmente as copiará de qualquer maneira.

E, obviamente, a impressão digital também depende do nome do host ser o mesmo, mas parece que é o que você está fazendo de qualquer maneira.

Oli
fonte
3

Você deve anexar o conteúdo $HOME/.ssh/id_rsa.pubao outro servidor $HOME/.ssh/authorized_keys. Felizmente, existe um binário para isso; ssh-copy-id. Seu uso é simples:ssh-copy-id -i .ssh/id_rsa.pub <user>@<remote.server>

Tolga Ozses
fonte
Você não redefinir credenciais baseadas em SSH quando você usassh-copy-id
Tolga Ozses