この項の目的は、インストール後に行う必要のあるセキュリティ構成の変更について説明することです。ただし、Oracle VMコンポーネントのインストーラは、デフォルトでセキュリティ・リスクを最小限に抑えるように設計されているため、潜在的な問題はインストール手順中に自動的に処理されます。一般的なセキュリティの考慮事項は、次のとおりです。
指定したタイプのデプロイメントで不要のコンポーネントを削除または無効にすることをお薦めします。ただし、Oracle VMはOracle Linuxの軽量で最適化されたバージョンに基づいており、不要なパッケージおよびコンポーネントは、インストール・メディアに含まれていません。
ソフトウェアをインストールおよび構成できるように、インストールにはスーパーユーザーおよびrootパスワードの作成および割当てが必要です。インストールおよび構成タスクの完了後すぐに、各Oracle VM管理者に個別のユーザー・アカウントを作成することをお薦めします。可能な場合は、rootへのアクセスを無効化することを検討します。
FTPまたは標準HTTPなどの弱いプロトコルまたはプレーンテキスト・プロトコルは、デフォルトで無効にする必要があります。デモおよびテスト目的で、これらを使用することは許容できますが、安全性が低いということを常に意識する必要があります。Oracle VMコンポーネント間での通信は、デフォルトで適切に保護されています。Oracle VM ManagerおよびOracle VM Serverは、Oracle VM Agentを介して通信し、すべてのエージェント通信は、SSL暗号化されています。Oracle VM Managerへのアクセスは、デフォルトでHTTPSを使用するよう構成されています。信頼できるCA証明書を追加するには、第2.5.1項「SSL暗号化用の信頼できるCA証明書およびキーストアの追加」の詳細な手順に従います。証明書の構成の詳細な手順についても、この項で説明されています。
機密情報を含むファイルには、デフォルトで制限的なファイル権限がある必要があります。これらのファイルには、監査ログ、パスワード・ファイルおよび構成が含まれています。Oracle VMは、クリアテキスト・パスワードなどの機密データがログまたは一時ファイルに開示されないように構成されています。ファイル権限は、デフォルトで厳しい状態で維持されており、許可されていないアクセスを防止し、必要に応じて暗号化が適用されています。
物理サーバーへのアクセスは、デフォルトで厳密に制限されており、これによって、情報が危険にさらされるリスクがとても低いことが暗示されます。したがって、ログ・ファイル、パスワード・ファイルおよび構成データなどの機密データは、通常Oracle VM環境でよく保護されています。Oracle VM Managerを正常にインストールまたはアップグレードした後、インストーラの指示に従って、/tmp
からログ・ファイルを必ず削除します。
セキュアな本番環境を構築するには、認証局(CA)から信頼できる証明書を取得してインストールする必要があります。Oracle VM Managerは、Oracle WebLogic Serverで実行され、Oracle WebLogicは、デジタル証明書およびキーストアを更新するためのインタフェースを提供します。信頼できるCA証明書およびキーストアを追加するには、Oracle WebLogicのドキュメントに記載されている手順を参照してください。
この手順では、証明書をインストールするときに知っておく必要のある2つの変数について言及しています。Oracle VM Managerでのこれらの変数の値は、次のとおりです。
$JAVA_HOME\jre\lib\security /u01/app/oracle/java/jre/lib/security $WL_HOME\server\lib /u01/app/oracle/Middleware/wlserver_10.3/server/lib
Oracle VMは、デフォルトでSSLが有効で、自己署名CA証明書を使用してインストールします。TCPポート7002のHTTPSを介してOracle VM Managerに接続する場合、ブラウザがOracle VM Managerのアイデンティティを検証できず、接続が信頼できないとみなされるため、警告が表示されます。この項およびOracle WebLogicのドキュメントに説明するように、公式な認証局から証明書を取得することをお薦めします。
Oracle WebLogic Serverコンソールにアクセスするには、次のように入力します。
https://
または
hostname
:7002/console
http://
(リリース3.2.1ではHTTPはデフォルトで無効になっています。)
hostname
:7001/console
ユーザーweblogicと、Oracle VM Managerのインストール時に設定したパスワードを使用してログインします。
Oracle VM AgentおよびOracle VM Manager間での通信は、RSAアルゴリズムおよび1024ビット秘密鍵を使用してSSL暗号化されています。関連するファイルは、/etc/ovs-agent/cert
にあります。
certificate.pem
key.pem
request.pem
デフォルトの自己署名証明書を自身の信頼できる証明書に置き換える場合は、証明書ファイルを置き換えます。
新しい証明書およびキー・ファイルを生成するには、Oracle VM Serverにログインして、コマンドovs-agent-keygen
を実行します。コマンドは、次のように使用されます。
# ovs-agent-keygen -h Usage: ovs-agent-keygen [OPTION] Generate SSL certificate and key files for Oracle VM Agent XMLRPC Server. Options: -f, --force override existing files -v, --version show version number and exit -h, --help show this help message and exit
生成されたファイルは、前述のディレクトリにあります。-f
オプションを使用する場合、既存のファイルは上書きされます。
Oracle VM 3.3.1では、Oracle VM Agentのパスワードは初期検出プロセスの間の認証にのみ使用されます。その後のOracle VM ManagerとOracle VM Agentとの間の認証はすべて、証明書を使用して行われます。このアプローチによりセキュリティが強化され、エージェントが実行しているOracle VM Serverの所有権を持つOracle VM ManagerインスタンスへのOracle VM Agentへのアクセスを制限できます。
3.3.1より以前のバージョンのOracle VMを使用している場合には、Oracle VM Agentのパスワードを変更する必要のある場合があります。Oracle VM Managerのユーザー・インタフェースには、サーバー・プール内のすべてのサーバーのOracle VM Agentのパスワードを一括変更するオプションが用意されています。このオプションの詳細は、『Oracle VMユーザーズ・ガイド』のOracle VMの特定のバージョンに関する説明を参照してください。このオプションは、認証メカニズムの変更によりバージョン3.3.1では使用できなくなっています。
デフォルトのOracle VMインストールでは、VNCおよびライブ・マイグレーション・トラフィックがOracle VM Agent通信に使用される証明書と同じ証明書で保護されています。セキュリティ・ポリシーによって必要な場合は、構成ファイル/etc/xen/xend-config.sxp
で適切な場所を指定することで、別の証明書を使用できます。具体的には、構成ファイルで次のセクションを調べ、証明書およびキー・ファイルの場所パラメータを変更する必要があります。
# SSL key and certificate to use for the ssl relocation interface, if # xend-relocation-ssl-server is set. (xend-relocation-server-ssl-key-file/etc/ovs-agent/cert/key.pem
) (xend-relocation-server-ssl-cert-file/etc/ovs-agent/cert/certificate.pem
)
自己署名証明書の有効期限が切れている場合、証明書のキーストアを更新する必要があります。証明書のキーストアを更新するには、次の手順を実行します。
VNC RASプロキシに対して証明書のキーストアを更新するには、次の手順を実行します。
Oracle VM Managerホストで次のコマンドを入力して、キーストアを作成します。
# cd /u01/app/oracle/ovm-manager-3/bin # ./secureOvmmTcpGenKeyStore.sh
次の情報の入力を求められます。
Generate OVMM TCP over SSL key store by following steps: Enter keystore password:password
Re-enter new password:password
What is your first and last name? [Unknown]:name
What is the name of your organizational unit? [Unknown]:unit
What is the name of your organization? [Unknown]:organization
What is the name of your City or Locality? [Unknown]:City
What is the name of your State or Province? [Unknown]:State
What is the two-letter country code for this unit? [Unknown]:country_code
Is CN=name
, OU=unit
, O=organization
, L=City
, ST=State
, C=country_code
correct? [no]:yes
Enter key password for <ovmm> (RETURN if same as keystore password):password
Re-enter new password:password
secureOvmmTcp.sh
スクリプトを使用して、キーストアを使用し、TCPSサービスを有効にします。このスクリプトは、前述のキーストア・スクリプトと同じディレクトリにあります。Oracle VM Managerホストで、次のように入力します。
# ./secureOvmmTcp.sh
次の情報の入力を求められます。
Enabling OVMM TCP over SSL service Please enter the OVM manager user name:username
Please enter the OVM manager user password:password
Please enter the password for TCPS key store :password
The keystore password created in the previous script The job of enabling OVMM TCPS service is committed, please restart OVMM to take effect.
ローカルのOracle VM Managerのインスタンスを再起動します。
# /sbin/service ovmm stop # /sbin/service ovmm start
既存のLDAP認証インフラストラクチャを持つ環境で、Dom0でのアクセス試行を制御およびログ記録するには、各Oracle VM ServerインスタンスでLDAP認証を有効にすることが望ましい場合があります。これにより、他の状況において集約されたユーザー制御を価値あるものにするという同じ理由から、重要なアセット(Dom0)のセキュリティを強化できます。
LDAPクライアントに必要なパッケージは、Oracle VM Server ISOには含まれていません。そのため、パッケージを手動でダウンロードしてインストールする必要があります。この項では、これを行う手順を説明します。
Oracle Linux 5u7レベルで、公開または内部のYumリポジトリを追加します。これを行う最も直接的な方法は、http://public-yum.oracle.com/のOracle Linux 5の指示に従ってください。
# cd /etc/yum.repos.d # wget http://public-yum.oracle.com/public-yum-el5.repo
LDAP認証の有効化に必要なパッケージおよび依存性をインストールします。
# yum install openldap-clients # yum install nss_ldap
インストールでは進めるかどうかを判断することが求められるので、'y'の文字を返すことによりこれに応答します。必要な依存性もリストされ、ダウンロードされます。パッケージ・ファイルをコピーし、それらを手動でサーバー・インスタンスにインストールする場合には、リストされた依存性のメモを取り、LDAPクライアントをインストールしようとしている各サーバーでこれらも使用可能にされていることを確認します。
インストールが完了したら、サーバーのSSL/TLS証明書を/etc/openldap/cacerts/openldap.pem
にコピーします。証明書に適切な権限があることを確認します。
# chmod 644 /etc/openldap/cacerts/openldap.pem
CA証明書を再ハッシュします。
# cacertdir_rehash /etc/openldap/cacerts
authconfigコマンドを使用してLDAP認証を有効にします。
# authconfig-tui
LDAPがLDAPサーバーをアクセスするように正しく構成されていることを確認します。構成はご使用の環境および要件に固有のものであり、このドキュメントでは取り扱いませんが、次の構成例が役立つ場合もあります。
/etc/openldap/ldap.conf:
TLS_CACERTDIR /etc/openldap/cacerts BASE dc=example,dc=com URI ldap://ldapserver.example.com:389
/etc/ldap.conf:
ssl start_tls tls_cacertdir /etc/openldap/cacerts base dc=example,dc=com uri ldap://ldapserver.example.com:389 pam_password md5
Oracle VM Managerでは、セキュア・トンネルを使用して、ネットワーク全体で仮想マシン・コンソールのデータ・トラフィックを保護します。Oracle VM Managerでは、直接接続は行いませんが、VNCプロキシおよびSSL暗号化トンネルを使用します。仮想マシン・コンソールは、VNC Viewerのクライアント・インスタンスを介してアクセスします。VNC Viewerをインストールする推奨の場所は、Oracle VM Managerホスト・サーバー上です。
http://oss.oracle.com/oraclevm/manager/RPMS/から最新のTightVNCパッケージをインストールすることをお薦めします。
次のコマンドを使用して、TightVNCをインストールします。
# rpm -ivh tightvnc-java-version
.noarch.rpm
Oracle VM Managerおよび仮想マシンにアクセスするクライアント間でのファイアフォールでは、セキュアVNCプロキシへアクセスするために、TCPポート15901をオープンにする必要があります。Oracle VM ManagerおよびOracle VM Server間でのファイアフォールでは、TCPポート6900以上(各仮想マシンに1つのポート)をオープンにする必要があります。たとえば、50の仮想マシンを持つ場合、TCPポート6900から6949を介したトラフィックを許可する必要があります。
仮想マシンへの暗号化いないローカルVNC接続では、TCPポート5900以上が使用可能です。セキュリティの観点から、SSL暗号化をお薦めします。
VNCのインストールおよび使用の詳細は、『Oracle VMインストレーションおよびアップグレード・ガイド』の仮想マシン・コンソール・ユーティリティのインストールおよび構成に関する説明を参照してください。