ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
マニュアルページセクション 1M: システム管理コマンド Oracle Solaris 11.1 Information Library (日本語) |
- DNSSEC 鍵生成ツール
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 ユーティリティーは、RFC 2535 および RFC 4034 で定義されている DNSSEC (Secure DNS) の鍵を生成します。また、RFC 2845 で定義されている TSIG (Transaction Signatures) で使用する鍵も生成します。
サポートしているオプションは、次のとおりです。
暗号化アルゴリズムを選択します。algorithm の値は、RSAMD5 (RSA) または RSASHA1、DSA、NSEC3RSASHA1、NSEC3DSA、DH (Diffie-Hellman)、HMAC-MD5 のいずれかにする必要があります。これらの値は大文字と小文字が区別されません。
DNSSEC の場合、RSASHA1 は実装が必須のアルゴリズムであるため、DSA が推奨されます。TSIG の場合は、HMAC-MD5 が必須です。
注 - HMAC-MD5 と DH では、-k フラグが自動的に設定されます。
鍵のビット数を指定します。鍵サイズの選択は、使用されるアルゴリズムによって異なります。RSAMD5 鍵と RSASHA1 鍵は、512 - 2048 ビットの間にする必要があります。Diffie-Hellman 鍵は、128 - 4096 ビットの間にする必要があります。DSA 鍵は、512 - 1024 ビットの間で、ちょうど 64 の倍数になる値にする必要があります。HMAC-MD5 鍵は、1 - 512 ビットの間にする必要があります。
鍵を含む DNS レコードに、指定されたクラスが存在するべきであることを示します。指定されていない場合は、クラス IN が使用されます。
RSAMD5 鍵または RSASHA1 鍵を生成する場合は、大きな指数を使用します。
指定されたフラグを KEY/DNSKEY レコードのフラグフィールドに設定します。認識されるフラグは KSK (Key Signing Key) DNSKEY のみです。
Diffie Hellman 鍵を生成する場合は、この generator を使用します。指定可能な値は 2 と 5 です。ジェネレータが指定されていない場合は、可能であれば RFC 2539 からの既知の素数が使用されます。それ以外の場合、デフォルトは 2 です。
dnssec-keygen のオプションと引数の簡単なサマリーを出力します。
DNSKEY レコードではなく KEY レコードを生成します。
鍵の所有者型を指定します。nametype の値は、ZONE (DNSSEC ゾーン鍵 (KEY/DNSKEY) の場合)、HOST または ENTITY (ホストに関連付けられた鍵 (KEY) の場合)、USER (ユーザーに関連付けられた鍵 (KEY) の場合)、OTHER (DNSKEY) のいずれかにする必要があります。これらの値は大文字と小文字が区別されません。デフォルトは、DNSKEY 生成用の ZONE です。
生成された鍵のプロトコル値を設定します。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 ユーティリティーは、出力された文字列に基づいた名前を持つ 2 つのファイルを作成します。
Knnnn.+aaa+iiiii.key には公開鍵が含まれます。
Knnnn.+aaa+iiiii.private には秘密鍵が含まれます。
.key ファイルには、ゾーンファイルに (直接、または $INCLUDE 文を使用して) 挿入できる DNS KEY レコードが含まれます。
.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) を参照してください。
|
dnssec-signzone(1M), attributes(5)
RFC 2539、RFC 2845、RFC 4033
『BIND 9 Administrator's Reference Manual』を参照してください。このマニュアルページの発行日付時点で、このドキュメントは https://www.isc.org/software/bind/documentation から利用できます。