Cree una clave ssh secundaria sin contraseña para configurar un túnel ssh
-
03-07-2019 - |
Pregunta
Necesito crear un script que configure automáticamente un túnel ssh. Creo que una clave ssh dedicada sin contraseña es un buen comienzo, pero no pude encontrar si esto es posible y cómo hacerlo. Esta clave debería tener privilegios limitados (solo configurar el túnel) pero necesito otra clave privada (con una contraseña) para mí.
¡Gracias!
Solución
Ok, he encontrado la respuesta.
Primero, ssh-keygen -f theNewPrivateKey
de lo contrario, sobrescribirá la clave privada anterior.
En segundo lugar, ssh -i theNewPrivateKey me @ mycomputer
la opción -i
cambia la clave privada utilizada para la autenticación.
Ahora puedo probar mi script.
Editar: cómo mi nueva clave tiene privilegios limitados:
Al copiar la clave pública en el archivo $ HOME / .ssh / authorized_keys2 de la computadora de destino, agregué esto:
command="sleep 99999999999" ssh-dss AAAAB3NzaC1kc3MA...
(+ the rest of the key)
Entonces el único comando permitido es esperar para siempre. Dado que el propósito de crear esta clave fue crear un túnel ssh inverso, esto debería estar bien. Luego creo el túnel:
ssh -T -R 7878:localhost:22 -i .ssh/mynewkey me@myhomecomputer
Finalmente puedo iniciar sesión desde la computadora de mi casa:
ssh myworklogin@localhost -p7878
Espero que esto no tenga problemas de seguridad. Si esto es algo malo, ¡hágamelo saber!
Otros consejos
Prueba el
ssh-keygen
comando.
Tuve una situación similar en la que tuve que sincronizar el contenido de un servidor automáticamente sin tener que proporcionar la contraseña en mi script de robocopy.
Este Enlace me ayudó.