IBM Cloud Docs
プライベート・ネットワークからのインターネット・アクセスのための NAT の構成

プライベート・ネットワークからのインターネット・アクセスのための NAT の構成

このチュートリアルでは、クラシック・インフラストラクチャー の使用方法について説明しています。 ほとんどのワークロードは、IBM Cloud® Virtual Private Cloud リソースを使用して実装できます。 IBM Cloud VPC を使用すると、共有のパブリック・クラウド・インフラストラクチャー上に、プライベート・クラウドのような独自のコンピューティング環境を作成できます。 VPC は、企業が、他のすべてのパブリック・クラウドのテナントから論理的に切り離された仮想ネットワークを定義および制御して、パブリック・クラウド上に安全でプライベートな場所を作れるようにするものです。 具体的には、仮想サーバー・インスタンスセキュリティー・グループネットワーク ACL、およびパブリック・ゲートウェイを定義できます。

このチュートリアルでは、費用が発生する場合があります。 コスト見積もりツールを使用して、予測使用量に基づいてコスト見積もりを生成します。

現在の Web ベースの IT アプリケーションおよびサービスの世界では、分離した状態で存在するアプリケーションは稀です。 開発者はインターネット上のサービスへのアクセスを想定するようになり、そのサービスはオープン・ソースのアプリケーション・コードやアップデートである場合や、REST API 経由でアプリケーション機能を提供する「サード・パーティー」サービスである場合があります。 ネットワーク・アドレス変換 (NAT) マスカレードは、プライベート・ネットワークからインターネットでホストされたサービスへのアクセスを保護するために、一般的に使用されるアプローチです。 NAT マスカレードでは、プライベート IP アドレスをパブリック・ビューからシールディングするために、プライベート IP アドレスは多対 1 の関係でアウトバウンド・パブリック・インターフェースの IP アドレスに変換されます。

このチュートリアルでは、IBM Cloud プライベート・ネットワーク上でセキュア・サブネットに接続するために、ネットワーク・アドレス変換 (NAT) マスカレードを Virtual Router Appliance (VRA) 上でセットアップする方法を示します。 これは、セキュアなプライベート・ネットワークを使用してワークロードを分離するのチュートリアルに基づいてソース NAT (SNAT) 構成を追加し、ソース・アドレスが難読化され、ファイアウォール・ルールを使用してアウトバウンド・トラフィックが保護されるようにします。 より複雑な NAT 構成は、VRA 補足資料で参照できます。

目標

  • 仮想ルーター・アプライアンス (VRA) 上でのソース・ネットワーク・アドレス変換 (SNAT) のセットアップ
  • インターネット・アクセスのためのファイアウォール・ルールのセットアップ

" caption-side="bottom"}*の{: caption="図

  1. 必要なインターネット・サービスを文書化します。
  2. NAT をセットアップします。
  3. インターネット・ファイアウォール・ゾーンとルールを作成します。

開始前に

このチュートリアルでは、セキュア・プライベート・ネットワークを使用してワークロードを分離するチュートリアルによって作成されたセキュア・プライベート・ネットワーク・エンクロージャー内のホストが、パブリック・インターネットのサービスにアクセスできるようにします。 そのチュートリアルを先に完了する必要があります。

インターネット・サービスの文書化

最初のステップとして、パブリック・インターネット上でアクセスするサービスを識別して、アウトバウンド・トラフィックおよびインターネットからの対応するインバウンド・トラフィックを有効にする必要があるポートを文書化します。 このポートのリストは、後のステップで、ファイアウォール・ルールのために必要になります。

この例では http と https の各ポートのみを有効にします。これらによって要件の大部分に対処できるためです。 DNS サービスと NTP サービスは、IBM Cloud プライベート・ネットワークから提供されます。 これらと、SMTP (ポート 25) や MySQL (ポート 3306) などの他のサービスが要求される場合は、追加のファイアウォール・ルールが必要になります。 以下の 2 つの基本的なポート・ルールがあります。

  • ポート 80 (http)
  • ポート 443 (https)

許可されるソース・アドレスのリストを定義する機能がサード・パーティーのサービスでサポートされるかどうかを確認します。 サポートされている場合は、サード・パーティーのサービスでサービスへのアクセス制限を構成するために、VRA のパブリック IP アドレスが必要になります。

インターネットへの NAT マスカレード

こちらの指示に従って、NAT マスカレードを使用して APP ゾーンのホストの外部インターネット・アクセスを構成します。

  1. SSH で VRA に接続し、[edit] (config) モードに入ります。

    SSH vyatta@<VRA Private IP Address>
    configure
    
  2. VRA プロビジョニング・チュートリアルで APP ゾーンのサブネット/VLAN に設定したのと同じ / を指定して、VRA で SNAT ルールを作成します。

    set service nat source rule 1000 description 'pass traffic to the Internet'
    set service nat source rule 1000 outbound-interface 'dp0bond1'
    set service nat source rule 1000 source address <Subnet Gateway IP>/<CIDR>
    set service nat source rule 1000 translation address masquerade
    commit
    

ファイアウォールの作成

  1. APP-TO-OUTSIDE のファイアウォール・ルールの作成

    set security firewall name APP-TO-OUTSIDE default-action drop
    set security firewall name APP-TO-OUTSIDE description 'APP traffic to the Internet'
    set security firewall name APP-TO-OUTSIDE default-log
    
    set security firewall name APP-TO-OUTSIDE rule 90 protocol tcp
    set security firewall name APP-TO-OUTSIDE rule 90 action accept
    set security firewall name APP-TO-OUTSIDE rule 90 destination port 80
    
    set security firewall name APP-TO-OUTSIDE rule 100 protocol tcp
    set security firewall name APP-TO-OUTSIDE rule 100 action accept
    set security firewall name APP-TO-OUTSIDE rule 100 destination port 443
    
    set security firewall name APP-TO-OUTSIDE rule 200 protocol icmp
    set security firewall name APP-TO-OUTSIDE rule 200 icmp type 8
    set security firewall name APP-TO-OUTSIDE rule 200 action accept
    commit
    
  2. ファイアウォール・ルール OUTSIDE-TO-APP の作成

    set security firewall name OUTSIDE-TO-APP default-action drop
    set security firewall name OUTSIDE-TO-APP description 'Internet traffic to APP'
    set security firewall name OUTSIDE-TO-APP default-log
    
    set security firewall name OUTSIDE-TO-APP rule 100 protocol tcp
    set security firewall name OUTSIDE-TO-APP rule 100 action accept
    set security firewall name OUTSIDE-TO-APP rule 100 destination port 443
    
    set security firewall name OUTSIDE-TO-APP rule 90 protocol tcp
    set security firewall name OUTSIDE-TO-APP rule 90 action accept
    set security firewall name OUTSIDE-TO-APP rule 90 destination port 80
    
    set security firewall name OUTSIDE-TO-APP rule 200 protocol icmp
    set security firewall name OUTSIDE-TO-APP rule 200 icmp type 8
    set security firewall name OUTSIDE-TO-APP rule 200 action accept
    commit
    

ゾーンの作成とルールの適用

  1. 外部インターネットへのアクセスを制御するために、OUTSIDE というゾーンを作成します。

    set security zone-policy zone OUTSIDE default-action drop
    set security zone-policy zone OUTSIDE interface dp0bond1
    set security zone-policy zone OUTSIDE description 'External Internet'
    
  2. インターネットとの間のトラフィックを制御するために、ファイアウォールを割り当てます。

    set security zone-policy zone APP to OUTSIDE firewall APP-TO-OUTSIDE
    set security zone-policy zone OUTSIDE to APP firewall OUTSIDE-TO-APP
    commit
    
  3. APP ゾーンの VSI がインターネット上のサービスにアクセスできるようになったことを確認します。 SSH を使用してローカル VSI にログインします。

    ssh root@<VSI Private IP>
    

    ping と curl を使用して、インターネット上のサイトに対する icmp アクセスと tcp アクセスを確認します。

    ping 8.8.8.8
    curl www.google.com
    

リソースを削除する

このチュートリアルで作成したリソースを削除する手順は以下のとおりです。

VRA は月額料金プランで提供されます。 取り消しても払い戻しはありません。 取り消しは、この VRA が翌月に再び必要とならない場合にのみ行うことをお勧めします。 デュアル VRA 高可用性クラスターが必要な場合は、この単一の VRA を「ゲートウェイの詳細 (Gateway Details)」ページでアップグレードできます。

  1. 仮想サーバーまたはベアメタル・サーバーをすべて取り消します
  2. VRA を取り消します
  3. VLAN をすべて取り消します

関連コンテンツ