Ssh
如何生成 SSHFP 記錄?
我需要在我的主機的 DNS 中設置 SSHFP 記錄。我做了一些搜尋,但我沒有找到任何好的例子。
- 什麼是 SSHFP 記錄?
- SSHFP 記錄是什麼樣的?
- 如何創建 SSHFP 記錄?
什麼是 SSHFP 記錄?
SSHFP 記錄是包含用於 SSH 的公鑰指紋的 DNS 記錄。它們主要用於啟用 DNSSEC 的域。當 SSH 客戶端連接到伺服器時,它會檢查相應的 SSHFP 記錄。如果記錄指紋與伺服器匹配,則伺服器是合法的並且可以安全連接。
SSHFP 記錄是什麼樣的?
SSHFP 記錄由三部分組成:
- 公鑰算法
- 指紋類型
- 指紋(十六進制)
公鑰算法
截至 2021 年,SSHFP 中定義了五種不同的算法。每個算法都用一個整數表示。算法是:
- 1 - RSA
- 2 - 動態搜尋廣告
- 3 - ECDSA
- 4 - Ed25519
- 6 - Ed448
指紋類型
截至 2012 年,SSHFP 中定義了兩種指紋類型。每個指紋類型由一個整數表示。這些是:
- 1 - SHA-1
- 2 - SHA-256
如何生成 SSHFP 記錄?
您可以使用ssh-keygen使用
-r
參數生成記錄,後跟主機名(這不會影響指紋,因此您可以指定您喜歡的任何內容)例子
使用
ssh-keygen
和 CentOS:[root@localhost ~]# ssh-keygen -r my.domain.com my.domain.com IN SSHFP 1 1 450c7d19d5da9a3a5b7c19992d1fbde15d8dad34 my.domain.com IN SSHFP 2 1 72d30d211ce8c464de2811e534de23b9be9b4dc4
筆記
有時
ssh-keygen
會詢問公共證書的位置。如果它要求,您將不得不執行ssh-keygen
多次並且每次指定不同的證書以確保您生成所有必要的 SSHFP 記錄。您的公鑰通常位於/etc/ssh
.