虛擬叢集伺服器上的指紋衝突

虛擬叢集伺服器上的指紋衝突

我創建了三台虛擬機器(Ubuntu 伺服器 22.04 LTS),一台用於控制,兩台用於節點。控制工作正常,我可以存取它,但是當我嘗試存取 node1 時,出現此錯誤:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    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 (omissis) key sent by the remote host is
(omissis)
Please contact your system administrator.
Add correct host key in /home/(omissis)/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /home/(omissis)/.ssh/known_hosts:11
  remove with:
  ssh-keygen -f "/home/(omissis)/.ssh/known_hosts" -R "[(vm IP, omissis)]:3022"
Host key for [(vm IP, omissis)]:3022 has changed and you have requested strict checking.
Host key verification failed.

我認為這是因為虛擬機器共享IP位址,但known_hosts其中的檔案~/.ssh已經保存了控製檔案。我想同時訪問它們(只要我真正想要的)。我怎麼做?如何強制將另一個已知主機新增至清單?

先感謝您

答案1

類似的問題

有兩種可能的解決方案。

  1. 複製伺服器指紋(由於安全性問題不鼓勵)

如果您符合包含指紋( )的文件/etc/ssh/ssh_host*,則不會因指紋不符而給予錯誤。

  1. known_hosts在客戶端建立多個文件

透過將主機配置新增至~/.ssh/config,可以使用指向同一台機器的不同指紋。欲了解更多信息,請參閱man ssh_config

範例(來自連結):

Host windows.dualbootbox
    Hostname 192.168.10.20
    UserKnownHostsFile ~/.ssh/windows.dualbootbox.known_hosts

Host ubuntu.dualbootbox
    Hostname 192.168.10.20
    UserKnownHostsFile ~/.ssh/ubuntu.dualbootbox.known_hosts

答案2

所以我用 GUI 的方式解決了這個問題。首先,在 VirtualBox 上轉到fileHost Network Manager

主機網路管理員

下一個,create

p2

很快就到你成為虛擬節點的settings然後network

NAT1

選擇NAT,然後Port Forwarding Rules。使用+右上角的小按鈕建立新的連接埠轉送規則。

在此輸入影像描述

為了

Name: ssh
Protocol: TCP
Host Port: 3022
Guest Port: 22

ok並轉至Adapter 2。啟用它並選擇Host-only Adapter

在此輸入影像描述

啟用Adapter 3並選擇Bridged Adapter

在此輸入影像描述

現在,您可以為叢集的每個節點重複每個步驟(第一步驟除外)。如果您這樣做,就不會出現 IP 衝突之類的問題。

相關內容