シナリオB: VPNを使用したプライベート・サブネット

このトピックでは、仮想クラウド・ネットワーク(VCN)とリージョナル・プライベート・サブネットで構成されるシナリオBの設定方法について説明します。冗長性のために、他のサーバーはそれぞれの可用性ドメインに存在します。VCNには、オンプレミス・ネットワークに接続するための動的ルーティング・ゲートウェイ(DRG)およびサイト間VPNがあります。VCNにインターネットへの直接接続はありません。インターネットへの接続は、オンプレミス・ネットワーク経由で間接的に行う必要があります。

サブネットはデフォルト・セキュリティ・リストを使用します。このリストには、Oracle Cloud Infrastructureを簡単に起動できるように設計されたデフォルト・ルールが含まれています。これらのルールを使用すると、一般的な必須アクセス(インバウンドSSH接続や、任意のタイプのアウトバウンド接続など)が可能になります。セキュリティ・リスト・ルールはトラフィックを許可するのみです。セキュリティ・リスト・ルールで明示的にカバーされていないトラフィックはすべて拒否されます。

このシナリオでは、レガシーまたはアップグレードされたDRGを使用できます。

このシナリオでは、デフォルト・セキュリティ・リストにルールを追加します。かわりに、それらのルールにカスタム・セキュリティ・リストを作成することもできます。その場合は、デフォルト・セキュリティ・リストとカスタム・セキュリティ・リストの両方を使用するようにサブネットを設定します。

ヒント

セキュリティ・リストは、VCNのリソース内外のトラフィックを制御する1つの方法です。ネットワーク・セキュリティ・グループを使用することもできます

サブネットはデフォルト・ルート表を使用します。VCNが作成された当初は、この表にはルールがありません。このシナリオでは、この表にはDRGに関するルールが1つのみ含まれています。VCN内でトラフィックをルーティングするために必要なルート・ルールはありません。サブネットはデフォルト・セキュリティ・リストを使用します。次の図を参照してください。

この図は、シナリオB: リージョナル・プライベート・サブネットおよびVPN IPSec接続を使用したVCNを示しています。
コールアウト1: リージョナル・プライベート・サブネット・ルート表
宛先CIDR ルート・ターゲット
0.0.0.0/0 DRG
ヒント

このシナリオでは、接続にサイト間VPNを使用します。ただし、かわりにOracle Cloud Infrastructure FastConnectを使用できます。

前提条件

このシナリオでVPNを設定するには、ネットワーク管理者から次の情報を取得する必要があります:

  • VPNのユーザー側の顧客構内機器(CPE)のパブリックIPアドレス
  • オンプレミス・ネットワーク用の静的ルート(このシナリオではVPNトンネルに静的ルーティングを使用していますが、かわりにBGP動的ルーティングを使用することもできます)

この情報をOracleに提供すると、ネットワーク管理者がVPNのユーザー側でCPEを構成するために必要な情報がOracleから返されます。

必要なIAMポリシー

Oracle Cloud Infrastructureを使用するには、管理者が、テナンシ管理者がポリシーでセキュリティ・アクセス権を付与したグループのメンバーである必要があります。コンソールまたは(SDK、CLIまたはその他のツールを使用した) REST APIのどれを使用しているかにかかわらず、このアクセス権が必要です。権限がない、または認可されていないというメッセージが表示された場合は、テナンシ管理者に、どのタイプのアクセス権があり、どのコンパートメントでアクセスが作業する必要があるかを管理者に確認してください。

管理者グループのメンバーであれば、シナリオBを実装するために必要なアクセス権はすでに持っています。そうでない場合は、ネットワーキングへのアクセス権が必要であり、インスタンスを起動できる必要もあります。ネットワーキングに対するIAMポリシーを参照してください。

シナリオBの設定

コンソールでの設定は簡単です。または、Oracle Cloud Infrastructure APIを使用して、各操作を自分で実行することもできます。

重要

必要なネットワーキング・コンポーネントを設定するため、このプロセスのほとんどに、短い期間のコンソールまたはAPI (選択したもの)の作業が含まれます。しかし、中には、組織内のネットワーク管理者がコンポーネントの設定時にユーザーに返された情報を使用してVPNのユーザー側でCPEを構成する必要のある、重要なステップもあります。したがって、このプロセスを1回の短いセッションで完了することはできません。ネットワーク管理者が構成を完了するまで中断するように計画し、その後戻って、VPNを介してインスタンスと通信できるか確認します。

コンソールの使用

タスク1: VCNおよびサブネットの設定
  1. VCNを作成します:

    1. ナビゲーション・メニューを開き、「ネットワーキング」「仮想クラウド・ネットワーク」の順に選択します。
    2. 「リスト範囲」で、in.Theページの更新を操作する権限があるコンパートメントを選択し、そのコンパートメント内のリソースのみを表示します。使用するコンパートメントが不明な場合は、管理者に問い合せてください。詳細は、アクセス制御を参照してください。
    3. 「仮想クラウド・ネットワークの作成」をクリックします。
    4. 次を入力します:

      • 名前: VCNのわかりやすい名前。必ずしも一意である必要はありませんが、後でコンソールで変更することはできません(ただし、APIで変更できます)。機密情報の入力は避けてください。
      • コンパートメントで作成: そのままにします。
      • CIDRブロック: VCNの1つ以上の重複しないCIDRブロック。例: 172.16.0.0/16。CIDRブロックは後で追加または削除できます。許容されるVCNのサイズとアドレス範囲を参照してください。参照用として、ここにCIDR計算機があります。
      • IPv6アドレス割当ての有効化: IPv6アドレス指定は、すべての商用リージョンおよび政府リージョンでサポートされています。詳細は、IPv6アドレスを参照してください。
      • Use DNS Hostnames in this VCN: This option is required to assign DNS hostnames to hosts in the VCN, and required if you plan to use the VCN's default DNS feature (called the Internet and VCN Resolver).このオプションを選択した場合、VCNのDNSラベルを指定することも、コンソールで生成することもできます。ダイアログ・ボックスには、VCNの対応するDNSドメイン名(<VCN_DNS_label>.oraclevcn.com)が自動的に表示されます。詳細は、Virtual Cloud NetworkのDNSを参照してください。
      • タグ: そのままにします。必要に応じて後でタグを追加できます。詳細は、リソース・タグを参照してください。
    5. 「仮想クラウド・ネットワークの作成」をクリックします。

      これにより、VCNが作成され、選択したコンパートメントの「仮想クラウド・ネットワーク」ページに表示されます。

  2. リージョナル・プライベート・サブネットを作成します:

    1. VCNを表示したまま、「サブネットの作成」をクリックします。
    2. 次を入力します:

      • 名前: サブネットのわかりやすい名前(リージョナル・プライベート・サブネットなど)。必ずしも一意である必要はありませんが、後でコンソールで変更することはできません(ただし、APIで変更できます)。機密情報の入力は避けてください。
      • リージョンまたは可用性ドメイン固有: 「リージョナル」(推奨)を選択します。これは、サブネットがリージョン内のすべての可用性ドメインにわたることを意味します。後でインスタンスを起動するときに、リージョン内の任意の可用性ドメインにそれを作成できます。詳細は、VCNとサブネットの概要を参照してください。
      • CIDRブロック: VCNのCIDRブロック内の単一の連続CIDRブロック。例: 172.16.0.0/24。この値は後で変更できません。参照用として、ここにCIDR計算機があります。
      • IPv6アドレス割当ての有効化:このオプションは、VCNがUS Government Cloud内にある場合にのみ使用できます。詳細は、IPv6アドレスを参照してください。
      • ルート表: デフォルト・ルート表を選択します。
      • プライベートまたはパブリック・サブネット: 「プライベート・サブネット」を選択します。これは、サブネット内のインスタンスがパブリックIPアドレスを持てないことを意味します。詳細は、インターネットへのアクセスを参照してください。
      • このサブネットでDNSホスト名の使用:このオプションは、作成中に、VCNにDNSラベルが指定されている場合にのみ使用できます。このオプションは、サブネットのホストにDNSホスト名を割り当てるために必要です。また、VCNのデフォルトのDNS機能(Internet and VCN Resolverと呼ばれます)を使用する予定の場合にも必須です。チェック・ボックスを選択した場合、サブネットのDNSラベルを指定するか、コンソールで自動的に生成できます。ダイアログ・ボックスには、サブネットの対応するDNSドメイン名(FQDN)が自動的に表示されます。詳細は、Virtual Cloud NetworkのDNSを参照してください。
      • DHCPオプション: DHCPオプションのデフォルト・セットを選択します。
      • セキュリティ・リスト: デフォルト・セキュリティ・リストを選択します。
      • タグ: そのままにします。必要に応じて後でタグを追加できます。詳細は、リソース・タグを参照してください。
    3. 「サブネットの作成」をクリックします。

      サブネットが作成され、「サブネット」ページに表示されます。

  3. VCN内のインスタンスに必要となる接続タイプを許可するルールを含めて、デフォルトのセキュリティ・リストを更新します:

    1. ページにVCNのサブネットが表示されている状態で「セキュリティ・リスト」をクリックし、デフォルト・セキュリティ・リストをクリックします。
    2. 「リソース」で、使用するルールのタイプに応じて、「イングレス・ルール」または「エグレス・ルール」のいずれかをクリックします。「イングレス・ルールの追加」または「エグレス・ルールの追加」をクリックして、1つずつルールを追加できます。
    3. 目的のルールを追加します。デフォルト・セキュリティ・リストの既存のデフォルト・ルールに追加するルールとして推奨されるルールは次のとおりです:

      例: イングレスHTTPアクセス
      • タイプ: イングレス
      • ステートレス: 選択解除(これはステートフル・ルールです)
      • ソース・タイプ: CIDR
      • ソースCIDR: 0.0.0.0/0
      • IPプロトコル: TCP
      • ソース・ポート範囲: すべて
      • 宛先ポート範囲: 80
      • 説明: ルールのオプションの説明。
      例: イングレスHTTPSアクセス
      • タイプ: イングレス
      • ステートレス: 選択解除(これはステートフル・ルールです)
      • ソース・タイプ: CIDR
      • ソースCIDR: 0.0.0.0/0
      • IPプロトコル: TCP
      • ソース・ポート範囲: すべて
      • 宛先ポート範囲: 443
      • 説明: ルールのオプションの説明。
      例: Oracleデータベースに対するイングレスSQL*Netアクセス
      • タイプ: イングレス
      • ステートレス: 選択解除(これはステートフル・ルールです)
      • ソース・タイプ: CIDR
      • ソースCIDR: 0.0.0.0/0
      • IPプロトコル: TCP
      • ソース・ポート範囲: すべて
      • 宛先ポート範囲: 1521
      • 説明: ルールのオプションの説明。
      例: Windowsインスタンスに必要なイングレスRDPアクセス
      • タイプ: イングレス
      • ステートレス: 選択解除(これはステートフル・ルールです)
      • ソース・タイプ: CIDR
      • ソースCIDR: 0.0.0.0/0
      • IPプロトコル: TCP
      • ソース・ポート範囲: すべて
      • 宛先ポート範囲: 3389
      • 説明: ルールのオプションの説明。
ヒント

セキュリティを強化するために、VCNおよびオンプレミス・ネットワーク内からのトラフィックのみを許可するように、すべてのステートレス・イングレス・ルールを変更することもできます。1つはVCNのCIDRをソースとして、もう1つはオンプレミス・ネットワークのCIDRをソースとして、それぞれに個別のルールを作成します。

本番VCNでは、通常、各サブネットに1つ以上のカスタム・セキュリティ・リストを設定します。必要に応じて、異なるセキュリティ・リストを使用するようにサブネットを編集できます。デフォルト・セキュリティ・リストを使用しない場合は、カスタム・セキュリティ・リストに複製するデフォルト・ルールを慎重に評価した後にのみ行います。例: デフォルト・セキュリティ・リストにあるデフォルトのICMPルールは、接続メッセージを受信するために重要です。

タスク2: 別々の可用性ドメインへのインスタンスの作成

これで、サブネット内に1つ以上のインスタンスを作成できるようになります(インスタンスの起動を参照)。このシナリオの図は、2つの異なる可用性ドメイン内のインスタンスを示しています。インスタンスを作成するときに、AD、使用するVCNとサブネット、およびその他の特性を選択します。

ただし、VCNをオンプレミス・ネットワークに接続するゲートウェイがないため、インスタンスとの通信はまだできません。次の手順では、サイト間VPNを設定してその通信を有効にします。

タスク3: VCNへのサイト間VPNの追加
  1. 顧客構内機器(CPE)オブジェクトを作成します:

    1. ナビゲーション・メニューを開き、「ネットワーキング」を選択します。「顧客接続」で、「顧客構内機器」を選択します。
    2. 「顧客構内機器の作成」をクリックします。
    3. 次を入力します:
      • コンパートメントに作成: デフォルト値のままにします(現在作業中のコンパートメント)。
      • 名前: 顧客構内機器オブジェクトのわかりやすい名前。必ずしも一意である必要はありませんが、後でコンソールで変更することはできません(ただし、APIで変更できます)。機密情報の入力は避けてください。
      • IPアドレス: VPNのユーザー側にあるCPEのパブリックIPアドレス(前提条件を参照)。
    4. 「作成」をクリックします。

    CPEオブジェクトは、短い間「プロビジョニング中」状態になります。

  2. Dynamic Routing Gateway (DRG)を作成します:

    1. ナビゲーション・メニューを開き、「ネットワーキング」を選択します。「顧客接続」で、「動的ルーティング・ゲートウェイ」を選択します。
    2. 「動的ルーティング・ゲートウェイの作成」をクリックします。
    3. コンパートメントに作成: デフォルト値のままにします(現在作業中のコンパートメント)。
    4. DRGのわかりやすい名前を入力します。必ずしも一意である必要はありませんが、後でコンソールで変更することはできません(ただし、APIで変更できます)。機密情報の入力は避けてください。
    5. 「作成」をクリックします。

    DRGは、短い間「プロビジョニング中」状態になります。DRGが完全にプロビジョニングされるまで待機してから続行します。

  3. DRGをVCNにアタッチします:

    1. 作成したDRGをクリックします。
    2. 「リソース」で、「仮想クラウド・ネットワーク」をクリックします。
    3. 「仮想クラウド・ネットワークへのアタッチ」をクリックします。
    4. VCNを選択します。拡張オプションのセクションは無視してください。これは、転送ルーティングという拡張ルーティング・シナリオで使用するもので、ここでは関係ありません。
    5. 「アタッチ」をクリックします。

    短い間、アタッチメントは「アタッチ中」状態になります。このプロセスが終了するまで待機します。

  4. (まだルールがない)デフォルト・ルート表を更新します:

    1. ナビゲーション・メニューを開き、「ネットワーキング」「仮想クラウド・ネットワーク」の順に選択します。
    2. VCNをクリックします。
    3. 「リソース」「ルート表」をクリックし、デフォルト・ルート表をクリックします。
    4. 「ルート・ルールの追加」をクリックします。
    5. 次を入力します:

      • ターゲット・タイプ: 動的ルーティング・ゲートウェイ。VCNのアタッチされているDRGがターゲットとして自動的に選択されるため、ターゲットを自分で指定する必要はありません。
      • 宛先CIDRブロック: 0.0.0.0/0 (ルート表内の他のルールでカバーされないVCN外部のすべてのトラフィックが、このルールで指定されたターゲットに送信されることを意味します)。
      • 説明: ルールのオプションの説明。
    6. 「ルート・ルールの追加」をクリックします。

      これで、VCNのデフォルト・ルート表により、アウトバウンド・トラフィックがDRGを経由して最終的にはオンプレミス・ネットワークに送信されるようになります。

  5. IPsec接続を作成します:

    1. ナビゲーション・メニューを開き、「ネットワーキング」を選択します。「顧客接続」で、「サイト間VPN」を選択します。
    2. 「IPSec接続の作成」をクリックします。
    3. 次を入力します:

      • コンパートメントに作成: デフォルト値のままにします(現在作業中のコンパートメント)。
      • 名前: IPSec接続のわかりやすい名前を入力します。一意である必要はありません。機密情報の入力は避けてください。
      • 顧客構内機器コンパートメント: そのままにします(VCNのコンパートメント)。
      • 顧客構内機器: 以前に作成したCPEオブジェクトを選択します。
      • 動的ルーティング・ゲートウェイ・コンパートメント: そのままにします(VCNのコンパートメント)。
      • 動的ルーティング・ゲートウェイ: 以前に作成したDRGを選択します。
      • 静的ルートCIDR: 少なくとも1つの静的ルートCIDRを入力します(前提条件を参照)。別のルートを追加する必要がある場合は、「静的ルートの追加」をクリックします。最大10の静的ルートを入力でき、後から静的ルートを変更することもできます。
    4. 「拡張オプションの表示」をクリックし、オプションで次の項目を指定します:
      • CPE IKE識別子: Oracleでは、デフォルトでCPEのパブリックIPアドレスが使用されます。ただし、CPEがNATデバイスの背後にある場合は、別の値の入力が必要になることもあります。ここで新しい値を入力することも、後で値を変更することもできます。
      • 「トンネル1」および「トンネル2」: そのままにします。後でVPNトンネルに対して静的ルーティングではなくBGP動的ルーティングを使用する場合は、静的ルーティングからBGP動的ルーティングへの変更を参照してください。
      • タグ: そのままにします。タグは後から追加できます。詳細は、リソース・タグを参照してください。
    5. 「IPSec接続の作成」をクリックします。

      IPSec接続が作成され、ページに表示されます。接続は、短い間「プロビジョニング中」状態になります。

      表示されるトンネル情報には、VPNヘッドエンドのIPアドレスと、トンネルのIPSecステータスが含まれます(可能な値は、「稼働中」、「停止中」および「メンテナンスのための停止」です)。この時点でのステータスは「停止中」です。トンネルの共有シークレットを表示するには、「アクション」メニュー(3つのドット)をクリックし、「共有シークレットの表示」をクリックします。

    6. 各トンネルのOracle VPN IPアドレスと共有シークレットをコピーし、オンプレミス・ルーターを構成するネットワーク・エンジニアと共有します。

      詳細は、CPE構成を参照してください。このトンネル情報は、コンソールのこの場所でいつでも確認できます。

これで、サイト間VPNに必要なすべてのコンポーネントを作成しました。次に、ネットワーク・トラフィックがオンプレミス・ネットワークとVCNの間を流れるようになるには、ネットワーク管理者がCPEデバイスを構成する必要があります。

タスク4: CPEの構成

これらの手順は、ネットワーク管理者が行うものです。

  1. VPN接続の設定時にOracleにより提供されたトンネル構成情報があることを確認します。タスク3: VCNへのサイト間VPNの追加を参照してください。
  2. CPE構成の情報に基づいて、CPEを構成します。

インスタンスがサブネット内にすでに存在する場合は、オンプレミス・ネットワークからインスタンスに接続して、IPSec接続が稼働中であることを確認できます。

APIの使用

APIの使用およびリクエストの署名の詳細は、REST APIのドキュメントおよびセキュリティ資格証明を参照してください。SDKの詳細は、SDKおよびCLIを参照してください。

次の操作を使用します:

  1. CreateVcn: インスタンスにホスト名を指定する場合は、常にVCNのDNSラベルを含めます(Virtual Cloud NetworkのDNSを参照)。
  2. CreateSubnet: リージョナル・プライベート・サブネットを1つ作成します。インスタンスにホスト名を付ける場合は、サブネットのDNSラベルを含めてください。デフォルト・ルート表、デフォルト・セキュリティ・リストおよびデフォルトのDHCPオプション・セットを使用します。
  3. CreateDrg: 動的ルーティング・ゲートウェイ(DRG)を作成します
  4. CreateDrgAttachment: DRGをVCNにアタッチします。
  5. CreateCpe: VPNのユーザー側にあるCPEのパブリックIPアドレスを入力します(前提条件を参照)。
  6. CreateIPSecConnection: オンプレミス・ネットワークの静的ルートを入力します(前提条件を参照)。このコマンドでは、ネットワーク管理者がCPEを構成するために必要とする構成情報が返されます。後からその情報が必要になった場合は、GetIPSecConnectionDeviceConfigを使用して取得できます。構成の詳細は、CPE構成を参照してください。
  7. UpdateRouteTable: VPN経由の通信を有効にするには、このルート(宛先を0.0.0.0/0、宛先ターゲットを以前に作成したDRGに設定したルート・ルール)を含めてデフォルト・ルート表を更新します。
  8. まず、GetSecurityListをコールしてデフォルト・セキュリティ・リストを取得してから、UpdateSecurityListをコールして、VCN内のインスタンスが必要とする接続のタイプに対してルールを追加します。UpdateSecurityListはルール・セット全体を上書きすることに注意してください。推奨される追加のルールは次のとおりです:

    • ステートフル・イングレス: ソース・タイプ = CIDR、ソースCIDR = 0.0.0.0/0、プロトコル = TCP、ソース・ポート = すべて、宛先ポート = 80 (HTTP用)。
    • ステートフル・イングレス: ソース・タイプ = CIDR、ソースCIDR = 0.0.0.0/0、プロトコル = TCP、ソース・ポート = すべて、宛先ポート = 443 (HTTPS用)。
    • ステートフル・イングレス: ソース・タイプ = CIDR、ソースCIDR = 0.0.0.0/0、プロトコル = TCP、ソース・ポート = すべて、宛先ポート = 1521 (OracleデータベースへのSQL*Netアクセス用)。
    • ステートフル・イングレス: ソース・タイプ = CIDR、ソースCIDR = 0.0.0.0/0、プロトコル = TCP、ソース・ポート = すべて、宛先ポート = 3389 (RDP用。Windowsインスタンスを使用する場合のみ必要)。
  9. LaunchInstance: サブネット内に1つ以上のインスタンスを作成します。このシナリオの図は、2つの異なる可用性ドメイン内のインスタンスを示しています。インスタンスを作成するときに、AD、使用するVCNとサブネット、およびその他の特性を選択します。詳細は、インスタンスの作成を参照してください。
ヒント

セキュリティを強化するために、VCNおよびオンプレミス・ネットワーク内からのトラフィックのみを許可するように、すべてのステートレス・イングレス・ルールを変更することもできます。1つはVCNのCIDRをソースとして、もう1つはオンプレミス・ネットワークのCIDRをソースとして、それぞれに個別のルールを作成します。
重要

サブネット内にインスタンスを作成できますが、ネットワーク管理者がCPEを構成するまでは、オンプレミス・ネットワークからインスタンスと通信することはできません(CPE構成を参照)。その後は、サイト間VPNが稼働中になります。GetIPSecConnectionDeviceStatusを使用することで、そのステータスを確認できます。また、オンプレミス・ネットワークからインスタンスに接続して、サイト間VPNが稼働中か確認することもできます。