SSHサーバのRSA fingerprintの確認方法

  • 通過SSH從客戶端初回連接服務器的時候, 服務器端會返回是否正確的確認信息。(正確的應該是客戶端被保存的RSA鍵的狀態)
    下面是連接192.168.1.100這臺服務器時候的Log,顯示了
    RSAkey的信息(指紋)
$ ssh 192.168.1.100
The authenticity of host '192.168.1.100 (192.168.1.100)' can't be established.
RSA key fingerprint is 33:95:b2:19:c0:b0:e4:91:a0:55:94:65:4a:af:58:c9.
Are you sure you want to continue connecting (yes/no)?
  • 如果本地私有祕鑰的fingerprint和這個message顯示的fingerprint一致的話,這說明打算連接的這個服務器是你想要連接的正確的服務器

  • 實驗一下,一堆祕鑰 private_use_in_github和private_use_in_github.pub, 通過ssh-keygen -l -f 這個命令可以確認祕鑰的指紋,可以看到私有祕鑰和共有的的出來的fingerprint是一樣的

➜  .ssh ssh-keygen -l -f private_use_in_github
2048 SHA256:3pDPN+oulzfmFwpOJ0T4bKQwSLKopkcts7aE6xvHQ24 [email protected] (RSA)
➜  .ssh ssh-keygen -l -f private_use_in_github.pub
2048 SHA256:3pDPN+oulzfmFwpOJ0T4bKQwSLKopkcts7aE6xvHQ24 [email protected] (RSA)
  • 祕鑰存放的位置 如下

    • /etc/ssh/ssh_host_rsa_key.pub
    • 只能通過ssh-keygen -l -f命令來獲取指紋,不用用cat cat 的話顯示的健的內容
      ssh-keygen -lf /etc/ssh/ssh_host_rsa_key.pub 
      2048 33:95:b2:19:c0:b0:e4:91:a0:55:94:65:4a:af:58:c9   (RSA)
    cat /etc/ssh/ssh_host_rsa_key.pub 
    ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC/PfchCsFTk+CB+6hTyve5Bgd0xye0fRWR2B7DXV4etKt5NhXwUxJ26np8ZXe2AMswewFNra2MpIdVpgtij8yDLPLYIznd8djSJyqv9MTwjdahDhpKn7s8D/8grADWuaCWk7uujLU4O+2fdCJDdIjj0IEHnXTYeBF+3kJq17SitNm66EyCu7v4NmbIYerQtXgtazrDmrPyiYLyTWX9U0cqMtj1QEbyMvfCeSGJYCJbwpe3p/bk5125aV8JTSaybDKe015ott582XohIS/G0/5mZ/uHCHIJMIqXtUhU+aeZySKBjo8tY8CLZKisfbfkXBtgiFLbOBMKHo0KVG4Zg3Y
  • ちなみに、このファイルの內容はSSHで接続されると、クライアントknow_hostsに書き込まれ、2度目以降の接続の際にはクライアント側ではfingerprintの確認メッセージは表示されなくなります。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章