2016年11月20日日曜日

ssh-copy-id で ERROR: No identities found と表示されたとき

ssh-copy-idで公開鍵の設置を行おうとしたときに
ERROR: No identities found と表示され設置に失敗しました。

公開鍵に不備があるのかと思い、再作成して確認しましたが、
結果は変わらず。

個人的な事情で公開鍵のファイル名はデフォルトを利用せず
用途ごとに名前を設定して運用していたのですが、
これが今回の原因でした。

今回のことで知ったのですが、sshの公開鍵のファイルに
つける名前には命名規則があるようです。

設置に失敗したときのコマンドはこんな感じ
ssh-copy-id -i .ssh/ida_rsa_windows_github.openssh_pub

設置に成功したときのコマンドはコレ
ssh-copy-id -i .ssh/ida_rsa_windows_github.pub_openssh

違いはファイル名の拡張子です。
この拡張子が「pub」で始まらなければならないことです。
拡張子が無い場合は失敗します。

手違いで内容に違いが出た可能性も考えられたので
拡張子の違うファイルをdiffで確認しましたが、差分は
確認できませんでした。

このことに気付くのに結構な時間がかかりました。
デフォルトと違うことをしている場合に問題が発生したときは、
初めに自身で行っている内容を確認することが大事ですね。