Solución:
Editado: Si posee ambas máquinas, puede compartir su clave privada. Pero esta solución no es segura para el caso de un portátil robado o para máquinas que no son de su propiedad.
Puede copiar sus claves privadas de H1 a H2, si desea utilizar la misma clave privada para poder iniciar sesión de H2 a S1. Cuando estás en H1 haces los comandos:
H1$ ssh H2 mkdir ~/.ssh
H1$ scp ~/.ssh/id_rsa ~/.ssh/id_dsa H2:~/.ssh/
¡Advertencia! Esto eliminará y reemplazará cualquier clave privada que tuviera en H2.
Mejor manera es generar nuevas claves privadas en H2 (ssh-keygen
) e instale su parte pública en S1 con ssh-copy-id
util. En este caso más seguro, tendrá dos juegos de llaves; uno es para el inicio de sesión H1-S1 y el segundo para el inicio de sesión H2-S1. Habrá dos claves públicas autorizadas en S1. Y podrá revocar cualquiera de ellos o ambos (por ejemplo, cuando le roban su computadora portátil o el propietario de la máquina decide deshabilitar su cuenta y reutilizar todos sus archivos).
Usar ssh-copy-id
SINOPSIS
ssh-copy-id [-i [identity_file]] [[email protected]]máquina
DESCRIPCIÓN
ssh-copy-id es un script que usa ssh para iniciar sesión en una máquina remota y agregar el archivo de identidad indicado al archivo ~ / .ssh / allowed_keys de esa máquina.
Usa dos claves privadas
Configure H2 usando el mismo proceso (pero no la misma clave privada) como lo hizo cuando configuró H1:
- Nunca hay una buena razón para copiar una clave privada de otra máquina. Si aún no ha generado una clave privada nueva en H2, hágalo ahora. También genere la clave pública correspondiente. En una terminal en H2,
escribe: ssh-keygen -t rsa
- Copie la clave pública de su H2 en el servidor. En una terminal en H2,
escribe: ssh-copy-id [email protected]
(pero use su nombre de usuario real en S1 y el nombre de host de S1, y luego escriba su contraseña en S1 cuando se la solicite).
Esto instala la clave pública de su estación de trabajo en el ~/.ssh/authorized_keys
archivo para ese usuario en el servidor.
- No hay paso 3. A partir de ahora, puede iniciar sesión en el S1 desde su H2 y también iniciar sesión en el S1 desde su H1.
detalles
Supongo que lo que realmente estás preguntando es
- Tengo un servidor (“S1”)
- Me conecto a mi servidor desde mi computadora portátil personal (“H1”)
- También quiero iniciar sesión en mi servidor desde mi estación de trabajo (“H2”).
¿Cuál es la forma correcta de hacer eso?
- Supongo que simplemente podría iniciar sesión con la misma contraseña desde ambos lugares. Esa no puede ser la forma correcta, porque todo el mundo dice que la autenticación de clave pública es mucho mejor que las contraseñas. (a)
- Supongo que podría simplemente copiar la clave privada de mi computadora portátil a mi estación de trabajo. Esa no puede ser la forma correcta, porque todos dicen que se supone que la clave privada nunca debe salir de la máquina cliente.
A la gente se le ha clavado en la cabeza que una cuenta en un servidor tiene un único nombre de usuario y, por supuesto, una única contraseña autorizada.
Los sistemas de clave pública como ssh son mejores que el sistema de contraseñas: una cuenta en un servidor tiene un solo nombre de usuario y cualquier número de claves públicas autorizadas, todos ellos enumerados en el ~/.ssh/authorized_keys
expediente.
(más detalles).