警告をシミュレートする必要があります。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
2 台の Linux システムがあり、ssh
Linux1 から Linux2 に移動すると、ssh
問題は許可されずに報告されます。
しかし、いくつかのテストのためにモックしたいと思います。アイデンティティ変更エラー
それでは、問題を生成するためにリモートサーバーで何を編集する必要がありますか?
今まで何をしたのかはい、両方のシステムでknpwn_hostsを変更しましたが、問題は発生しません。
わかりました:
key_read: uudecode AAAAB3NzaC1y3jrzG62xyHrb3qxc9eYpg1Cp1PrRElTFfYbEHsRfTZU21S8kO5/Tq+ED8=
failed
key_read: uudecode AAAAB3NzaC1y3jrzG62xyHrb3qxc9eYpg1Cp1PrRElTFfYbEHsRfTZU21S8kO5/Tq+ED8=
failed
The authenticity of host 'ste1 (10.106.164.111)' can't be established.
RSA key fingerprint is 84:82:2b:80:ca:3f:57:c7:8c:14:44:dd:b9:70:e5:d8.
Are you sure you want to continue connecting (yes/no)?
答え1
~/.ssh/known_hosts
ホストの無効なIPアドレスがリストされるようにホストエントリを交換/変更します。
から:
192.168.0.10 ecdsa-sha2-nistp256 AAAAE2...kFr3pqkY=
192.168.0.20 ecdsa-sha2-nistp256 AAAAE2...A82zdls0=
到着する:
192.168.0.20 ecdsa-sha2-nistp256 AAAAE2...kFr3pqkY=
192.168.0.10 ecdsa-sha2-nistp256 AAAAE2...A82zdls0=
(IPアドレスが変わりました)
これにより、以下が提供されます。
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ 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 ECDSA key sent by the remote host is
クライアントから提供されたキーがサーバーのキーとペアになっているがIPアドレスが異なる場合は、この警告が表示されます。次に、あなたが中間者攻撃の対象であると仮定し、警告を発行します。
答え2
1 つの方法は、ファイル内のエントリを確認するときにknown_hosts
一致しないエントリを確認し、そのメッセージを表示するようにリモートサーバーのキーを変更することです。
リモートサーバーでホストキーを再生成するには、次のコマンドを使用します。
ssh-keygen -f /etc/ssh/ssh_host_rsa_key -N '' -t rsa
ssh-keygen -f /etc/ssh/ssh_host_dsa_key -N '' -t dsa
ssh-keygen -f /etc/ssh/ssh_host_ecdsa_key -N '' -t ecdsa -b 521
その後、SSH サーバーを再起動します。
クライアントでファイルを編集known_hosts
して他のサーバーのエントリを含めることもできますが、メッセージを受信したいリモートサーバーのホスト名も含めることができます。
答え3
おそらく最も簡単な方法は、別のホストからキーをコピーすることです。
known_hosts
たとえば、次のようなファイルがある場合
192.168.1.1 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgwCrkL8HEVk8VP3r...
192.168.1.2 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAubiN81eDcafrgMeL...
エラーを表示するには、ホストキーを192.168.1.2
コピーするだけです。これで、次のようになります。192.168.1.1
known_hosts
192.168.1.1 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgwCrkL8HEVk8VP3r...
192.168.1.2 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgwCrkL8HEVk8VP3r...
答え4
できることは、サーバーキーを再生成することです(元に戻す必要がある場合は、以前のキーをバックアップした後)。
ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
編集:@jjlinの答えは確かにあまり邪魔ではありません。