
我猶豫是否要問這個問題,因為我懷疑自己很愚蠢,但......
在執行 bind 9.18.18 的 Ubuntu 伺服器 22.04 上,當我執行 時ddns-confgen -k host.example.com
,它會輸出一些引用指定伺服器配置所需的金鑰和配置的指令。它還包括以下內容:
# After the keyfile has been placed, the following command will
# execute nsupdate using this key:
nsupdate -k <keyfile>
手冊頁指出:
金鑰名稱可以使用 -k 參數指定,預設為 ddns-key。產生的金鑰附帶設定文字和說明,可與 nsupdate 一起使用並在設定動態 DNS 時命名
它引用的「產生的密鑰」在哪裡(手冊頁中沒有任何關於路徑或任何選項的內容)?它不會出現在我運行命令的目錄中,但我需要nsupdate
在更新區域時將該密鑰提供給命令。
答案1
(此答案大部分最初是由用戶給出的,現已刪除。)
與 等密鑰創建命令不同ssh-keygen
,ddns-confgen
不會創建或假設將產生輸出檔案。相反,它會在控制台中向您顯示一個密鑰以及一些其他說明。
但是,對於nsupdate -k
命令的密鑰檔案應採用什麼格式,指令並不清楚。事實上,它是ddns-confgen
使用該選項運行時給出的四行q
。
因此,運行ddns-confgen -qk host.example.com > keyfile.key
將為您提供需要提供的文件nsupdate -k
(不使用複製/貼上)。但請注意,每次運行時ddns-confgen
密鑰都會發生變化,因此您需要確保為伺服器提供nsupdate
將要使用的相同密鑰。
另請記住,使用說明nsupdate -k <keyfile>
可能不會以您想要的方式運作。您需要閱讀文件以nsupdate
提供更新區域的各種其他選項。