Created attachment 2415 [details] Add -o LogLevel=INFO to ssh invokation Current ssh-copy-id script assumes that key is valid if the temporary log file doesn't contain the string 'Permission denied'. There are cases when this doesn't occur. One of the cases is when configuration file contains a LogLevel=QUIET option. Lets assume that ~/.ssh/config contains: > Host 127.* > LogLevel QUIET And we have no valid key for localhost. Attempting to connect doesn't give any errors: > $ ssh -o PreferredAuthentications=publickey -o IdentitiesOnly=yes user@127.0.0.1 > $ ssh -o LogLevel=INFO -o PreferredAuthentications=publickey -o IdentitiesOnly=yes user@127.0.0.1 > Permission denied (publickey,password). The fix is to add LogLevel=INFO to the ssh command, which is a sane default since ssh-copy-id actually depends on ssh to have loglevel set to INFO.
Thanks for the report, and sorry for taking so long to get round to it. Here's the commit that fixes this: http://git.hands.com/?p=ssh-copy-id.git;a=commitdiff;h=35f05e39cda8670b3f6797330a3e521fda509a4c;hp=baebbb9e18e4a1af7554d939710eacb665a24b68 My latest version incorporating that change is here: http://git.hands.com/ssh-copy-id which should work for you, and will hopefully make it's way into OpenSSH in the not too distant future. Cheers, Phil.
Close all resolved bugs after 7.3p1 release