La primera vez ssh-copy-idpreguntará
# ssh-copy-id -i .ssh/id_dsa.pub [email protected]
The authenticity of host 'example.com (xxx.xxx.xxx.xxx)' can't be established.
RSA key fingerprint is 39:fb:5e:70:30:33:2b:18:17:e9:4f:2f:91:b5:d2:21.
Are you sure you want to continue connecting (yes/no)?
¿Es posible escribir esto, entonces el guión solo responderá sí?

Respuestas:
Si
ssh-copy-idno admite la opción StrictHostKeyChecking, puede escribir un script que sí lo haga:ssh-keyscancontra el servidor de destino para obtener la clave públicassh-copy-idfuente
SSH tiene una opción para agregar automáticamente cualquier clave de host al archivo de hosts de confianza:
Como alternativa, puede hacer lo siguiente:
Editar : como parece que estas soluciones no funcionan
ssh-copy-id, siempre puede crear un~/.ssh/configarchivo con la siguiente opción:Esto debería funcionar con todas las conexiones SSH, independientemente de si se invocan mediante un script o no.
fuente
ssh-copy-idno tiene-ossh-copy-id -?ssh-copy-ides un guión. Puede modificarlo para agregar-o StrictHostKeyChecking=noo deshabilitar ese parámetro en el archivo ssh_config.ssh-copy-id servernamefunciona bien.sudo sed -i.bak 's/ssh \$/ssh -o StrictHostKeyChecking=no \$/' $(which ssh-copy-id).Prueba esto:
no agrega las claves de host al archivo known_hosts pero le permite copiar (o agregar) la clave pública a la
authorized_keysque desea, si ese es el único propósito aquí.fuente