回答:
上記の手法は一般的なケースで機能しますが、Amazon Web Services(AWS)PEMファイルでは機能しませんでした。
私はAWSドキュメントで次のコマンドが機能することを見つけました:
ssh-keygen -y
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
完全な行を編集してくれてありがとう@makenova:
ssh-keygen -y -f key.pem > key.pub
ssh-keygen -y -f key.pem > key.pub
ssh-keygen -y -f key.pem
key.pem
、そのキーを必要とするインスタンスにログインできなくなる可能性があります。
Amazon AWS .pem
キーペアを別のリージョンにコピーする方法を検討している場合は、以下を実行してください。
openssl rsa -in .ssh/amazon-aws.pem -pubout > .ssh/amazon-aws.pub
その後
aws ec2 import-key-pair --key-name amazon-aws --public-key-material '$(cat .ssh/amazon-aws.pub)' --region us-west-2
openssl
はPEMヘッダーに挟まれており、AWS CLIがキーを受け入れる前に削除する必要があります。
AWSが既存の公開鍵をインポートする場合、
これを行う.pemからエクスポート...(Linuxの場合)
openssl rsa -in ./AWSGeneratedKey.pem -pubout -out PublicKey.pub
これは、次のようなテキストエディターで開くとファイルを生成します...
-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn/8y3uYCQxSXZ58OYceG
A4uPdGHZXDYOQR11xcHTrH13jJEzdkYZG8irtyG+m3Jb6f9F8WkmTZxl+4YtkJdN
9WyrKhxq4Vbt42BthadX3Ty/pKkJ81Qn8KjxWoL+SMaCGFzRlfWsFju9Q5C7+aTj
eEKyFujH5bUTGX87nULRfg67tmtxBlT8WWWtFe2O/wedBTGGQxXMpwh4ObjLl3Qh
bfwxlBbh2N4471TyrErv04lbNecGaQqYxGrY8Ot3l2V2fXCzghAQg26Hc4dR2wyA
PPgWq78db+gU3QsePeo2Ki5sonkcyQQQlCkL35Asbv8khvk90gist4kijPnVBCuv
cwIDAQAB
-----END PUBLIC KEY-----
ただし、AWSはこのファイルを受け入れません。
あなたはファイルからとファイルから取り除く必要が-----BEGIN PUBLIC KEY-----
あり-----END PUBLIC KEY-----
ます。保存してインポートすれば、AWSで動作するはずです。
ssh-rsa AAAAB3NzaC1y....
実行するためにこのフォーマットを変換する必要がある場合:ssh-keygen -f PublicKey.pub -i -mPKCS8