Richard Dorman
Richard Dorman

Reputation: 24110

Non-interactive scp

I'm creating a bash script to create new EC2 instances and then upload a file once the instance is created. I'm using scp to upload the file, however, since this is the first time I'm connecting to the instance the script is prompted with "Are you sure you want to continue connecting (yes/no)?" since the authenticity of the host is not known. The script needs to run non-interactively.

Is it possible to avoid the prompt (there doesn't seem to be an obvious command line option). If not is there an alternative method or command I can use to upload the file?

Upvotes: 10

Views: 12860

Answers (2)

Michiel Buddingh
Michiel Buddingh

Reputation: 5919

You can set the option StrictHostKeyChecking to no in ~/.ssh/config. See ssh_config(5)

This can also be done from the command line: scp -i id -o stricthostkeychecking=no source.txt user@host:/path/

Where id is a private key where the corresponding public key resides in the authorized_keys file on the server

Upvotes: 11

Simon Groenewolt
Simon Groenewolt

Reputation: 10665

Although maybe not the definitive and safest solution, you could try writing an expect script.

Upvotes: 0

Related Questions