Ssh
伺服器上的不同 ssh 指紋。(MITM 攻擊?)
當我嘗試從我的英國筆記型電腦 ssh 到我在德國的伺服器時,我得到:
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. .....
我從 ~/.ssh/known_hosts 中刪除了相應的行,然後再次 ssh’ed。在伺服器上(通過 ssh 終端)我執行:
ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub
然後從我的筆記型電腦我做:
ssh-keyscan -p 22 -t rsa my_domain_or_ip.com > /tmp/ssh_host_rsa_key.pub ssh-keygen -l -f /tmp/ssh_host_rsa_key.pub
**當我比較結果時,我發現指紋不同!**證書的長度也不同(在伺服器上是 2048,但遠端掃描顯示 1024)。DSA 指紋也不同。
問題可能不在我的本地網路中,因為伺服器 ip 的 arping 返回 0 結果。我請波蘭的一位朋友為我執行相同的命令,他得到了相同的結果。
關於正在發生的事情有什麼想法嗎?
編輯:當我 ssh 到伺服器並執行以下操作時:
ssh-keyscan -p 22 -t rsa 127.0.0.1 > /tmp/ssh_localhost_rsa_key.pub ssh-keygen -l -f /tmp/ssh_localhost_rsa_key.pub
然後我看到指紋還是不一樣!然後當我在伺服器上做:
argping -c 5 server_ip
我收到 0 個回复。
這很奇怪!
編輯 2(摘要):
username@server:~$ ssh-keyscan -p 22 127.0.0.1 > /tmp/rsa.tmp # 127.0.0.1 SSH-1.99-OpenSSH_33.33 username@server:~$ ssh-keygen -lf /tmp/rsa.tmp 1024 12:................................. 127.0.0.1 (RSA) username@server:~$ ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub 2048 32:................................. /etc/ssh/ssh_host_rsa_key.pub (RSA)
問題是有人攻擊了我的伺服器,利用它執行的一個或多個服務。不幸的是,解決方案是重新安裝整個系統(我擔心有人可能留下了一些後門)。
這次我也遵循了linux 安全提示。
記憶體鍵的變化可以用幾個原因來解釋:
- 您確實受到了坐在您和您的伺服器之間並攔截您的會話的人的攻擊。
- 您的伺服器 IP 映射到多個真實伺服器,並且您最近切換到另一台機器。當您通過 SSH 連接到可以在兩台伺服器之間切換的 VIP 時,就會發生這種情況。
- 您的伺服器系統最近已重新安裝,這更改了 SSH 密鑰。
您應該能夠確定這是否正常。