警告の修正方法:リモートホストIDが変更されました! エラー

公開: 2021-01-21

ターミナル経由でSFTPクライアントまたはSSHのどちらに接続している場合でも、よくあるエラーは「警告:リモートホストIDが変更されました!」です。 これにより、Webサイトまたはサーバーに接続できなくなります。 これは時々私に起こります、そして私は通常何かを修正することを急いでいるので、それは非常に迷惑です。 このエラーは私を停止させます。

以下では、エラーを解決して再接続するためのすばやく簡単な方法をいくつか紹介します。

「警告:リモートホストIDが変更されました!」とは何ですか。 エラー?

以下のエラーは通常、SSHキーまたはサーバーの接続情報が変更された場合に発生します。 たとえば、最近Webサイトを新しいホスティングプロバイダーに移行した場合、IPアドレスは異なります。

Macの接続情報(IPアドレスとクレデンシャル)は、 known_hostsファイルに保存されます。 Windowsでは、レジストリに保存されます。 SFTPクライアント(私のお気に入りはForkLift)またはSSHクライアント(PuTTY)を使用する場合、その情報を使用してWebサーバーに接続します。

 [user@hostname ~]$ ssh root@user @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the RSA key sent by the remote host is xx:xx:xx. Please contact your system administrator. Add correct host key in /home/hostname /.ssh/known_hosts to get rid of this message. Offending RSA key in /var/lib/sss/pubconf/known_hosts:3 RSA host key for xxx.xxx.xx.xxx has changed and you have requested strict checking. Host key verification failed.
  • Macでknown_hostsファイルを修正する方法
  • Windowsでknown_hostsファイルを修正する方法

Macでknown_hostsファイルを修正する方法

Macでknown_hostsファイルを修正する方法はいくつかあります。 私はアプリを使うのが好きです。それは速くて簡単だからです。 ターミナルコマンドを覚えておく必要はありません。 ただし、両方の方法について説明します。

オプション1:アプリでknown_hostsファイルを修正する(最も簡単な方法)

SSH Config Editorと呼ばれる素晴らしいアプリを使用すると、SSHクライアント構成ファイルやその他の設定を管理できます。 プロバージョンがありますが、できる限り開発者をサポートすることを常にお勧めします。 予算が限られている場合は、 known_hostsファイルを管理するには無料バージョンで十分です。 以下の手順に従ってください。

ステップ1

無料のSSHConfigEditorアプリをインストールします。

ステップ2

SSH Config Editorを開き、「File→OpenKnownHosts」をクリックします。

known_hostsファイルを開きます
known_hostsファイルを開きます

ステップ3

問題が発生しているエントリを見つけて強調表示します。 どちらを選択すればよいかわからない場合は、古いIPアドレスと現在のIPアドレスを調べる必要があります。 Kinstaのようなプロバイダーでホスティングしている場合、これは「サイトIPアドレス」と呼ばれ、MyKinstaダッシュボードに表示されます。

次に、ゴミ箱アイコンをクリックしてエントリを削除します。 別のオプションは、すべてのエントリを削除することです。

known_hostsエントリを削除します
known_hostsエントリを削除します

ステップ4

次のプロンプトで[削除]をクリックします。

既知のホストから「[xx.xxx.xx.xxx]:xxxxxx」を削除しますか?

ステップ5

ウィンドウを閉じて、次のプロンプトで[保存]をクリックします。

ドキュメント「既知のホスト」に加えられた変更を保存しますか?

これで、Webサイトやサーバーに再び接続できるようになります。

SSH Config Editorアプリはそれほど頻繁には必要ないので、ドックに固定することはお勧めしません。 接続エラーが発生した場合に備えて、インストールしたままにしてください。

オプション2:ターミナルからknown_hostsファイルを修正する

2番目のオプションは、ターミナルを使用して、 known_hostsファイルからエントリをクリーンアップすることです。 以下の手順に従ってください。

ステップ1

ターミナルアプリを開きます。 最も簡単な方法は、Spotlightを起動して「ターミナル」を検索することです。 または、「ユーティリティ→ターミナル」の下にあります。

Mac端末
Mac端末

ステップ2

次のコマンドを貼り付けます。

 nano ~/.ssh/known_hosts

ステップ3

問題が発生しているエントリを削除します。 どちらを選択すればよいかわからない場合は、古いIPアドレスと現在のIPアドレスを調べてください。 別のオプションは、すべてのエントリを削除することです。

ステップ4

Ctrl + X^X )を入力して終了し、変更されたバッファーを保存する場合は、プロンプトが表示されたらYを選択して[はい]を選択します。

ターミナルナノエディター
ターミナルナノエディター

これで、Webサイトやサーバーに再び接続できるようになります。


または、 known_hostsファイル全体を削除して、再作成することもできます。 ターミナルで次のコマンドを入力します。

 rm .ssh/known_hosts

Windowsでknown_hostsファイルを修正する方法

WindowsからMacに切り替える前は、実際にこのエラーが発生したことはありません。 ただし、念のため、次のことを文書化しています。 Windowsでは、 known_hostsファイルがなく、情報(IPアドレスと資格情報)がレジストリに保存されます。 以下の手順に従ってください。

ステップ1

スタートメニューを開き、「regedit」を検索します。 「Enter」をクリックします。

Regedit
Regedit

ステップ2

次のレジストリフォルダを参照します。

 HKEY_CURRENT_USER\SoftWare\SimonTatham\PuTTY\SshHostKeys
レジストリエディタSshHostKeys
レジストリエディタSshHostKeys

ステップ3

「SshHostKeys」フォルダー内で、問題のあるエントリを削除します。 どちらを選択すればよいかわからない場合は、古いIPアドレスと現在のIPアドレスを調べてください。 別のオプションは、単にすべてのエントリを削除することです。

次のプロンプトが表示されたら、[はい]をクリックします。

特定のレジストリ値を削除すると、システムが不安定になる可能性があります。 この値を完全に削除してもよろしいですか?

レジストリエディタを閉じます。 これで、Webサイトやサーバーに再び接続できるようになります。

概要

このようなエラーに遭遇するのは常に迷惑です。 今では、それらを解決するためのより簡単な方法がオペレーティングシステムに組み込まれていると思うでしょう。 今のところ、ステップバイステップのトラブルシューティングプロセスに頼る必要があります。

うまくいけば、今あなたは再び接続し、仕事に戻っています! これが役に立った場合、または問題が発生した場合は、以下にコメントを残してください。