Cómo implementar el inicio de sesión automático mediante ssh y scp
Ejemplo A es el host local (es decir, la máquina utilizada para controlar otros hosts); B es el host remoto (es decir, la máquina controlada Servidor Si la ip es los sistemas de A y B). son ambos Linux
Ejecute el comando en A: # ssh keygen t rsa (presione Enter tres veces seguidas para generar las claves pública y privada localmente sin establecer una contraseña) # ssh root@ ? chmod ssh (requiere una contraseña) # scp ~/ ssh/id_rsa pub? root@ : ssh/id_rsa pub (se requiere contraseña)
Comando en B: # touch /root/ ssh/authorized_keys (omita esto si este archivo ya existe Artículo) # cat /root/ ssh/id_rsa pub? >> /root/ ssh/authorized_keys (Agregar el contenido de id_rsa pub a autorizado_keys)
Regresar a la máquina A: # ssh root@ (no es necesario iniciar sesión con contraseña correctamente)
Si puede proteger su clave privada, este método es más seguro que ingresar la contraseña en el shell
En profundidad estudiar
Para comprender el proceso de inicio de sesión, primero el comando ssh keygen t rsa genera una clave y una clave pública, y la clave puede establecer su propia contraseña. La clave puede entenderse como una clave y pública. La clave puede entenderse como la cerradura correspondiente a la clave. Coloque la cerradura (clave pública) en el servidor que desea controlar y bloquee el servidor. Solo la persona que posee la clave (llave) puede abrir la cerradura e ingresar al servidor. controlarla. La persona propietaria de la clave debe conocer la contraseña de la clave. Utilice esta clave (a menos que la clave no tenga una contraseña establecida. Esto evitará que la clave se copie (se copia la clave privada). p>
Por supuesto, este ejemplo es solo para facilitar la comprensión. Por supuesto, las personas con contraseñas de root no estarán bloqueadas y no necesariamente tendrán un solo candado (clave pública), pero si alguien abre algún candado. con su clave correspondiente (clave privada), el servidor puede ser controlado por esa persona. Entonces, siempre que conozca la contraseña raíz del servidor y le ponga la clave pública con identidad raíz, puede usar la clave privada. correspondiente a la clave pública para abrir el servidor e iniciar sesión como root, incluso si se ha cambiado la contraseña de root.
Si desea controlar n máquinas, n pares de claves (clave y clave pública). son necesarios El comando ssh keygen puede cambiar el nombre del par de claves a voluntad. Por ejemplo: [root@wwy ssh]# ssh keygen t rsaGenerando el par de claves rsa pública/privada Ingrese el archivo en el que guardar la clave (/root/). ssh/id_rsa): /root/ ssh/id_rsa_
De esta manera, los nombres de la clave privada y la clave pública son: id_rsa_ e id_rsa_ pub Luego agregue el contenido del archivo id_rsa_ pub al servidor. ~/ssh/authorized_keys file
Finalmente, use el parámetro i del comando ssh para especificar la clave local localmente e inicie sesión: # ssh i /root/ ssh/id_rsa_
Si establece una contraseña para la clave, puede iniciar sesión con la contraseña de la clave. Si no establece una contraseña, puede iniciar sesión directamente lishixinzhi/Article/program/qrs/201401/30217
.