Amazon Elastic Compute Cloud (Amazon EC2) Linux インスタンスに接続する際に、「imported-openssh-key」または「Putty Fatal Error」エラーが表示されるのはなぜですか?

最終更新日: 2020 年 10 月 6 日

Amazon Elastic Compute Cloud(Amazon EC2)Linux インスタンスに接続すると、「imported-openssh-key」または「Putty Fatal Error」というエラーが表示されます。これらのエラーを解決する方法を教えてください。

簡単な説明

SSHを使用してLinuxインスタンスに接続すると、次のようなエラーが表示されます。

「Using username "root".Authentication with public key "imported-openssh-key" Please login as the user "ec2-user" rather than the user "root".」

- または -

PuTTY クライアントを使用すると、次のようなエラーが表示されます。

「PuTTY Fatal Error: Disconnected: No supported authentication methods available (server sent: publickey) OK」

これらのエラーは、次の状況で発生する可能性があります。

  • EC2 インスタンスと SSH セッションをネゴシエートするときに、AMI の適切なユーザー名を使用して接続していない。
  • EC2 インスタンスと SSH セッションをネゴシエートするときに、間違ったプライベートキーを使用している。

解決方法

正しいユーザー名で接続していることを確認する

ローカルマシンで、適切なユーザー名で接続していることを確認します。適切なユーザー名の完全なリストについては、「エラー: Host key not found、Permission denied (publickey)、または Authentication failed, permission denied (ホストキーが見つかりません、権限の拒否 (publickey)、または認証失敗、権限の拒否)」をご参照ください。

秘密キーが正しいことを確認する

1.    Amazon EC2 コンソールを開き、[インスタンス] をクリックします。

2.    SSH を使って接続する EC2 インスタンスを見つけます。

3.    [キー名] 列で、SSH 経由の接続に使用する秘密キーの名前を確認します。

PuTTY

SSH 秘密キーが、コンソールの EC2 インスタンスの [ キー名] 列に表示される秘密キーと一致することを確認します。

秘密キー (.pem) ファイルが PuTTY (.ppk) で認識される形式に変換されていることを確認します。詳細については、 PuTTYgen を使用した秘密キーの変換をご参照ください。

macOS または Linux

以下のコマンドを実行して、自分だけが表示できるように、キーペアファイルのアクセス許可を変更したことを確認します。

$ chmod 400 my-key-pair.pem

次のコマンドの例に示すように、-i フラグの後に指定したディレクトリとファイル名を確認し、秘密キーへの正しいパスであることを確認します。

$ ssh -i my-key-pair.pem ec2-user@52.4.XX.XX