Google CloudのCompute Engine(GCE)のVMインスタンスには「ネットワークタグ」という設定項目があります。これは、VPCファイアウォールルール(またはネットワークルート)を特定のVMインスタンスに限定するときに使います。そのような要件がなければ設定しなくてもOKです。以下、詳しく解説していきます。
疑問
GCEのVMインスタンスで、下の「ネットワークタグ」って何だ?
設定しないとまずいのだろうか?
説明
ネットワークタグは、VPCファイアウォールルール(またはネットワークルート)を、特定のVMインスタンスに限定するときに使います。下の図は、その具体例です。
この例では、VMインスタンス1は外部向けにタイムサービスを公開していて、インターネット側からNTPトラフィック(UDP ポート123の通信)を受け付ける必要があるとします。
大前提として、外部からの通信は基本的にファイアウォールにより拒否されます。そのためファイアウォールで「UDP ポート123の受信を許可する」ルールを追加します。しかし、他のVMインスタンス(VMインスタンス2)では許可する必要はなく、セキュリティ上不要な通信は通したくありません。
これを実現するために、ファイアウォールルールでは「 ntp-server タグが付いたインスタンスにのみ」と指定します。そしてVMインスタンス1にのみ、ネットワークタグ ntp-server を付加します。タグの名称は、任意の文字列を指定可能です。
こうすることでインターネット側からのUDP ポート123の通信は、VMインスタンス1では許可、VMインスタンス2では拒否することができます。ちなみにネットワークタグはこのような用途の他、ネットワークルートの制御でも使われますが、本記事では触れません。
このような外部からの受信許可が必要なければ、ネットワークタグを空欄としてOKです。後で必要になった場合、VMインスタンスを起動したままネットワークタグを追加できます。
使用例
前項の例(NTPトラフィック受信)を、実際にGoogle Cloudのコンソールで設定してみましょう。
必要なVMインスタンスやVPCネットワークは既に作成済みとします。ここでは先にファイアウォールルールを定義し、次にVMインスタンスに対してネットワークタグを設定します。この順番は逆でも問題ありません。
ファイアウォールルールの設定
Cloud Consoleのメニューで[VPCネットワーク]>[ファイアウォール]を開き、「ファイアウォールルールの作成」を選択します。
下の赤枠部分のように、「ターゲット」は「指定されたターゲットタグ」とし、「ターゲットタグ」にはネットワークタグとして任意の文字列を入力します。ここでは「ntp-server」とします。ところで、「ターゲットタグ」と「ネットワークタグ」、紛らわしいので呼称を統一して欲しいですね。
他には、受信許可するポート番号として、ここではUDPのポート123を指定します。送信元IPv4範囲は、今回は「0.0.0.0/0」(全てのIPアドレス範囲)を指定します。
適用すると、ファイアウォールの設定画面に次のルールが追加されたことが確認できます。
GCE VMインスタンスの設定
VMインスタンスに対し、前項で設定したターゲットタグ(ネットワークタグ)を設定します。Cloud Consoleのメニューで[Compute Engine]>[VMインスタンス]から、対象のVMインスタンス(NTPトラフィックを受信許可するVM)を選択し、「編集」を選択します。
設定項目の「ネットワークタグ」で、前項のファイアウォールルールに対応するネットワークタグ ntp-server を指定します。
他のVMインスタンスではネットワークタグを指定しません。こうすることでVMインスタンス1のみ、外部からのNTPトラフィックが受信可能になります。
HTTP/HTTPSの場合
前項ではNTPの例で紹介しましたが、ケースとしてはWebサービスのHTTP/HTTPSを許可する方が多いと思います。
HTTP/HTTPSの場合は、下の「Allow HTTP traffic」「Allow HTTPS traffic」のチェックボックスをONにするだけで、同様のことが実現できます。
上のようにチェックボックスをONにすると、自動的に対応するネットワークタグ http-server https-server が付加されます。
設定を確定すると、VPC ファイアウォールの設定に以下のルールが自動的に追加されます。
これにより、前述のチェックボックスをONにしたVMインスタンスのみ、外部からのHTTP/HTTPSトラフィックが受信可能になります。
HTTP/HTTPS通信はVMインスタンス個別に許可するケースが多いため、簡単にファイアウォールルールの設定ができるようになっているわけですね。
参考URL
おわりに
今回の記事は以上です。
当サイトでは、ITインフラ関連の知識やノウハウをメインに紹介しています。下の関連記事にも役立つ情報があるかもしれませんので、ぜひご覧下さい。
また、知識やノウハウを効率的に学ぶ方法として、Udemy の「ながらセミナー」もおすすめです。三日坊主にならず、普段の生活の中でスキルアップする方法です。これについては下の記事で紹介していますので、良ければご覧下さい。
最後まで読んでいただき、ありがとうございました。
フィードバック
あなたが抱えている疑問や悩みは解決できたでしょうか?当ブログではそれを最重視しています。今後もあなたの役に立つ情報を提供するために、ぜひ教えて下さい。
コメント