¿Es posible no tener una contraseña ssh para un usuario cuando proviene de una red específica?

¿Es posible no tener una contraseña ssh para un usuario cuando proviene de una red específica?

Me gustaría iniciar sesión en ssh sin proporcionar una contraseña cuando me conecto desde una red específica (soy consciente del riesgo).

¿Es esto algo que se puede configurar?

Tenga en cuenta que no me refiero a la autenticación basada en claves (que tengo implementada para redes expuestas), sino a la capacidad de escribir un inicio de sesión y autenticarse sin la necesidad de ingresar la contraseña de ese usuario.

Respuesta1

Sí, algo como esto:

sshpass -pfoobar ssh -o StrictHostKeyChecking=no user@host command_to_run

paso sshes una utilidad diseñada para ejecutar ssh utilizando el modo denominado autenticación de contraseña "teclado interactivo", pero en modo no interactivo.

ssh utiliza acceso TTY directo para asegurarse de que la contraseña sea emitida por un usuario de teclado interactivo. Sshpass ejecuta ssh en un tty dedicado, engañándolo haciéndole creer que está obteniendo la contraseña de un usuario interactivo.

El comando a ejecutar se especifica después de las opciones propias de sshpass. Normalmente será "ssh" con argumentos, pero también puede ser cualquier otro comando. Sin embargo, la solicitud de contraseña utilizada por ssh está actualmente codificada en sshpass.

información relacionada