dnssec-keygen コマンド
目的
ドメイン・ネーム・システム・セキュリティー拡張 (DNSSEC) キー生成ツール。
構文
dnssec-keygen [-a algorithm] [-b keysize] [-n nametype] [-c class] [-e] [-f flag] [-g generator] [-h] [-k] [-p protocol] [-r randomdev] [-s strength] [-t type] [-v level] [name]
説明
dnssec-keygen コマンドは、DNSSEC (セキュア DNS) のキーを生成します。このコマンドは、TSIG (Transaction Signature: トランザクション署名) で使用するためのキーを生成することもできます。
フラグ
項目 | 説明 |
---|---|
-a algorithm | 暗号アルゴリズムを選択します。アルゴリズムは、次のいずれかの値になります。
注:
|
-b keysize | キー内のビット数を指定します。キー・サイズの選択は、
使用されるアルゴリズムによります。RSAMD5 キーと RSASHA1 キーは、512 ビットから 4096 ビットの範囲内にある必要があります。DH キーは、
128 から 4096 ビットの範囲内にある必要があります。DSA キーは、
512 から 1024 ビットの範囲内にあり、64 の正確な倍数である必要があります。HMAC-MD5 キーは、1 から 512 ビットの範囲内にある必要があります。
|
-n nametype | キーのオーナー・タイプを指定します。nametype の値は、ZONE (DNSSEC ゾーン・キーの場合)、HOST または ENTITY (ホストに関連付けられたキーの場合)、USER (ユーザーに関連付けられたキーの場合)、または OTHER (DNSKEY) のいずれかである必要があります。これらの値の大/小文字は区別されません。 |
-c class | キーを含んでいるドメイン・ネーム・サーバー (DNS) レコードが、指定されたクラスを備えている必要があることを示します。これが指定されない場合、クラス IN が使用されます。 |
-e | RSAMD5 キーまたは RSASHA1 キーを生成する場合は、大きい指数を使用します。 |
-f flag | KEY または DNSKEY レコードの flag フィールドに指定のフラグを設定します。認識されるフラグは、KSK (鍵署名の鍵) DNSKEY のみです。 |
-g generator | DH キーを生成する場合は、この生成プログラムを使用します。許容値は 2 および 5 です。生成プログラムの指定がない場合は、可能であれば RFC 2539 からの既知のプライム記号が使用され、それ以外の場合はデフォルトは 2 となります。 |
-h | dnssec-keygen コマンドに対するオプションおよび引数の簡略な要約を印刷します。 |
-k | KEY レコードを生成します (DNSKEY レコードではありません)。 |
-p protocol | 生成されるキーのプロトコル値を設定します。protocol は、 0 から 255 の範囲内の数です。デフォルトは 3 (DNSSEC) です。 |
-r randomdev | ランダムのソースを指定します。オペレーティング・システムが /dev/random ファイルまたはそれと同等のデバイスを提供しない場合、デフォルトのランダムのソースはキーボード入力になります。randomdev 引数は、デフォルトの代わりに使用されるランダム・データを含むキャラクター・デバイスまたはファイルの名前を指定します。特殊値 keyboard は、キーボード入力を使用する必要があることを示します。 |
-s strength | キーのストレングスの値を指定します。strength 引数は、0 から 15 の範囲内の数値で、現在のところ DNSSEC で定義された目的はありません。 |
-t type | キーの使用を示します。typeは、AUTHCONF 、NOAUTHCONF 、NOAUTH 、または NOCONF のいずれかでなければなりません。デフォルトは AUTHCONF です。AUTH はデータを認証する能力を示し、CONF はデータを暗号化する能力を示します。キー・タイプが NOAUTHCONF であるアルゴリズム (DH、HMAC-MD5、HMAC-SHA1、HMAC-SHA224、HMAC-SHA256、HMAC-SHA384、HMAC-SHA512) の場合、キーは生成されません。 |
-v level | デバッグのレベルを設定します。 |
パラメーター
項目 | 説明 |
---|---|
name | コマンド・ラインで指定されたキーの名前。DNSSEC キーの場合、この名前はキーが生成されようとしているゾーンの名前に一致する必要があります。 |
生成されたキー
dnssec-keygen コマンドは、正常に完了すると、標準出力に
Knnnn.+aaa+iiiii
のフォームの文字列を印刷します。これは、生成されたキーの ID ストリングです。nnnn
はキー名です。aaa
は アルゴリズムの数値表現です。iiiii
はキー ID (つまりフットプリント) です。
.key ファイルは、(直接、または $INCLUDE ステートメントで) ゾーン・ファイルに挿入できる DNSKEY レコードを含みます。.private ファイルは、
アルゴリズム固有のフィールドを含みます。セキュリティー上の理由により、
このファイルには一般の読み取り許可はありません。公開鍵と秘密鍵が同等のものであっても、.key と .private の両方のファイルが、HMAC-MD5
などの対称暗号化アルゴリズムに対して生成されます。
例
ドメイン
example.com
の 768 ビット DSA キーを生成するには、次のコマンドを入力します。dnssec-keygen -a DSA -b 768 -n ZONE example.com
このコマンドにより、次のフォームの文字列が印刷されます。Kexample.com.+003+26160
この例では、dnssec-keygen はファイル Kexample.com.+003+26160.key および Kexample.com.+003+26160.private を作成します。