はじめのProfessional Cloud Network Engineer認定取得講座⑳ファイアウォール ルールとVPC ネットワーク ピアリングの実装方法について説明します!<画面付き>

クラウド

今回のブログは、Professional Cloud Network Engineer認定取得講座20回目です!今回は、「ファイアウォール ルールとVPC ネットワーク ピアリングの実装方法について説明します!」です!

今回から、Professional Cloud Network Engineer認定試験に不合格したことを受け、実際のGoogle Cloudのネットワークに関する設定方法を説明していきます。前回のブログでも書いたように、認定試験に合格できなかった原因の一つは、机上の知識だけで、実装方法について、あまり重要視していなかったことだと考えています。

そこで、今後は、Google Cloudのネットワークに関する実装方法について、実際のコンソール画面を使用して説明していきます。実装方法を学ぶことで、知識を深め、認定試験に合格するための準備を進めていきたいと思います。

是非、最後までご覧いただけると嬉しいです。

VPC ネットワーク ピアリングの概要

VPC ネットワーク ピアリングの概要は、下記のブログで説明しています。そちらをご覧ください。

VPC ネットワークピアリング概要

構築内容

今回は、2つのVPCを作成します。その後、各VPCをピアリングして、両方のVPC間で通信できるようにします。次に、各VPCにVMをデプロイして、ファイアウォール ルールを作成します。片方のVMから、もう片方のVMにpingをして、疎通できるかを確認します。

検証イメージ

VPC ネットワーク ピアリング実装方法

VPC ネットワーク ピアリング実装方法は、全部で5ステップで説明します。

  1. VPCとサブネットを作成
  2. VPC ネットワークピアリングを作成
  3. VM インスタンスをデプロイ
  4. ファイアウォール ルールを作成
  5. pingで疎通確認

1つずつ詳しく説明します。

1. VPCとサブネットを作成

vpc-aの作成

まずは、VPC を作成します。

Google Cloudのコンソールで、「VPC ネットワーク」を開き、画面上部の「VPC ネットワークを作成」を選択します。

下記の通り設定します。

  • 名前:vpc-a(任意)

その他の設定は、初期設定のまま進めます。各項目の説明は、?マークで確認することができます。

サブネットは、下記の通り設定します。

  • 名前:subnet-a(任意)
  • リージョン:us-central1
  • IPv4 範囲:10.128.1.0/24

今回は、Compute EngineでVMをデプロイするにあたり、リージョンをus-central1に選択しました。us-central1、us-west1、us-east1は、無料枠で使用できるためです。

Google Cloud の無料プログラム

IPv4 範囲については、us-central1のサブネット範囲が「10.128.0.0/20」のため、「10.128.1.0/24」を選択しています。

サブネット  |  VPC  |  Google Cloud

使用できるIPv4の範囲は、下記サイト等を使用して選択してください。

https://note.cman.jp/network/subnetmask.cgi

設定後、「完了」を選択します。

その他の設定については、初期設定のまま進めます。最後に、「作成」を選択します。

vpc-bの作成

vpc-aと同じようにvpc-bを作成します。「VPC ネットワークを作成」を選択します。

下記の通り設定します。

  • 名前:vpc-b(任意)

その他の設定は、初期設定のまま進めます。

サブネットは、下記の通り設定します。

  • 名前:subnet-b
  • リージョン:us-east1
  • IPv4 範囲:10.142.1.0/24

設定後、「完了」を選択します。

その他の設定については、初期設定のまま進めます。最後に、「作成」を選択します。

作成した VPC ネットワークは以下のとおりです。

以上で、VPCとサブネットの作成は終わりになります。VPC は、使用するリージョンに合わせて、サブネットを設定する必要があります。サブネットの範囲は、デプロイするリソースの数に合わせて選択してください。また、将来の拡張を考慮して、少し広めに選択することをおすすめします。

2. VPC ネットワークピアリングを作成

vpc-abの作成

次は、VPC ネットワークピアリングを作成します。

サイドバーから、「VPC ネットワークピアリング」を選択します。その後、画面中央の「接続を作成」を選択します。

「続行」を選択します。今回は、同一プロジェクト内のVPCをピアリングします。また、他のプロジェクトのVPCとピアリングすることも可能です。

下記の通り設定します。

  • 名前:vpc-ab(任意)
  • VPC ネットワーク:vpc-a
  • VPC ネットワークの名前:vpc-b

その他の設定は、初期設定のまま進めます。最後に、「作成」を選択します。

vpc-baの作成

vpc-abと同じようにvpc-baを作成します。画面上部の「ピアリング接続の作成」を選択します。

「続行」を選択します。

下記の通り設定します。

  • 名前:vpc-ba(任意)
  • VPC ネットワーク:vpc-b
  • VPC ネットワークの名前:vpc-a

その他の設定は、初期設定のまま進めます。最後に、「作成」を選択します。

作成直後はステータスが「無効」ですが、しばらく待ってからリロードすると、「有効」になります。

以上で、VPC ネットワーク ピアリングの作成は終わりになります。VPC ネットワーク ピアリングは、接続元と接続先の VPC ネットワークを設定することで作成できます。

3. VM インスタンスをデプロイ

vm-aを作成

次は、各VPCにCompute EngineでVM インスタンスをデプロイ(配置)します。

検索窓又はサイドバーから、Compute Engineを検索してVM インスタンスを開きます。画面上部又は中央の「インスタンスを作成」を選択します。

下記の通り設定します。

  • 名前:vm-a(任意)
  • リージョン:us-central 1(アイオワ)
  • マシンの構成:E2
  • プリセット:e2-micro

マシンの構成は、「E2」を選択します。理由は、無料枠で使用できるプリセットが「e2-micro」だからです。

その他の設定は、初期設定のまま下に移動します。

「詳細オプション」を展開します。

ネットワーキングを展開し、ネットワーク インターフェースの「default」を選択します。

下記の通り設定します。

  • ネットワーク:vpc-a
  • サブネットワーク:subnet-a IPv4 (10.128.1.0/24)
  • 外部 IPv4 アドレス:なし

最後に、「完了」を選択します。

最後に、「作成」を選択します。

vm-bを作成

vm-aと同じようにvm-bを作成します。画面上部の「インスタンスを作成」を選択します。

下記の通り設定します。

  • 名前:vm-b(任意)
  • リージョン:us-east 1(サウスカロライナ)
  • マシンの構成:E2
  • プリセット:e2-micro

その他の設定は、初期設定のまま、「詳細オプション」を展開します。

ネットワーキングを展開し、ネットワークインターフェースの「default」を選択します。

下記の通り設定します。

  • ネットワーク:vpc-b
  • サブネットワーク:subnet-a IPv4 (10.142.1.0/24)
  • 外部 IPv4 アドレス:なし

最後に、「完了」を選択します。

最後に、「作成」を選択します。

正常に作成されると、ステータスが緑色に変わります。

以上で、VM インスタンスの作成は終わりになります。

4. ファイアウォール ルールを作成

次にファイアウォール ルールを作成します。ファイアウォール ルールは、VPCに作成します。

VPC ネットワークを開きます。今回は、vm-bからvm-aに対して疎通確認をするので、vpc-aにファイアウォール ルールを設定します。そのため、「vpc-a」を開きます。

「ファイアウォール」タブを選択し、「ファイアウォール ルールを追加」を選択します。

下記の通り設定します。

  • 名前:fw-a(任意)
  • ネットワーク:vpc-a

今回のファイアウォール ルールは、vpc-a 内部のトラフィックに対するものなので、トラフィックの方向は「上り」になります。また、一致したときのアクションは、「許可」になります。

下記の通り設定します。

  • ターゲット:ネットワーク上のすべてのインスタンス
  • ソースフィルタ:IPv4範囲
  • 送信元IPv4 範囲:10.142.1.0/24
  • プロトコルとポート:すべて許可

セキュリティ向上のため、本番環境では、プロトコルとポートは、指定のポートにのみ制限してください。具体的には、TCPの80番ポート(HTTP)や443番ポート(HTTPS)などが挙げられます。

設定を行ったら最後に「作成」を選択します。

これで、ファイアウォール ルールの作成は、終わりになります。ファイアウォール ルールを作成する際は、トラフィックの方向に注意が必要です。上りは外部から内部へのトラフィック、下りは内部から外部へのトラフィックになります。

5. pingで疎通確認

最後に、vm-bからvm-aにpingを打って、疎通できるかを確認します。

再度、Compute Engineを開き、VM インスタンスを開きます。次に、vm-bの「SSH」を選択します。

承認を促す画面が表示されるので、「Authorize」を選択します。

すると、SSHに接続するには、「35.235.240.0/20」からのTCP上り(内向き)のトラフィックポートでSSHが使用する22番ポートを開けるように促されます。

理由は、IAP(Identity-Aware Proxy)がTCP転送を使用してVMに接続するためです。

IAPは、Google Cloudのセキュリティ機能の1つで、IAMと連携して、インターネットからVMにアクセスする際にユーザーの認証と承認を行います。IAPを使用すると、VMに外部IPアドレスを設定する必要がなく、安全にインターネットからアクセスできます。

IAPのTCP転送では、インターネット上のIAP サーバが、VMの内部IPアドレスに接続します。この接続は、IAP サーバのIPアドレスである「35.235.240.0/20」からの上り(内向き)トラフィックとして処理されます。

したがって、VMに外部IPアドレスを設定していない場合、IAPのTCP転送による接続を許可するために、ファイアウォール ルールで「35.235.240.0/20 からの上り(内向き)トラフィックを許可」する必要があります。

TCP 転送での IAP の使用  |  Identity-Aware Proxy  |  Google Cloud

ファイアウォール ルールを作成するため、再度VPC ネットワークを開きます。今回は、「vpc-b」を選択します。

「ファイアウォール」 タブを選択し、「ファイアウォール ルールを追加」を選択します。

下記の通り設定します。

  • 名前:vpc-b-ssh(任意)
  • ネットワーク:vpc-b

今回のファイアウォール ルールは、vpc-b 内部のトラフィックに対して作成します。したがって、トラフィックの方向は「上り」になります。また、一致したときのアクションは、「許可」になります。

下記の通り設定します。

  • ターゲット:ネットワーク上のすべてのインスタンス
  • ソースフィルタ:IPv4 範囲
  • 送信元 IPv4 範囲:35.235.240.0/20
  • プロトコルとポート:指定したプロトコルとポート
    • プロトコル:TCP
    • ポート:22

設定を行ったら最後に作成を選択します。

これで、vm-bにSSH接続するためのファイアウォール ルール作成は終わりです。

vm-bにSSH接続できるかを試します。Compute Engineを開き、vm-bのSSHを選択します。

承認を促す画面が表示されるので、「Authorize」を選択します。

ファイアウォール ルールの設定が正常であれば、ターミナルの画面が開きます。

最後に、vm-bからvm-aに対してpingを打って、疎通ができるかを確認します。コマンドは、以下になります

ping 10.128.1.2

vm-bからvm-aにpingを送信すると、帰ってきたパケットの情報が表示されます。上記コマンドの場合、永遠に続くので、control + Cで中断してください。

VPC ネットワークピアリングとファイアウォール ルールを設定することで、別々のサブネットにあるリソースを相互に接続することができます。複数の VPC を使用してサービスを構築する場合、これらの設定は必須です。今回のブログの内容を確認して、実際に試してみてください。

こちらの実装の場合、基本的に料金は発生しません。ただし、Compute Engine の VM は、起動中は料金が発生するため、検証後は必ず停止してください。また、VM の構成を無料枠の範囲から変更すると、料金が発生します。

まとめ

本日は下記3点について説明しました。

  1. VPC ネットワーク ピアリングの概要
  2. 構築内容
  3. VPC ネットワークピアリング実装方法

ファイアウォール ルールと VPC ネットワーク ピアリングの作成は、Google Cloud でシステム構築する際に欠かせない基本的な作業です。今回の方法を確認して、ぜひ実践してみてください。

これからも、Macのシステムエンジニアとして、日々、習得した知識や経験を発信していきますので、是非、ブックマーク登録してくれると嬉しいです!

それでは、次回のブログで!

タイトルとURLをコピーしました