優れたソフトウェアと実用的なチュートリアル
「選択されたユーザーキーはリモートホストに登録されていません」を解決する方法
使用中XシェルリモートログインAWSサーバーを使用すると、「選択したユーザーキーはリモートホストに登録されていません基本的にすべての初心者が同じエラーに遭遇しますが、SSH 接続中に「選択したユーザー キーはリモート ホストに登録されていません」というエラーが発生する原因は何でしょうか。以下は、エラーの原因の詳細な分析です。
Xshellツールは、最も人気のあるSSHリモートツールの1つです。PuTTYと比較して、より強力で、OpenSSHをサポートしています。
創造においてEC2サーバーに接続した後、SSH を使用して接続するときに SSH セキュリティ警告が表示されます。
ホストキーを確認してください。
xxx のホストキーが、ローカルホストキーデータベースに保存されているものと一致していません。ホストキーが変更されたか、誰かがこの接続を盗聴しようとしています。不明な場合は、この接続をキャンセルすることをお勧めします。
この時点で少し混乱しています。AWSが生成したキーの問題なのか、それともXshellを使ったSSH接続の問題なのか、どちらでしょうか?次に、問題を一つずつ解決していきます。
ステップ1:まず、ユーザー名が間違っていないか確認します。AWSには小さな落とし穴があります。それは、サーバーの種類ごとにデフォルトのユーザー名が異なることです。グーグル 雲これがデフォルトのルートです。AWSのさまざまなリナックスインスタンスのユーザー名。
Amazon EC2 Linux インスタンスのデフォルトのユーザー名は何ですか (SSH、PuTTY など)
EC2/AWS サーバー上の Linux インスタンス (Ubuntu、 デビアン、フェドーラ、 アマゾン Linux 等のデフォルトのユーザー名。
- Amazon Linux 2023/Amazon Linux 2/Amazon Linux ec2ユーザー
- セントOS centos または ec2-user
- デビアン 管理者
- フェドーラ fedora または ec2-user
- RHEL ec2-user または root
- スーズ ec2-user または root
- ウブントゥ ウブントゥ
- オラクル ec2ユーザー
- ビトナミ ビットナミ
テストマシンにインストールされているRHELシステムのデフォルトのユーザー名はec2-userまたはrootです。リモート接続時に両方のユーザー名を試しましたが、それでも接続できませんでした。
AWS公式ヘルプページ:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-linux-instance.html
ステップ 2: ユーザー名に問題がないことを確認した後、キーに問題がないか確認します。
キーを使用したリモート接続の手順は公式ドキュメントに記載されています。
インスタンスに接続するには、秘密鍵ファイルの場所を知っておく必要があります。SSH接続の場合は、自分だけがファイルを読み取れるように権限を設定する必要があります。
Amazon EC2 の使用時にキーペアがどのように機能するかについては、「Amazon EC2 キーペアと Linux インスタンス」を参照してください。
秘密鍵を見つける
インスタンスの起動時に指定したキーペアの .pem ファイルが保存されているコンピュータ上の場所への完全修飾パスを取得します。詳細については、「起動時に指定した公開鍵の特定」をご覧ください。秘密鍵ファイルが見つからない場合は、「秘密鍵を紛失しました。Linux インスタンスに接続するにはどうすればよいですか?」をご覧ください。
Puttyを使用してインスタンスに接続し、.pemファイルを.ppkファイルに変換する必要がある場合は、PuTTY を使用して Windows から Linux インスタンスに接続するトピックの PuTTYgen を使用して秘密鍵を変換する。
秘密鍵に権限を設定し、自分だけが読み取れるようにします
から macOS またはLinux接続
macOS または Linux コンピューター上の SSH クライアントを使用して Linux インスタンスに接続する場合は、次のコマンドを使用して、自分だけが読み取れるように秘密鍵ファイルの権限を設定します。
chmod 400 キーペア名.pem
これらの権限を設定しないと、このキーペアを使用してインスタンスに接続できません。詳細については、「エラー: 秘密鍵ファイルが保護されていません」をご覧ください。Windowsからの接続
ファイルエクスプローラーを開き、.pemファイルを右クリックします。「プロパティ」>「セキュリティ」タブを選択し、「詳細設定」を選択します。「継承を無効にする」を選択します。現在のユーザーを除くすべてのユーザーのアクセス権限を削除します。
Windows でリモート接続するときに、秘密キーのプロパティを変更してみてください。
プロパティを変更した後も、キーを使用して接続することはできません。
ステップ 3: SSH リモート接続ツール Xshell 6 のバージョンが低すぎて SSH 接続が実行できないかどうかを確認します。
パソコンのサーバー管理にXshell 6を使用していたため、長い間Xshellをアップデートしていませんでした。そこで、Xshell 6をXshell 7にアップデートして、再度接続を試みました。
接続に成功しました!
いろいろと苦労した結果、問題は Xshell のバージョンが低すぎることであることが判明しました。
最後にまとめると、リモート接続AWS EC2サーバーに接続できない場合、デフォルトの入力ルートなどの正しいユーザー名を入力しなかったことが原因である可能性が最も高いです。
もう1つの理由は、SSHソフトウェアのバージョンが低すぎることです。Xshellをアップグレードしてください。
無料のAmazonクラウドAWS EC2 サーバーの場合は無料で登録できます。
12ヶ月間の無料AWS Amazonクラウドサーバー Amazonクラウド Amazonクラウド最新チュートリアルを申請する
AWS 中国公式サイト: https://aws.amazon.com/cn/
Amazon Web Services 公式サイト: https://www.amazonaws.cn/