このページは機械翻訳したものです。

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

このトピックでは、単純な複数層設定の例であるシナリオCの設定方法について説明します。これは、Virtual Cloud Network (VCN)と、パブリック・サーバー(Webサーバーなど)を保持するリージョンのパブリック・サブネットおよびプライベート・サーバー(データベース・サーバーなど)を保持するリージョンのプライベート・サブネットで構成されます。冗長性のために、サーバーはそれぞれの可用性ドメインに存在します。

VCNには、オンプレミス・ネットワークに接続するための動的ルーティング・ゲートウェイ(DRG)およびサイト間VPNがあります。パブリック・サブネット内のインスタンスは、インターネット・ゲートウェイ経由でインターネットに直接アクセスできます。Instances in the private subnet can initiate internet connections by way of a NAT gateway  (for example, to get software updates), but cannot receive inbound connections from the internet through that gateway.

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

ヒント

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

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

また、各サブネットには、そのサブネットのインスタンスのニーズに固有のルールを含む独自のカスタム・セキュリティ・リストとカスタム・ルート表もあります。このシナリオでは、VCNのデフォルト・ルート表(最初は常に空)は使用しません。

次の図を参照してください。

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

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

前提条件

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

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

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

必要なIAMポリシー

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

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

シナリオCの設定

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

重要

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

コンソールの使用

APIの使用

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

次の操作を使用します:

  • CreateVcn: VCNでVCNリゾルバを使用する場合は、常にDNSラベルを含めてください(仮想クラウド・ネットワークのDNSを参照)。
  • CreateInternetGateway
  • CreateNatGateway
  • CreateRouteTable: これをコールして、パブリック・サブネット・ルート表を作成します。インターネット・ゲートウェイ経由での通信を有効にするには、宛先を0.0.0.0/0、宛先ターゲットを以前に作成したインターネット・ゲートウェイに設定したルート・ルールを追加します。
  • CreateRouteTable: これをもう一度コールして、プライベート・サブネット・ルート表を作成します。NATゲートウェイを経由する通信を有効にするには、宛先を0.0.0.0/0、宛先ターゲットを以前に作成したNATゲートウェイに設定したルート・ルールを追加します。
  • まず、GetSecurityListをコールしてデフォルト・セキュリティ・リストを取得してから、UpdateSecurityListをコールします:

    • 0.0.0.0/0ではなくオンプレミス・ネットワークのCIDRをソースCIDRとして使用するように、既存のステートフル・イングレス・ルールを変更します。
    • Windowsインスタンスの起動を計画している場合は、ソース・タイプ = CIDR、ソースCIDR = TCP上のオンプレミス・ネットワーク、ソース・ポート = すべて、宛先ポート = 3389 (RDP用)と設定したステートフル・イングレス・ルールを追加します。
  • CreateSecurityList: これをコールして、次のルールを含むパブリック・サブネット・セキュリティ・リストを作成します:

    • ステートフル・イングレス: ソース・タイプ = CIDR、ソース = TCP上の0.0.0.0/0、ソース・ポート = すべて、宛先ポート = 80 (HTTP)
    • ステートフル・イングレス: ソース・タイプ = CIDR、ソース = TCP上の0.0.0.0/0、ソース・ポート = すべて、宛先ポート = 443 (HTTPS)
    • ステートフル・エグレス: 宛先タイプ = CIDR、宛先 = TCP上のプライベート・サブネットのCIDRブロック、ソース・ポート = すべて、宛先ポート = 1521 (Oracleデータベース用)
  • CreateSecurityList: これをもう一度コールして、次のルールを含むプライベート・サブネット・セキュリティ・リストを作成します:

    • ステートフル・イングレス: ソース・タイプ = CIDR、ソース = TCP上のパブリック・サブネットのCIDRブロック、ソース・ポート = すべて、宛先ポート = 1521 (Oracleデータベース用)
    • ステートフル・イングレス: ソース・タイプ = CIDR、ソース = TCP上のプライベート・サブネットのCIDRブロック、ソース・ポート = すべて、宛先ポート = 1521 (Oracleデータベース用)
    • ステートフル・エグレス: 宛先タイプ = CIDR、宛先 = TCP上のプライベート・サブネットのCIDRブロック、ソース・ポート = すべて、宛先ポート = 1521 (Oracleデータベース用)
  • CreateSubnet: これをコールして、リージョナル・パブリック・サブネットを作成します。VCNリゾルバでサブネット内のVNICのホスト名を解決する場合は、サブネットのDNSラベルを含めます。以前に作成したパブリック・サブネット・ルート表を使用します。デフォルト・セキュリティ・リストと、以前に作成したパブリック・サブネット・セキュリティ・リストの両方を使用します。DHCPオプションのデフォルト・セットを使用します。
  • CreateSubnet: これをもう一度コールして、リージョナル・プライベート・サブネットを作成します。VCNリゾルバでサブネット内のVNICのホスト名を解決する場合は、サブネットのDNSラベルを含めます。以前に作成したプライベート・サブネット・ルート表を使用します。デフォルト・セキュリティ・リストと、以前に作成したプライベート・サブネット・セキュリティ・リストの両方を使用します。DHCPオプションのデフォルト・セットを使用します。
  • CreateDrg: 動的ルーティング・ゲートウェイ(DRG)を作成します。
  • CreateDrgAttachment: DRGをVCNにアタッチします。
  • CreateCpe: ここには、VPNのユーザー側にあるルーターのIPアドレスを入力します(前提条件を参照)。
  • CreateIPSecConnection: ここには、オンプレミス・ネットワークの静的ルートを入力します(前提条件を参照)。ネットワーク管理者がルーターを構成するために必要とする構成情報が返されます。後からその情報が必要になった場合は、GetIPSecConnectionDeviceConfigを使用して取得できます。構成の詳細は、CPE構成を参照してください。
  • まず、GetRouteTableをコールして、プライベート・サブネット・ルート表を取得します。次に、UpdateRouteTableをコールして、宛先 = オンプレミス・ネットワークCIDR (この例では10.0.0.0/16)、宛先ターゲット = 以前に作成したDRGとして設定したルート・ルールを追加します。
  • LaunchInstance: 各サブネット内の1つ以上のインスタンスを起動します。デフォルトでは、パブリック・サブネット内のインスタンスにパブリックIPアドレスが割り当てられます。詳細は、インスタンスの作成を参照してください。

これで、オンプレミス・ネットワークからインターネット・ゲートウェイを介してパブリック・サブネット内のインスタンスと通信できるようになります。

重要

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