¿Cuál es la mejor manera de hacer scpde un cuadro a otro sin solicitar una contraseña?
Hay dos servidores:
Servidor A (10.152.2.10):
/home/oracle/export/files.txtServidor B (10.152.2.11):
/home/oracle/import/
Si deseo transferir los archivos usando scpdel servidor A al servidor B sin que se me solicite ingresar una contraseña
[ejecutando esto desde el servidor A, /home/oracle/export/]
scp files.txt [email protected]:/home/oracle/import
Esto me solicitaría una contraseña al ingresar el comando.
Entiendo que se requiere generar un keygen y copiarlo en el Servidor A. Así [en el servidor A]:
ssh-keygen -t rsa
Esto me da dos archivos almacenados en /home/oracle/.ssh:
id_rsa
id_rsa.pub
1. ¿Se supone que debo copiar los dos archivos ( id_rsa, id_rsa.pub) en el servidor B /home/oracle/.ssh?
Mientras realizaba una búsqueda en Google sobre esto, algunos artículos mencionaron sobre agregar / concatenar esto a claves_autorizadas.
2. ¿Se supone que debo crear este archivo por mi cuenta?
Parece que estoy confundido sobre cuál es la forma correcta de hacer esto.
Por cierto, los dos servidores están ejecutando Suse Linux Enterprise Edition 9 ...
fuente

Respuestas:
id_rsapara ti mismo; sin embargo,id_rsa.pubque es su clave pública, puede copiarse a los servidores a los que desea tener acceso. Concatenarlos al final de~/.ssh/authorized_keys.~/.ssh/authorized_keyssi aún no se ha creado; de lo contrario, solo agregue al final del archivo, usandocat id_rsa.pub >>~/.ssh/authorized_keys.fuente
También hay una herramienta que ordena todo esto para usted llamado
ssh-copy-id.Anexará la clave en su agente si tiene una ejecutándose en el
authorized_keysarchivo y la creará si no existe con los permisos correctos. Si no está ejecutando un agente, puede especificar la clave para presionar-i:ssh-copy-id -i ~/.ssh/id_rsafuente
También debe verificar los permisos en los distintos archivos y directorios:
Su directorio personal no debe ser editable por nadie más que usted.
fuente
En caso de que configure la clave generada desde,
ssh-keygenpero aún así la transferencia sin contraseña no funciona, verifique la clave pública utilizada en la máquina de origen en el comando de modo detallado de la siguiente manera:Por lo general, se refiere a la clave pública en la
/home/<user>/.ssh/id_rsa.pubque puede ser diferente de la que generó utilizandossh-keygen. Necesita agregar estoid_rsa.puben el servidor de destino.fuente
Yo haría lo siguiente:
Esto copia la clave del cliente al servidor. Necesitará la contraseña del servidor para que agregue su clave a su anillo.
Como mínimo, desactivaría la autenticación de contraseña.
fuente