Facebook Twitter
お問い合わせ
TOPICS
更新情報
ホーム > ブログ > Oracle Cloud > OCI セキュリティ・ゾーン + クラウド・ガードで可用性を高める

OCI セキュリティ・ゾーン + クラウド・ガードで可用性を高める

ブログ
Oracle Cloud
2024.08.07

皆さま、こんにちは!y.takanashiです。

  

今回はセキュリティ・ゾーンの設定と、クラウド・ガードを連携して可用性を高める方法について、以下のドキュメントを元に紹介します。

Speaker Deck - 「Security Zones設定・操作ガイド」


セキュリティ・ゾーンとは?

セキュリティ・ゾーンとは、特定のコンパートメントに対する操作を制限し、コンパートメントを要塞化することでセキュリティレベルを向上させるOCIサービスです。

セキュリティ・ゾーンでは、「レシピ」と呼ばれる特定のコンパートメント内に複数のポリシーを設定します。

レシピには、「Maximum Security Recipe」と「Custom Security Recipe」の2種類があります。

Maximum Security Recipe」はオラクル定義のベスト・プラクティスで、合計32個のポリシーが定義されています。

以下が代表的なポリシーです。

ポリシー・ステートメント意味リソース・タイプ
deny instance_without_sanctioned_imageカスタム・イメージからセキュリティ・ゾーンにコンピュート・インスタンスを作成することはできませんコンピュート、
コンピュート管理
deny free_database_creationセキュリティ・ゾーンにAlways Freeデータベース・インスタンスを作成することはできません。データベース(すべてのタイプ)
deny security_list_to_allow_traffic_to_restricted_portセキュリティ・ゾーン内の制限付きポートへのトラフィックを許可するセキュリティ・リストを作成または変更することはできません。仮想ネットワーク(VCN)
deny delete_network_security_groupセキュリティ・ゾーン内のVCNネットワーク・セキュリティ・グループは削除できません。仮想ネットワーク(VCN)
deny load_balancer_with_weak_SSL_communicationセキュリティ・ゾーン内のロード・バランサ・リスナーのSSLポリシーは、TLS 1.2以上を使用する必要があります。ロード・バランサ
deny network_security_group_with_unsecure_ingress_ruleセキュリティ・ゾーン内のセキュアでないポートまたはIPアドレスへのイングレスを許可するルールでは、ネットワーク・セキュリティ・グループを追加できません。仮想ネットワーク(VCN)
deny revoke_certificate_authority_versionセキュリティ・ゾーン内の認証局(CA)バンドル内の中間証明書を取り消すことはできません。証明書管理
deny delete_vcnセキュリティ・ゾーン内のVCNは削除できません。仮想ネットワーク(VCN)
deny update_route_tableセキュリティ・ゾーンのVCNルート表は更新できません。仮想ネットワーク(VCN)
deny update_network_security_group_ingress_ruleセキュリティ・ゾーン内のネットワーク・セキュリティ・グループのイングレス・ルールは変更できません。仮想ネットワーク(VCN)
deny update_network_security_group_egress_ruleセキュリティ・ゾーン内のネットワーク・セキュリティ・グループのエグレス・ルールは変更できません。仮想ネットワーク(VCN)
deny delete_vcn_security_listセキュリティ・ゾーン内のVCNセキュリティ・リストは削除できません。仮想ネットワーク(VCN)
deny update_vcn_security_list_ingress_rulesセキュリティ・ゾーン内のVCNセキュリティ・リストのイングレス・セキュリティ・ルールは変更できません。仮想ネットワーク(VCN)
deny update_vcn_security_list_egress_rulesセキュリティ・ゾーン内のVCNセキュリティ・リストのイングレス・セキュリティ・ルールは変更できません。仮想ネットワーク(VCN)
deny update_DHCP_optionsセキュリティ・ゾーンのDHCPオプションは更新できません。仮想ネットワーク(VCN)
deny update_local_peering_gatewayセキュリティ・ゾーン内のローカル・ピアリング・ゲートウェイは更新できません。仮想ネットワーク(VCN)
deny detach_volumeセキュリティ・ゾーン内のボリュームはデタッチできません。ブロック・ストレージ
deny delete_certificate_authorityセキュリティ・ゾーン内の認証局は削除できません。証明書管理
deny public_bucketsセキュリティ・ゾーン内のオブジェクト・ストレージ・バケット
は、パブリックにできません。
オブジェクト・ストレージ
出典:https://docs.oracle.com/ja-jp/iaas/security-zone/using/security-zone-policies.htm

Custom Security Recipe」はユーザーがすべてのポリシーの中から有効化や無効化を設定できるレシピです。

すべてのポリシーの一覧については、以下のドキュメントに記載されています。

OCI公式ドキュメント - 「セキュリティ・ゾーン・ポリシー」

セキュリティ・ゾーンを設定する際の注意点として、1つのコンパートメントに対して単一のセキュリティ・ゾーンのみを設定できる点にご注意してください

また、親コンパートメントに設定したセキュリティ・ゾーンは、子コンパートメント以降にも継承されて設定が適用されます。


セキュリティ・ゾーンの設定手順

IAMポリシーの設定

Administratorsグループに所属していないユーザーがセキュリティ・ゾーンやレシピの作成、更新、削除を行う場合、以下のIAMポリシーを設定する必要があります。

  • Allow group SecutiryAdmins to manage cloud-guard-family in tenancy
  • Allow group SecutiryAdmins to manage security-zone in tenancy
  • Allow group SecutiryAdmins to manage security-recipe in tenancy

セキュリティ・ゾーンの作成

IAMポリシーの設定後、OCIコンソール画面左上のハンバーガーメニューから「アイデンティティとセキュリティ」→セキュリティ・ゾーン内の「概要」を選択します。

セキュリティ・ゾーンの作成」から以下の項目を入力します。

  • ゾーン・レシピの選択:Oracle管理
  • 名前:任意(ここでは「Test Security Zone」)
  • 説明:任意(ここでは「This is a test.」)
  • コンパートメント:セキュリティ・ゾーンを配置するコンパートメントを選択

ステータスが「作成中」→「アクティブ」となり、セキュリティ・ゾーンの作成は完了です。

セキュリティ・ゾーン作成後、ポリシーの実効には最大で10分程度かかる可能性がある点にご注意ください。

レシピを自身で設定する場合(「Custom Security Recipe」)は、「レシピ」から「レシピの作成」を選択します。

以下の項目を入力、「」を選択します。

  • レシピ名:任意(ここでは「Test Recipe」)
  • 説明:任意(ここでは「This is a test.」)
  • コンパートメント:セキュリティ・ゾーンを配置するコンパートメントを選択

ポリシーは任意で設定することが可能で、例えばパブリック・アクセスを禁止させる場合、ポリシー・タイプを「Deny Public Access」に変更、ポリシー一覧にチェックを入れます。

レシピの確認画面で、有効化されたポリシー数を確認、「作成」を選択します。

作成後、自身が定義したCustom Security Recipeが表示されます。

Maximum Security Recipeを使用したセキュリティ・ゾーンの設定に戻り、正しく機能するか確認します。

ここでは既に作成したオブジェクト・ストレージのバケットを「パブリック」に設定変更を試みます。

バケットの「可視性の編集」からパブリックに変更、「変更の保存」を選択します。

変更の保存」を選択後、「Security Zone Violation:〜」というエラーが表示され、可視性の変更ができないことが確認できます。

以上でセキュリティ・ゾーンの設定はすべて完了となります。


クラウド・ガードとの連携

ここではセキュリティ・ゾーンをクラウド・ガードと連携して可用性を高める方法について紹介します。

クラウド・ガードとは、OCIで展開されているサービスの設定内容や、ユーザーアクティビティに対して違反がないか監視をする運用サービスです。

クラウド・ガードは事前定義された「ディレクタ・レシピ」に基づき、OCI サービスに潜むセキュリティ・リスクを可視化します。

クラウド・ガードと連携することで、セキュリティ・ゾーンを作成する前の既存リソースの問題を検出できます。

そのため、セキュリティ・ゾーンを作成する前に、クラウド・ガードの有効化することが推奨されています。

クラウド・ガードの詳細についてはドキュメントは以下をご覧ください。

OCI公式ドキュメント - 「クラウド・ガード」

Speaker Deck - 「Cloud Guard 設定・操作ガイド」

Cloudiiブログ - 「Cloud Guard を有効化してOCIの問題を確認する」

※クラウド・ガードの操作方法については、今回の内容から外れるため割愛しています。

セキュリティ・ゾーンの作成前の既存リソースの問題を確認する場合、セキュリティ・ゾーン内の「クラウド・ガードで詳細を表示」を選択します。

選択後、クラウド・ガードの画面に遷移して問題を確認することができます。

今回の例では、オブジェクト・ストレージのバケットの暗号化キーを、OCIのボールト・サービスで管理することを推奨する内容となっております。


まとめ

今回は簡単にですがセキュリティ・ゾーンの設定と、クラウド・ガードを連携して可用性を高める方法についてまとめました。

これらのサービスを組み合わせることで、セキュリティレベルの高い構成を実現できます。

さらに、どちらのサービスも無料で使用できるため、コスト面でも優れた選択肢となっております。

以上となります。

この記事を通じて読者の皆様の問題解決の一助となれば幸いです。

最後まで読んで頂き、ありがとうございましたm(_ _)m


この記事が気に入ったら
「いいね!」

この記事を書いた人


関連コンテンツ

CONTACT お問い合わせ

Cloudiiのサービスやプロダクトについて
興味をお持ちの方は、
お気軽にお問い合わせください。