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.
Respostas:
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
:Copie esses arquivos (com suas variantes .pub), replique uma configuração semelhante apontando para eles, recarregue
sshd
e tudo deve funcionar.Você também deseja copiar as chaves de publicação do cliente (que as pessoas fizeram upload nas suas,
~/.ssh/authorized_keys
mas, 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.
fonte
Você deve anexar o conteúdo
$HOME/.ssh/id_rsa.pub
ao 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>
fonte
ssh-copy-id