dnssec-keygen - DNSSEC 密鑰生成工具html
dnssec-keygen -a algorithm -b keysize -n nametype [-ehk] [-c class] [-f flag] [-g generator] [-p protocol] [-r randomdev] [-s strength] [-t type] [-v level] name
dnssec-keygen 實用程序爲 DNSSEC(安全 DNS)生成密鑰,如 RFC 2535 和 RFC 4034 中定義的那樣。它還能夠生成與 TSIG(Transaction Signature,事務簽名)一塊兒使用的密鑰,如 RFC 2845 中定義的那樣。算法
支持如下選項:安全
選擇加密算法。algorithm 的值必須是 RSAMD5 (RSA) 或 RSASHA1 之1、DSA、NSEC3RSASHA一、NSEC3DSA、DH (Diffie-Hellman) 或 HMAC-MD5。這些值不區分大小寫。oracle
對於 DNSSEC,RSASHA1 是強制實現的算法;DSA 是建議的算法。對於 TSIG,HMAC-MD5 是強制算法。dom
指定密鑰中的位數。密鑰大小的選擇取決於使用的算法。RSAMD5 和 RSASHA1 密鑰必須在 512 和 2048 位之間。Diffie-Hellman 密鑰必須在 128 和 4096 位之間。DSA 密鑰必須在 512 和 1024 位之間,而且必須是 64 的整數倍。HMAC-MD5 密鑰必須在 1 位和 512 位之間。工具
代表包含密鑰的 DNS 記錄應該具備指定類。若是沒有指定,將使用類 IN。加密
若是生成 RSAMD5 或 RSASHA1 密鑰,則使用大指數。spa
在 KEY/DNSKEY 記錄的標誌字段中設置指定的標誌。惟一識別的標誌是 KSK(Key Signing Key,密鑰簽名密鑰)DNSKEY。操作系統
若是生成 Diffie Hellman 密鑰,則使用此 generator。容許的值是 2 和 5。若是沒有指定 generator,則將使用 RFC 2539 中的已知索數(若是可能);不然,缺省值是 2。調試
列出 dnssec-keygen 的選項和參數的簡短摘要。
生成 KEY 記錄,而不是 DNSKEY 記錄。
指定密鑰的全部者類型。nametype 的值必須是 ZONE(對於 DNSSEC 區域密鑰 (KEY/DNSKEY))、HOST 或 ENTITY(對於與主機相關的密鑰 (KEY))、USER(對於與用戶相關的密鑰 (KEY))或 OTHER (DNSKEY)。這些值不區分大小寫。缺省值是 ZONE(用於生成 DNSKEY)。
爲生成的密鑰設置協議值。protocol 參數是 0 到 255 之間的數字。缺省值是 3 (DNSSEC)。在 RFC 2535 及其後續版本中列出了此參數的其餘可能值。
指定隨機源。若是操做系統不提供 /dev/random 或等效設備,則缺省的隨機源是鍵盤輸入。randomdev 指定字符設備的名稱或包含要使用的隨機數據的文件(而非缺省文件)。特殊值 "keyboard" 表示應該使用鍵盤輸入。
指定密鑰的強度值。strength 參數是 0 到 15 之間的數字,且當前還沒有在 DNSSEC 中定義其用途。
代表密鑰的用途。type 必須是 AUTHCONF、NOAUTHCONF、NOAUTH 或 NOCONF 之一。缺省值是 AUTHCONF。AUTH 指的是驗證數據的能力,CONF 指的是加密數據的能力。
設置調試級別。
生成的密鑰
當 dnssec-keygen 成功完成時,會向標準輸出中輸出 Knnnn.+aaa+iiiii 格式的字符串。這是其生成的密鑰的標識字符串。
nnnn 是密鑰名稱。
aaa 是算法的數字表示。
iiiii 是密鑰標識符(或足跡)。
dnssec-keygen 實用程序建立兩個文件,並根據列出的字符串命名這兩個文件。
Knnnn.+aaa+iiiii.key 包含公鑰。
Knnnn.+aaa+iiiii.private 包含私鑰。
.key 文件包含 DNS KEY 記錄,該記錄能夠直接插入到區域文件,也可使用 $INCLUDE 語句插入。
.private 文件包含算法特定的字段。出於安全緣由,此文件不具備通常讀取權限。
對於對稱加密算法(如 HMAC-MD5),將生成 .key 和 .private 文件,即便公鑰和私鑰等效也如此。
示例 1 生成 768 位 DSA 密鑰
要爲域 example.com 生成 768 位 DSA 密鑰,則將發出如下命令:
dnssec-keygen -a DSA -b 768 -n ZONE example.com
該命令將列出如下格式的字符串:
Kexample.com.+003+26160
將建立如下文件:
Kexample.com.+003+26160.key Kexample.com.+003+26160.private
有關下列屬性的說明,請參見 attributes(5):
屬性類型
|
屬性值
|
---|---|
可用性
|
service/network/dns/bind
|
接口穩定性
|
Volatile(可變)
|