Necesito configurar sesiones ssh entre dos servidores y no quiero que el script complete el nombre de usuario y la contraseña cada vez.
Sin embargo, parece que no puedo averiguar de dónde está usando el servidor SSH su configuración.
bash-2.05# ssh -V
Sun_SSH_1.1, SSH protocols 1.5/2.0, OpenSSL 0x0090700f
Tengo un archivo de archivos de certificados en / etc / ssh / y ~ / .ssh /. Solo puedo encontrar un archivo de configuración para SSH y está en / etc / ssh / ssh_config, pero no contiene datos (todo está comentado).
¿Alguien sabe cómo puedo averiguar dónde está almacenado el certificado o cómo puedo exportarlo para poder transferirlo al otro servidor? Esperaba que los archivos de configuración me dieran la respuesta, pero proporcionan poca o ninguna ayuda.
fuente
Debe encontrar la clave pública ssh para el usuario que será el usuario de inicio de sesión para el script.
Por ejemplo, si tengo el servidor A y el servidor B, haría lo siguiente.
entonces haga algo similar en ServerB
Luego, en el servidor A, arroje la clave pública del usuario de scriptrunner del servidor B en
/home/scriptrunner/.ssh/authorized_keys
y hacer lo contrario en el servidor B (utilizando el usuario de scriptrunner del servidor A
/home/scriptrunner/.ssh/authorized_keys
en claves_autorizadas en el servidor B)Entonces debería poder hacerlo
ssh scriptrunner@serverA
desde el servidor B usando la clave, y viceversa.También puede utilizar
ssh-copy-id
para hacer el bit autorizado de claves.fuente
Para establecer una conexión ssh con autenticación de clave pública, el usuario que inicia la conexión debe tener un par de claves pública / privada. En muchas distribuciones de Linux, estas claves no se generan por defecto y deben ser generadas por el propio usuario (o por el administrador en su nombre).
Si ha iniciado sesión como usuario relevante, vaya a su directorio de inicio y ejecute
Acepte todos los valores predeterminados y se creará un nuevo par de claves en ~ / .ssh / id_rsa y ~ / .ssh / id_rsa.pub. Ahora copie la clave pública y péguela en el archivo ~ / .ssh / Authorized_keys de la cuenta de usuario de destino en la máquina de destino. Luego habilite la autenticación de clave pública en la máquina de destino (en / etc / ssh / sshd_config) y debería estar listo.
NOTA : hay muchos posibles obstáculos en este proceso cuando lo hace por primera vez. Todos los permisos deben ser correctos y los archivos deben estar en los lugares correctos. Probablemente sea mejor si sigues un HowTo como este .
fuente