Go to main content
Oracle® Solaris 11.3 での FIPS 140-2 対応システムの使用

印刷ビューの終了

更新: 2017 年 3 月
 
 

Oracle Solaris システム上での FIPS 140-2 コンシューマの有効化

FIPS 140-2 モードで動作するには、FIPS 140-2 対応システム上のアプリケーションは、米国政府が Oracle Solaris 上で FIPS 140-2 モードで検証したアルゴリズムを使用する必要があります。FIPS 140-2 プロバイダが有効になっている場合、一部のコンシューマは、デフォルトで FIPS 140-2 アルゴリズムを使用します (passwd コマンドなど)。その他のコンシューマでは、構成で FIPS 140-2 アルゴリズムのみを使用する必要があります。

    管理者には、Oracle Solaris に対して検証された FIPS 140-2 アルゴリズムを使用するようにコンシューマを構成し、無効なアルゴリズムを避ける責任があります。次のガイドラインに従ってください。

  • Oracle Solaris 上で使用できるが、Oracle Solaris の FIPS 140-2 検証に含まれていないアルゴリズム (2 つの鍵のトリプル DES など) は避けてください。

  • Oracle Solaris の FIPS 140-2 証明書に含まれているが、鍵の長さが FIPS 140-2 に必要な長さより短いアルゴリズムは避けてください (1024 ビット RSA など)。

  • Oracle Solaris の FIPS 140-2 証明書に含まれているが、コンシューマで使用できないアルゴリズム (IKEv2 での Koblitz 曲線に基づく楕円曲線暗号化 (ECC) など) は避けてください。IKEv2 は、素数に基づく ECC のみをサポートしています。

  • Oracle Solaris の FIPS 140-2 証明書に含まれていないが、暗号化フレームワークには含まれているアルゴリズム (MD5 対称鍵アルゴリズムや、その他の対称アルゴリズムの弱いバージョンなど) は避けてください。

  • コンシューマでその他のアルゴリズムを使用できる場合でも、FIPS 140-2 アルゴリズムのみを指定してください。多くのコンシューマがこのカテゴリに分類されます。


注 -  アプリケーションが、FIPS 140-2 で検証されたアルゴリズムを使用できないモジュール (インターネット鍵交換プロトコルバージョン 1 (IKEv1) や OpenSSH など) を使用している場合、FIPS 140-2 システム上ではこれらのアプリケーションを実行しないようにしてください。

FIPS 140-2 コンシューマとしての Apache HTTP Server

Oracle Solaris 11.3 は、Apache HTTP Server の 2 つのバージョンを提供します。Version 2.4 はパッケージ pkg:/web/server/apache-24 としてインストールされ、Version 2.2 はパッケージ pkg:/web/server/apache-22 としてインストールされます。FIPS 140-2 モードで動作するには、Version 2.4 は、FIPS 140-2 OpenSSL プロバイダまたは PKCS #11 エンジンオプションを使用できます。Version 2.2 は、暗号化フレームワークである PKCS #11 エンジンオプションを使用する必要があります。


注 -  各バージョンを別のポート上で待機するように構成した場合は、Web サーバーの両方のバージョンを FIPS 140-2 モードで実行できます。

暗号化フレームワーク (pktool gencert コマンド) または OpenSSL の FIPS 140-2 バージョン (openssl -newkey コマンド) を使用して、Web サーバー証明書を生成できます。

構成ステップについては、Oracle Solaris 11.3 SRU 5.6 システム上で FIPS 140-2 モードで実行する例を参照してください。

FIPS 140-2 コンシューマとしての SunSSH

Oracle Solaris 11.3 は、Secure Shell の 2 つのバージョンである SunSSH と OpenSSH を提供します。FIPS 140-2 モードで動作できるのは、Secure Shell の SunSSH バージョンだけです。

管理者は、明示的に SunSSH を FIPS 140-2 モードで動作できるようにする必要があります。FIPS 140-2 モードでは、SunSSH は FIPS 140-2 で検証されていないアルゴリズムを使用するように構成されている場合、エラーで失敗します。手順については、Oracle Solaris 11.3 での Secure Shell アクセスの管理 の SunSSH と FIPS 140-2を参照してください。この手順には、検証された FIPS 140-2 アルゴリズムのリストが含まれています。

サンプル構成については、Oracle Solaris 11.3 SRU 5.6 システム上で FIPS 140-2 モードで実行する例を参照してください。

FIPS 140-2 コンシューマとしての IPsec と IKEv2

IP セキュリティーアーキテクチャー (IPsec) は、IPv4 および IPv6 ネットワークで IP パケットを暗号化して保護します。インターネット鍵管理 (IKE) は、IPsec のための自動化された鍵管理を提供します。Oracle Solaris では、IPsec はカーネル暗号化フレームワークのコンシューマであり、IKE バージョン 2 (IKEv2) はユーザーランド暗号化フレームワークのコンシューマです。IPsec および IKE 管理者には、IPsec とともに IKEv2 を使用し、Oracle Solaris に対して検証された FIPS 140-2 アルゴリズムを選択する責任があります。


注 -  IKEv1 では、FIPS 140-2 用に検証された暗号化フレームワークの暗号化アルゴリズムが使用されません。そのため、IKEv1 を FIPS 140-2 モードで実行しないようにしてください。

FIPS 140-2 コンシューマとしての Kerberos

Kerberos クライアントはパッケージ pkg:/service/security/kerberos-5 としてインストールされ、KDC マネージャーはパッケージ pkg:/system/security/kerberos-5 としてインストールされます。Kerberos 管理者には、Kerberos サーバー、Kerberos データベース、および Kerberos クライアントで、Oracle Solaris に対して検証された FIPS 140-2 アルゴリズムを使用できるようにする責任があります。

KDC データベースと Kerberos クライアントに使用する暗号化タイプは、複数の Kerberos 構成ファイルで指定されます。これらのファイルでは、FIPS 140-2 暗号化タイプのみが使用され、弱い鍵が許可されないように Kerberos を構成する必要があります。

手順については、Oracle Solaris 11.3 での Kerberos およびその他の認証サービスの管理 の FIPS 140-2 モードで実行するように Kerberos を構成する方法を参照してください。

FIPS 140-2 コンシューマとしての鍵管理フレームワーク

鍵管理フレームワーク (KMF) は、Oracle Solaris で暗号化鍵と暗号化ポリシーを管理します。pktool は、対称鍵と非対称鍵を作成するための KMF コマンドです。KMF 管理者には、Oracle Solaris に対して検証された FIPS 140-2 アルゴリズムを選択する責任があります。Oracle Solaris 11.3 での暗号化と証明書の管理 の pktool gencert コマンドを使って証明書を作成する方法の例および pktool(1) のマニュアルページを参照してください。

FIPS 140-2 コンシューマとしての passwd コマンド

passwd コマンドは、ユーザーランド暗号化フレームワークのコンシューマです。2 つの構成ファイル /etc/security/crypt.conf/etc/security/policy.conf によって、システムがどのパスワードハッシュを使用するかが決定されます。

passwd コマンドは、PAM モジュール pam_authtok_store.so.1pam_unix_auth.so.1 を使用して crypt() 関数を呼び出します。crypt() 関数は、crypt.conf ファイル内のエントリに基づいて、メッセージダイジェストライブラリ libmd() からパスワードハッシュのプラグインを動的にロードします。使用可能なプラグインには、SHA256SHA512、および MD5 が含まれます。policy.conf ファイルには、許可されているプラグインが一覧表示されています。デフォルトでは、policy.conf ファイルで MD5 を使用することが許可されません。


注 -  /etc/security/policy.conf ファイル内の暗号化パスワードハッシュポリシーは、パスワードハッシュとして Blowfish を使用するシステムとの相互運用性を拡張します。FIPS 140-2 セキュリティーを向上させるには、policy.conf ファイル内の CRYPT_ALGORITHMS_ALLOW=2a,5,6 エントリから Blowfish アルゴリズム (2a) を削除してください。

例については、Oracle Solaris 11.3 でのユーザーとプロセスのセキュリティー保護 の 信頼できるユーザーのログインの作成およびOracle Solaris 11.3 でのユーザーとプロセスのセキュリティー保護 の 役割の作成を参照してください。

FIPS 140-2 コンシューマとしての encryptdecryptdigest、および mac コマンド

ユーザーコマンド encryptdecryptdigest、および mac は、暗号化フレームワークのコンシューマです。サイトのセキュリティーチームは、通常のユーザーが検証された鍵の長さの FIPS 140-2 アルゴリズムを選択するように指導してください。