Oracle Database 2日でセキュリティ・ガイド 11g リリース1(11.1) E05781-03 |
|
この章の内容は次のとおりです。
『Oracle Database 2日でデータベース管理者』の「ネットワーク環境の構成」および使用しているプラットフォームの『Oracle Databaseインストレーション・ガイド』の手順に従って、Oracle Databaseインストール環境へのクライアント接続を構成できます。この章では、ネットワーク上を移動するデータを暗号化する方法を説明し、Oracle Databaseのネットワーク接続を保護するために従うことのできるガイドラインも示します。
ここでは、クライアント接続のセキュリティを高めて、完全な保護を確保する方法を説明します。SSLの使用は、これらのリストの重要な要素であり、認証と通信の厳密なセキュリティを可能にします。
ガイドラインは次のとおりです。
インターネットを介したクライアント・コンピュータの認証には問題が多いため、通常は、かわりにユーザー認証が行われます。この方法により、偽造されたIPアドレス、危険にさらされたオペレーティング・システムまたはアプリケーション、偽造または盗用されたクライアント・システムIDがクライアント・システムで使用される問題を回避できます。また、次のガイドラインに従うことで、クライアント接続のセキュリティが向上します。
デフォルトでは、オペレーティング・システムで認証されたログインのみがセキュア接続で許可され、Oracle Netおよび共有サーバー構成の使用は拒否されます。デフォルトで行われるこの制限により、リモート・ユーザーがネットワーク接続で他のオペレーティング・システム・ユーザーを装うことが阻止されます。
初期化パラメータREMOTE_OS_AUTHENT
をTRUE
に設定すると、データベースはセキュアでない接続を介して受信したクライアントのオペレーティング・システムのユーザー名を受け入れ、このユーザー名をアカウント・アクセスで使用します(初期化パラメータを変更するには、「初期化パラメータ値の変更」を参照してください)。コンピュータなどのクライアントは、オペレーティング・システムの認証を適切に実行していない場合があるため、この機能を使用するとセキュリティが非常に低下します。
デフォルト設定REMOTE_OS_AUTHENT = FALSE
により、よりセキュアな構成が作成され、Oracle Databaseに接続するクライアントに対してサーバーベースの適切な認証が行われます。
REMOTE_OS_AUTHENT
初期化パラメータのデフォルト設定(FALSE
)は、変更しないでください。
このパラメータをFALSE
に設定しても、ユーザーがリモートから接続できなくなるわけではありません。クライアントがすでに認証されていたとしても、データベースにより標準の認証プロセスが適用されるだけです。
SSL通信を使用すると、盗聴が困難になり、ユーザーとサーバーの認証に証明書を使用できます。SSLの構成方法は、『Oracle Database Advanced Security管理者ガイド』を参照してください。
証明書の管理方法の詳細は、『Oracle Database Advanced Security管理者ガイド』を参照してください。
インターネットを介したクライアント・コンピュータの認証には問題が多いため、かわりにユーザー認証を行います。この方法により、偽造されたIPアドレス、ハッキングされたオペレーティング・システムまたはアプリケーション、偽造または盗用されたクライアント・システムIDがクライアント・システムで使用される問題が回避できます。また、次の手順を実行することで、クライアント・コンピュータのセキュリティが向上します。
不適切なアクセスまたは変更からネットワークおよびトラフィックを保護することは、ネットワーク・セキュリティにおいて非常に重要です。データが移動するすべての経路を検討し、各経路およびノードに影響を与える脅威を評価します。次に、脅威およびセキュリティが侵害された場合の影響を抑制または排除する手順を実行します。また、監視および監査を実施し、脅威レベルの増加または侵入を検出します。
ネットワーク接続を管理するには、Oracle Net Managerを使用できます。Oracle Net Managerの使用の概要は、『Oracle Database 2日でデータベース管理者』を参照してください。『Oracle Database Net Services管理者ガイド』も参照してください。
次の手順を実行して、ネットワーク・セキュリティを強化します。
Oracle Enterprise Manager Database Controlを使用してリスナーのアクティビティを監視できます。Database Controlのホームページの「一般」で、使用しているリスナーのリンクをクリックします。「リスナー」ページが表示されます。このページには、生成されたアラートのカテゴリ、アラート・メッセージ、アラートがトリガーされた日時などの詳細な情報が含まれています。このページには、リスナーのパフォーマンス統計などの情報も含まれています。
listener.ora
ファイルで、次の行を追加または変更します。
ADMIN_RESTRICTIONS_LISTENER=ON
RELOAD
を使用して構成をリロードします。
LISTENER= (DESCRIPTION= (ADDRESS_LIST= (ADDRESS= (PROTOCOL=tcps) (HOST = shobeen.us.example.com) (PORT = 8281)))
リモートからリスナーを管理するには、クライアント・コンピュータ上のlistener.ora
ファイルでリスナーを定義します。たとえば、リスナーUSER281にリモートからアクセスする場合は、次の構成を使用します。
user281 = (DESCRIPTION = (ADDRESS = (PROTOCOL = tcps) (HOST = shobeen.us.example.com) (PORT = 8281)) ) )
listener.ora
のパラメータの詳細は、『Oracle Net Servicesリファレンス・ガイド』を参照してください。
パスワードがlistener.ora
ファイルに設定されていないことを確認します。オペレーティング・システム認証によってリスナー管理が保護されます。パスワードが設定されていない場合、リモート・リスナー管理は無効です。
これにより、リスナーはすべてのIPアドレスを監視できます。指定したIPアドレスを監視するように制限することもできます。これらのタイプのコンピュータでは、リスナーにすべてのIPアドレスを監視させるのではなく、IPアドレスを指定することをお薦めします。特定のIPアドレスの監視に制限することで、リスナー・プロセスからTCPエンドポイントが盗用されることを防止できます。
この制限により、リスナー(またはエージェントが実行するプロシージャ)によって起動される外部プロシージャ・エージェントに、読取りまたは書込み操作の実行権限が継承されなくなります。この個別のリスナー・プロセスの所有者には、Oracleをインストールした所有者またはOracleインスタンスを実行する所有者(デフォルトの所有者であるORACLE
など)は指定しないでください。
リスナーにおける外部プロシージャの構成の詳細は、『Oracle Database Net Services管理者ガイド』を参照してください。
ネットワーク上のOracleデータを保護する方法については、「ネットワーク暗号化を使用したネットワーク上のデータの保護」を参照してください。ネットワークの暗号化の詳細は、『Oracle Database Advanced Security管理者ガイド』を参照してください。
内部ユーザーにインターネット・アクセスを許可する場合は、ファイアウォールを適切に配置および構成することで、イントラネットへの外部アクセスを防止できます。
リスナーの詳細は、『Oracle Database Net Services管理者ガイド』を参照してください。
Oracle Netの有効なノードの確認セキュリティ機能を利用すると、指定のIPアドレスを持つネットワーク・クライアントからOracleサーバー・プロセスへのアクセスを許可または拒否できます。この機能を使用するには、次のsqlnet.ora
構成ファイル・パラメータを設定します。
tcp.validnode_checking = YES tcp.excluded_nodes = {list of IP addresses} tcp.invited_nodes = {list of IP addresses}
tcp.validnode_checking
パラメータで、機能を有効にします。tcp.excluded_nodes
およびtcp.invited_nodes
パラメータは、特定のクライアントIPアドレスによるOracleリスナーへの接続の確立を拒否または有効にします。これにより、潜在的なサービス拒否(DoS)攻撃を防ぐことができます。
Oracle Net Managerを使用して、これらのパラメータを構成できます。詳細は、『Oracle Database Net Services管理者ガイド』を参照してください。
可能な場合は、Oracle Advanced Securityを使用して、クライアント、データベースおよびアプリケーション・サーバー間のネットワーク・トラフィックを暗号化します。Oracleネットワーク暗号化の概要は、「ネットワーク暗号化を使用したネットワーク上のデータの保護」を参照してください。ネットワーク暗号化の詳細は、『Oracle Database Advanced Security管理者ガイド』を参照してください。
オペレーティング・システムの不要なサービスをすべて使用禁止にして、ホスト・オペレーティング・システムを保護します。UNIXおよびWindowsの大部分のサービスは、標準的なデータベース構成では必要ありません。この種のサービスには、FTP、TFTP、TELNETなどがあります。使用を禁止している各サービスのUDPポートとTCPポートは、両方とも必ず閉じてください。いずれかのポートが使用可能になっていると、オペレーティング・システムが攻撃を受けやすくなります。
情報は、データベース・レベルで暗号化して保護するだけでなく、ネットワークで送受信されるときにも保護する必要があります。
この項の内容は次のとおりです。
ネットワーク暗号化とは、クライアントとサーバー間のネットワークを移動するデータを暗号化することです。データベース・レベルだけでなくネットワーク・レベルでもデータを暗号化する必要があるのは、データベースで十分注意して暗号化したデータでもネットワーク・レベルで読み取られる可能性があるためです。たとえば、ネットワークを移動する情報がネットワーク・パケット・スニファを使用して傍受され、ファイルにスプールされて不正に使用される可能性があります。ネットワーク上のデータを暗号化することにより、このようなアクティビティを防止できます。
ネットワーク上のデータを暗号化するには、次のコンポーネントが必要です。
sqlnet.ora
構成ファイルを編集できます。Oracle Net Managerとsqlnet.ora
はどちらもデフォルトのOracle Databaseインストール環境で使用できます。
Oracle Net Managerを使用するか、sqlnet.ora
ファイルを編集して、ネットワーク暗号化を設定できます。このマニュアルでは、Oracle Net Managerを使用してネットワーク暗号化を設定する方法を説明します。
「暗号化」設定ペインが表示されます。
暗号化シード・パラメータの一部にカンマ「,」、右括弧「)」などの特殊文字を使用する場合は、一重引用符で値を囲んでください。
表5-1に、ユーザー・アカウントを保護するために設定する初期化パラメータを示します。
初期化パラメータを変更するには、「初期化パラメータ値の変更」を参照してください。初期化パラメータの詳細は、『Oracle Databaseリファレンス』および『Oracle Database管理者ガイド』を参照してください。
|
Copyright © 2007, 2008 Oracle Corporation. All Rights Reserved. |
|