いくつかのEC2インスタンスでSSH公開鍵をコピーしようとしています。
ssh-copy-id
のマニュアルページを読んで、キーファイルを渡すと、プログラムは.pub
拡張子がない場合に追加します。
生成されるAWSキーは.pem
形式であり、次の回避策を使用できます。
ssh-keygen -y -f my-new-key.pem | ssh user@Host \
-i already-on-remote-server-key.pem 'cat > ~/.ssh/authorized_keys'
しかし、疑問は残ります... ssh-copy-id
ファイルで.pem
を使用することは可能ですか、それとも回避策を使用することが唯一の解決策ですか?
ssh-copy-id
はssh-agent
と一緒に使用できます。 my-new-key.pem
を使用してssh-add ~/.ssh/my-new-key.pem
ファイルをエージェントにロードすると、ssh-copy-id
がそれを新しいインスタンスにコピーします。
または、新しいssh-agent
を実行して、何をコピーするかをより適切に制御することもできます。
~ $ ssh-agent bash -c "ssh-add ~/.ssh/my-new-key.pem; ssh-copy-id -i already-on-remote-server-key.pem user@Host"
1つの一方的なアドバイス-すべてのAWSリージョンでEC2キーを再利用して、生成および維持する必要のあるキーの数を減らすことができます:複数のリージョンでEC2キーペアを再利用する。
お役に立てば幸いです:)