¿Cómo transferir la identidad (SSH) de una máquina a una nueva máquina?

18

Estoy haciendo una nueva máquina Ubuntu como servidor, que se supone que reemplaza una vieja con un software más antiguo.

Mi pregunta es:

¿Es posible transferir / copiar las credenciales (en términos de SSH) de la máquina / servidor anterior a la nueva máquina?

Mi objetivo es que la nueva máquina suplante a la anterior y que otros la vean como la misma cuando se usa SSH. En otras palabras, quiero facilitar la actualización de mi red sin tener que restablecer las credenciales basadas en SSH si se reemplaza un servidor (y en particular su sistema operativo).

Gracias

- Actualización -

Mi objetivo específico era transferir credenciales solo para el servidor, pero a veces uso ssh para reemplazar el inicio de sesión basado en contraseña, y las sugerencias sobre las conexiones cliente / servidor también son muy útiles.

tinlyx
fuente
Por favor proporcione más detalles. ¿Los usuarios usan contraseña o claves SSH? ¿Transfiere las cuentas de usuario y las claves públicas SSH?
AL

Respuestas:

29

Las credenciales del servidor —que componen la "huella digital" que los clientes SSH muestran sobre si son incorrectas - en realidad son solo pares de claves definidos en /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 estos archivos (con sus variantes .pub), replique una configuración similar que apunte hacia ellos, vuelva a cargar sshdy todo debería funcionar.

También querrá copiar sobre pubkeys de clientes (que las personas han subido a sus, ~/.ssh/authorized_keyspero como se trata de una actualización, probablemente los esté copiando de todos modos.

Y, obviamente, la huella digital también se basa en que el nombre de host sea el mismo, pero parece que eso es lo que estás haciendo de todos modos.

Oli
fuente
3

Debe agregar los contenidos $HOME/.ssh/id_rsa.puba los del otro servidor $HOME/.ssh/authorized_keys. Afortunadamente, hay un binario para eso; ssh-copy-id. Su uso es simple:ssh-copy-id -i .ssh/id_rsa.pub <user>@<remote.server>

Tolga Ozses
fuente
No restablece las credenciales basadas en SSH cuando usassh-copy-id
Tolga Ozses