ナビゲーションリンクをスキップ | |
印刷ビューの終了 | |
![]() |
マニュアルページセクション 1M: システム管理コマンド Oracle Solaris 11 Information Library (日本語) |
- 暗号化フレームワークの管理
cryptoadm list [-mpv] [provider=provider-name] [mechanism=mechanism-list]
cryptoadm disable provider=provider-name mechanism=mechanism-list | random | all
cryptoadm enable provider=provider-name mechanism=mechanism-list | random | all
cryptoadm install provider=provider-name
cryptoadm install provider=provider-name [mechanism=mechanism-list]
cryptoadm uninstall provider=provider-name
cryptoadm unload provider=provider-name
cryptoadm disable fips-140
cryptoadm enable fips-140
cryptoadm list fips-140
cryptoadm refresh
cryptoadm start
cryptoadm stop
cryptoadm --help
cryptoadm ユーティリティーは、システムの暗号化プロバイダ情報の表示、各プロバイダのメカニズムポリシーの構成、および暗号化プロバイダのインストールとアンインストールを行います。暗号化フレームワークでは、ユーザーレベルプロバイダ (PKCS11 共有ライブラリ)、カーネルソフトウェアプロバイダ (読み込み可能なカーネルソフトウェアモジュール)、およびカーネルハードウェアプロバイダ (暗号化ハードウェアデバイス) の 3 種類のプロバイダがサポートされます。
カーネルソフトウェアプロバイダ用に、cryptoadm ユーティリティーには unload サブコマンドが用意されています。このサブコマンドは、カーネルソフトウェアプロバイダを読み込み解除するようにカーネルに指示します。
暗号化フレームワークのメタスロット用に、cryptoadm ユーティリティーには、メタスロットの機能を有効/無効にする、メタスロットの構成を一覧表示する、代替の永続オブジェクトストレージを指定する、およびメタスロットのメカニズムポリシーを構成するための各サブコマンドが用意されています。
cryptoadm ユーティリティーには、暗号化フレームワークで FIPS-140 モードを有効/無効にするためのサブコマンドが用意されています。また、FIPS-140 モードの現在のステータスを表示するための list サブコマンドも用意されています。
管理者は、暗号化サブシステムの管理に syslog 機能 (syslogd(1M) および logadm(1M) を参照) を使用すると便利です。ログは、次のような状況で特に役立ちます。
カーネルレベルのデーモンが停止し、すべてのアプリケーションでエラーが発生した場合。この状況を syslog から把握し、svcadm(1M) を使用して svc:/system/cryptosvc サービスをリブートできます。
問題のあるプロバイダがフレームワークに接続されている場合、この状況を syslog から把握して、問題のあるプロバイダをフレームワークから削除できます。
下記のサブコマンドまたはオプションを除き、cryptoadm コマンドは特権ユーザーが実行する必要があります。
サブコマンド list、任意のオプション
サブコマンド --help
cryptoadm ユーティリティーには、次に示すようなサブコマンドとオプションのさまざまな組み合わせがあります。
インストールされているプロバイダの一覧を表示します。
メタスロットのシステム全体の構成を表示します。
インストールされているプロバイダまたはメタスロットで使用できるメカニズムの一覧を表示します。プロバイダを指定した場合、指定されたプロバイダの名前と、そのプロバイダで使用できるメカニズムの一覧を表示します。metaslot キーワードを指定した場合、メタスロットで使用できるメカニズムの一覧を表示します。
インストールされているプロバイダのメカニズムポリシー (つまり、どのメカニズムが使用できて、どのメカニズムが使用できないか) を表示します。プロバイダ機能のポリシーまたはメタスロットも表示します。プロバイダを指定した場合、プロバイダの名前と、そのプロバイダにのみ適用されているメカニズムポリシーを表示します。metaslot キーワードを指定した場合、メタスロットに適用されているメカニズムポリシーを表示します。
プロバイダを指定した場合、指定されたプロバイダに関する詳細情報を表示します。metaslot キーワードを指定した場合、メタスロットに関する詳細情報を表示します。
上記のさまざまな list サブコマンド (list -p を除く) で、-v (詳細) オプションは、プロバイダ、メカニズム、およびスロットの詳細情報を表示します。
プロバイダに指定されているメカニズムまたはプロバイダの機能を無効にします。mechanism、provider-feature、および all キーワードの説明については、「オペランド」の節を参照してください。
暗号化フレームワークでメタスロット機能を無効にするか、またはメタスロット機能の一部を無効にします。オペランドを指定しない場合、このコマンドは、暗号化フレームワークでメタスロット機能を無効にします。メカニズムのリストを指定した場合、メタスロットの指定されたメカニズムを無効にします。メタスロットのすべてのメカニズムを無効にした場合、メタスロットは無効化されます。メカニズムの説明については、「オペランド」の節を参照してください。auto-key-migrate キーワードを指定した場合、暗号化操作を実行するために必要な場合であっても、機密性の高いトークンオブジェクトのほかのスロットへの移行が無効になります。auto-key-migrate の説明については、「オペランド」の節を参照してください。
プロバイダに指定されているメカニズムまたはプロバイダの機能を有効にします。mechanism、provider-feature、および all キーワードの説明については、「オペランド」の節を参照してください。
オペランドを指定しない場合、このコマンドは、暗号化フレームワークでメタスロット機能を有効にします。メカニズムのリストを指定した場合、メタスロットの一連の指定されたメカニズムのみを有効にします。token-label を指定した場合、指定したトークンが永続オブジェクトストアとして使用されます。slot-description を指定した場合、指定したスロットが永続オブジェクトストアとして使用されます。token-label と slot-description の両方を指定した場合、一致するトークンラベルとスロットの説明を持つプロバイダが永続オブジェクトストアとして使用されます。default-keystore キーワードを指定した場合、メタスロットでデフォルトの永続オブジェクトストアが使用されます。auto-key-migrate キーワードを指定した場合、特定の暗号化操作を完了するために、必要に応じて機密性の高いトークンオブジェクトがほかのスロットに自動的に移行されます。メカニズム、トークン、スロット、default-keystore、および auto-key-migrate の説明については、「オペランド」の節を参照してください。
ユーザーレベルプロバイダをシステムにインストールします。provider オペランドは、対応する共有ライブラリの絶対パス名である必要があります。ライブラリの 32 ビットバージョンと 64 ビットバージョンの両方がある場合は、$ISA を含むパス名を使用してこのコマンドを 1 回だけ実行するようにしてください。$ISA は、環境変数への参照ではありません。また、$ISA を引用符で囲むか (単一引用符を使用、[例: '$ISA'])、$ をエスケープして、シェルによって誤って展開されないようにする必要があります。ユーザーレベルフレームワークでは、$ISA が空の文字列またはアーキテクチャー固有のディレクトリ (例: sparcv9) に展開されます。
ユーザーレベルプロバイダをインストールする場合は、プロバイダのパッケージをビルドすることをお勧めします。詳細は、『Solaris セキュリティーサービス開発ガイド』を参照してください。
カーネルソフトウェアプロバイダをシステムにインストールします。provider には、ベース名のみを含めるようにしてください。mechanism-list オペランドには、このプロバイダでサポートするメカニズムの完全なリストを指定します。
カーネルソフトウェアプロバイダをインストールする場合は、プロバイダのパッケージをビルドすることをお勧めします。詳細は、『Solaris セキュリティーサービス開発ガイド』を参照してください。
指定された provider と、関連付けられているメカニズムポリシーをシステムからアンインストールします。このサブコマンドは、ユーザーレベルプロバイダまたはカーネルソフトウェアプロバイダのみに適用されます。
provider によって指定されたカーネルソフトウェアモジュールを読み込み解除します。
暗号化フレームワークおよびハードウェアプロバイダにおいて FIPS-140 モードを無効にします。
暗号化フレームワークおよびハードウェアプロバイダにおいて FIPS-140 モードを有効にします。このサブコマンドは、ユーザーレベル pkcs11_softtoken ライブラリおよびカーネルソフトウェアプロバイダの FIPS 未承認アルゴリズムは無効にしません。FIPS 承認アルゴリズムのみを使用するかどうかは、フレームワークの消費者しだいです。
このサブコマンドが完了すると、境界外に追加されたプラグインによって FIPS への準拠が無効化される可能性があること、およびそれらのプラグインのセキュリティーポリシーの確認が必要というメッセージが管理者に表示されます。
暗号化アルゴリズムテストおよびソフトウェア完全性テストを含む電源投入時自己診断を実行するために、システムをリブートする必要があります。
暗号化フレームワークおよびハードウェアプロバイダにおける FIPS-140 モードの現在の設定を表示します。FIPS-140 モードのステータスは、enabled または disabled です。デフォルトの FIPS-140 モードは、disabled です。
smf(5) によって使用される非公開インタフェースです。これらは直接使用しないでください。
コマンドの使用法を表示します。
ユーザーレベルプロバイダ (PKCS11 共有ライブラリ)、カーネルソフトウェアプロバイダ (読み込み可能なカーネルソフトウェアモジュール)、またはカーネルハードウェアプロバイダ (暗号化ハードウェアデバイス) です。
provider オペランドの有効な値は、cryptoadm list 形式のコマンドの出力からの 1 つのエントリです。ユーザーレベルプロバイダの場合の provider オペランドは、対応する共有ライブラリの絶対パス名です。カーネルソフトウェアプロバイダの場合の provider オペランドには、ベース名のみを含めます。カーネルハードウェアプロバイダの場合の provider オペランドは、「name/number」の形式で指定します。
1 つ以上の PKCS #11 メカニズムのコンマ区切りのリストです。PKCS #11 の仕様で定義されている暗号化操作を実装するプロセスです。mechanism-list の代わりに all を使用することで、プロバイダのすべてのメカニズムを指定できます。下記の all キーワードについての説明を参照してください。
所定のプロバイダの暗号化フレームワークの機能です。現時点では、random のみが機能として受け入れられます。ユーザーレベルプロバイダの場合、ランダム機能を無効にすると、PKCS #11 ルーチン C_GenerateRandom および C_SeedRandom がプロバイダから使用できなくなります。カーネルプロバイダの場合、ランダム機能を無効にすると、/dev/random でプロバイダから乱数を収集できなくなります。
キーワード all を disable サブコマンドおよび enable サブコマンドとともに使用すると、すべてのプロバイダ機能に対して実行できます。
暗号化フレームワークにおけるいずれかのプロバイダのトークンのラベルです。
token オペランドの有効な値は、コマンド cryptoadm list -v の出力の「Token Label」に示されている項目です。
暗号化フレームワークにおけるいずれかのプロバイダのスロットの説明です。
slot オペランドの有効な値は、コマンド cryptoadm list -v の出力の「機能説明」に示されている項目です。
キーワード default-keystore は、メタスロットの場合のみ有効です。このキーワードを指定すると、メタスロットの永続オブジェクトストアの設定が、デフォルトのストアを使用するように戻されます。
キーワード auto-key-migrate は、メタスロットの場合のみ有効です。このキーワードを指定して、暗号化操作を実行するために、メタスロットで、機密性の高いトークンオブジェクトをトークンオブジェクトスロットからほかのスロットに移動できるようにするかどうかを構成します。
キーワード all は、2 とおりの方法で disable サブコマンドおよび enable サブコマンドと組み合わせて使用できます。
次のように、all を mechanism=mechanism-list およびその他の provider-feature の代わりに使用できます。
# cryptoadm enable provider=dca/0 all
次のコマンドでは、プロバイダのメカニズムおよびその他の provider-feature (random など) が有効になります。
次のように、all を mechanism の引数として使用することもできます。
# cryptoadm enable provider=des mechanism=all
このコマンドでは、プロバイダのすべてのメカニズムが有効になりますが、ほかの provider-feature (random など) は有効にはなりません。
例 1 システムにインストールされているプロバイダの一覧の表示
次のコマンドは、インストールされているすべてのプロバイダの一覧を表示します。
example% cryptoadm list user-level providers: /usr/lib/security/$ISA/pkcs11_kernel.so /usr/lib/security/$ISA/pkcs11_softtoken.so /opt/lib/libcryptoki.so.1 /opt/system/core-osonn/lib/$ISA/libpkcs11.so.1 kernel software providers: des aes bfish sha1 md5 kernel hardware providers: dca/0
例 2 md5 プロバイダのメカニズムの一覧の表示
次のコマンドは、list サブコマンドの一種です。
example% cryptoadm list -m provider=md5 md5: CKM_MD5,CKM_MD5_HMAC,CKM_MD5_HMAC_GENERAL
例 3 カーネルソフトウェアプロバイダの特定のメカニズムの無効化
次のコマンドは、カーネルソフトウェアプロバイダ des のメカニズム CKM_DES3_ECB および CKM_DES3_CBC を無効にします。
example# cryptoadm disable provider=des
例 4 プロバイダのメカニズムポリシーの表示
次のコマンドは、des プロバイダのメカニズムポリシーを表示します。
example% cryptoadm list -p provider=des des: All mechanisms are enabled, except CKM_DES3_ECB, CKM_DES3_CBC
例 5 プロバイダの特定のメカニズムの有効化
次のコマンドは、カーネルソフトウェアプロバイダ des の CKM_DES3_ECB メカニズムを有効にします。
example# cryptoadm enable provider=des mechanism=CKM_DES3_ECB
例 6 ユーザーレベルプロバイダのインストール
次のコマンドは、ユーザーレベルプロバイダをインストールします。
example# cryptoadm install provider=/opt/lib/libcryptoki.so.1
例 7 32 ビットバージョンと 64 ビットバージョンを含むユーザーレベルプロバイダのインストール
次のコマンドは、32 ビットバージョンと 64 ビットバージョンの両方を含むユーザーレベルプロバイダをインストールします。
example# cryptoadm install \ provider=/opt/system/core-osonn/lib/'$ISA'/libpkcs11.so.1
例 8 プロバイダのアンインストール
次のコマンドは、md5 プロバイダをアンインストールします。
example# cryptoadm uninstall provider=md5
例 9 メタスロットの無効化
次のコマンドは、暗号化フレームワークでメタスロット機能を無効にします。
example# cryptoadm disable metaslot
例 10 指定されたトークンを永続オブジェクトストアとして使用するようにメタスロットを指定する
次のコマンドは、メタスロットが Venus トークンを永続オブジェクトストアとして使用するように指定します。
example# cryptoadm enable metaslot token="SUNW,venus"
次の終了値が返されます。
正常終了。
エラーが発生しました。
属性についての詳細は、attributes(5) を参照してください。
|
start、stop、および refresh の各オプションは、非公開インタフェースです。その他すべてのオプションおよびユーティリティー名は「確実」です。
logadm(1M), svcadm(1M), syslogd(1M), libpkcs11(3LIB), exec_attr(4), prof_attr(4), attributes(5), smf(5), random(7D)
『Oracle Solaris の管理: セキュリティーサービス』
『Solaris セキュリティーサービス開発ガイド』
ハードウェアプロバイダのポリシーが明示的になっていて (つまり、そのメカニズムの一部が無効になっていて)、ハードウェアプロバイダが切り離されていた場合、このハードウェアプロバイダのポリシーは、引き続き一覧に表示されます。
cryptoadm では、少なくとも、32 ビット共有オブジェクトが各ユーザーレベルプロバイダに提供されていることを前提としています。32 ビットおよび 64 ビット共有オブジェクトの両方が提供されている場合、2 つのバージョンが同じ機能を提供している必要があります。両方に同じメカニズムポリシーが適用されます。