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!

¿Fue útil?

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ó.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top