Back to the Oracle Database Security home page  

ネットワーク・データの暗号化設定

目的

このチュートリアルでは、簡単で効果的なネットワークの暗号化について説明します。 サーバー上で暗号化を有効にするだけで、数百または数千に上る可能性のあるOracleクライアントとOracle Databaseサーバー間のネットワーク・トラフィックを暗号化できます。

セキュアな暗号システムによって、鍵を使用して平文データから判読できない暗号文へと変換します。これにより、正しい鍵を知らない限り、暗号文から相当する平文へ戻すことが非常に困難(コンピュータ計算では不可能)になります。

所要時間

約30分

概要

このチュートリアルでは、以下のタスクを実行します。

  • OracleクライアントとリモートのOracleデータベース間に接続を確立します。
  • ネットワーク・トラフィックを"スニッフィング"して、クリアテキストを確認します。
  • ネットワーク暗号化をOracle Databaseサーバーのみで有効にします。
  • ネットワーク・トラフィックを"スニッフィング"して、暗号文を確認します。

ソフトウェアおよびハードウェア要件

ソフトウェア要件は、以下のとおりです。

  • Oracle Database 11g
  • Oracle Advanced Securityデータベース・オプション

前提条件

このチュートリアルを始める前に次のことを確認してください。

.

Oracle Database 11gがインストールされていること。

.

Oracle Advanced Securityデータベース・オプションがインストールされていること。

リモート・データベースへ接続するためのクライアント設定

PCクライアントからリモート・データベースに接続するよう設定するには、以下の手順を実行します。

.

PCクライアントで「スタート」→「すべてのプログラム」の順にクリックします。 「Oracle Home」を開きます。 「Configuration and Migration Tools」を開きます。 Net Managerを起動します。

 

.

Local」を開きます。 「Service Naming」を選択し、緑色の+(プラス)記号をクリックして、新しいサービス名を作成します。

 

.

作成するネット・サービスの名前をネット・サービス名フィールドに入力します。 この例では"remote_db"という名前を使用しています。 「Next」をクリックします。

 

.

TCP/IP (Internet Protocol)」を選択し、「Next」をクリックします。

 

.

使用するデータベース・サーバーのホスト名またはIPアドレスを入力します。 ポート番号はデフォルトの1521のままにするか、またはデータベース・リスナーに合ったポート番号を入力します。 「Next」をクリックします。

 

.

(Oracle8i or later) Service Name」を選択し、データベースのサービス名を入力します。 「Next」をクリックします。

 

.

Test」をクリックして接続構成をテストします。 注: デフォルトでは、接続のテストにユーザー名SCOTTとパスワードTIGERが使用されます。

 

.

Change Login」をクリックすると、接続テストのユーザーを変更できます。

 

.

ユーザー名およびパスワードを入力します。 「OK」をクリックします。

 

.

再度、「Test」をクリックします。

 

.

接続テストに成功したら、「Close」をクリックします。

 

.

新しく作成したサービス名を選択し、情報が正しいことを確認します。

 

.

Fileメニューから「Save Network Configuration」を選択し、構成を保存します。

 

.

Fileメニューから「Exit」を選択し、Oracle Net Managerを終了します。

 

オプション: ネットワーク・トラフィックの監視


ネットワーク・トラフィックを監視するには、以下の手順を実行します。

.

PCクライアント上でSQL*Plusを起動します。 適切なパスワードを使用してHRユーザーとして接続します。 次のSQL文を実行し、HR.EMPLOYEES表から行を取得します。

SELECT last_name, salary FROM employees WHERE employee_id=100;

 

.

データベース・サーバー上でWiresharkなどのツールを使用して、ステップ1で実行したSQL文を含むネットワーク・トラフィックを表示します。 この例に示すとおり、EMPLOYEES表から取得した行の"King"という値や給与の値が確認できます。

 

サーバーでのネットワーク・データの暗号化設定

Oracle Databaseサーバーでネットワーク・データの暗号化を設定するには、以下の手順を実行します。

.

オペレーティング・システムのプロンプトでnetmgrと入力します。

 

.

Oracle Net ManagerのWelcomeページが表示されます。 「Local」を開きます。

 

.

Profile」を選択します。 Namingメニューから「Oracle Advanced Security」を選択します。

 

.

Encryption」タブをクリックします。

 

.

暗号化フィールドにSERVERが設定されていることを確認します。 暗号化タイプに「required」を選択します。 暗号化シード・フィールドに70未満のランダムな文字列を入力します。 Available Methodsリストから暗号化手法を選択し、「>」をクリックしてSelected Methodsリストに移動します。

 

.

File」→「Save Network Configuration」を選択し、変更内容を保存します。

 

.

Exit」を選択し、Oracle Net Managerを終了します。

 

オプション: ネットワーク・トラフィックの監視

ネットワーク・トラフィックを監視し、ネットワーク・データの暗号化を確認するには、以下の手順を実行します。

.

PCクライアント上でもう一度SQL*Plusを起動します。 適切なパスワードを使用してHRユーザーとして接続します。 次のSQL文を実行し、HR.EMPLOYEES表から行を取得します。

SELECT last_name, salary FROM employees WHERE employee_id=100;

 

.

再びデータベース・サーバー上でWiresharkなどのツールを使用して、ステップ1で実行したSQL文を含むネットワーク・トラフィックを表示します。 この例に示すとおり、今回はデータが暗号化されているため、EMPLOYEES表から取得した行の"King"という値や給与の値は確認できません。

 

まとめ

このチュートリアルでは、サーバー上で暗号化を有効にするだけで、Oracleクライアントがいくつあっても非常に簡単にネイティブ・ネットワークを暗号化できることを学習しました。

このチュートリアルで学習した内容は、次のとおりです。

  • リモート・データベースへ接続するためのクライアント設定
  • Oracle Databaseサーバーでのネットワーク・データの暗号化設定

参考資料

  • 『Oracle Database Advanced Security管理者ガイド11g リリース2(11.2)』

著者

  • カリキュラム開発リーダー: Donna Keesling
  • 著者: Peter Wahl
 
Left Curve
アクセスの多いダウンロード
Right Curve
ダウンロード Oracle Berkeley DB
ダウンロード Enterprise Manager
ダウンロード Database EE and XE
ダウンロード Enterprise Pack for Eclipse
ダウンロード Fusion Middleware
ダウンロード Java EE & GlassFish
ダウンロード Java SE
ダウンロード JDeveloper and ADF
ダウンロード MySQL
ダウンロード NetBeans IDE