#概要
Vagrant などで CentOS 7 マシンを建てたあと、
ssh-copy-id コマンドで公開鍵を送り込もうとした際に、
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
のエラーが出た場合の対処法。
#原因
centOS 6 までとは違い、CentOS 7 からはパスワード認証がデフォルトで無効になっているようです。
ssh-copy-id は接続先マシンのパスワードを要求するため、パスワード認証ができないと問答無用でエラーになってしまいます。
#対処
ホストOSから鍵を送る対象のマシンにSSHでログインし、
/etc/ssh/sshd_config の PasswordAuthentication の項目を一旦 yes に変更します。
PasswordAuthentication yes
変更を反映させるために
$ systemctl restart sshd
で sshd を再起動すれば、上述のエラーは出なくなると思います。
※セキュリティの観点から、鍵を送った後は PasswordAuthentication を no に戻したほうがいいと思います。