今回も、「Google Associate Cloud Engineer」認定取得の勉強におけるアウトプット内容となっています。
将来、「Google Associate Cloud Engineer」認定取得を目指している方向けに、ぴったりの内容となっています。
今回から、3回に分けてネットワーキングについて説明します。
Virtual Private Cloud (VPC)
Virtual Private Cloud (VPC) とは、クラウドに構築するネットワークのことをいいます。会社のネットワークをクラウド上に構築するようなものです。クラウドにネットワークを構築することで、VMや他のGCPサービスと連携して、システムやアプリを作成することができます。
VPCネットワークの特徴
- VPCネットワークはグローバルリソース
- サブネットはリージョンリソース
- VPCネットワーク内のリソースには、ファイアウォールルールで制御可能
- ネットワーク管理は、IAMロールで保護可能
- VPCネットワークピアリングで、異なるプロジェクトや組織のVPNネットワークと接続可能
- オンプレミスのネットワークと接続するハイブリッド環境構築が可能
サブネットワーク(サブネット)
サブネットワークとは、ネットワークを細かく分けたグループです。例えば、VPCネットワークを作成し、その中に、「192.168.100.0/24」と「192.168.200.0/24」という2つのグループを作成することをサブネットワークワークといいます。
上記のように、「192.168.100.0」のように、最後のオクテットが「0」の場合、ネットワーク全体を指します。また、「/28」は、ネットワークの範囲を示しております。通常、IPアドレスは、10進数で表記されますが、実際パソコンの内部では、2進数で処理されています。
その場合、1つのオクテットが8ビットで計算されるため、2の8乗で256個のIPアドレスが使用できます。ちなみに使用できる数字は、「0〜255」までの256個になります。
上記の図のように「192.168.100.0/28」の場合、使用できるIPアドレスの個数は、2の4乗となり16個です。ただし、最初の数字は、ネットワーク全体を指し、最後の数字は、ブロードキャストアドレスで使用される為、実際に使用できる(インスタンスに割り当てる)IPアドレスは14個です。
ブロードキャストアドレスとは、ネットワーク内のすべてのインスタンス(機器)にデータを送るためのアドレスです。
ネットワークについては長くなるので、また別のブログで説明します!
サブネットワークのIPアドレス
サブネットワークで使用できるIPアドレス範囲は、Googleに明確に決められています。基本的には、「RFC1918」で決められているアドレスですが、それ以外にも一部使用できるものがあります。
<RFC1918のアドレス範囲>
・10.0.0.0/8
・172.16.0.0/12
・192.168.0.0/16
上記以外の使用できるIPアドレスについては、GoogleCloudのドキュメントを確認してください。
サブネット作成モード
サブネットワークを作成するモードは2つあります。
オートサブネットモード
- プロジェクト作成時に自動的にデフォルトネットワークが作成される
- 新しいリージョンが利用可能になると自動的にサブネットも作成される
- デフォルトファイアウォールルールも作成される
- テスト環境の用途に適していいる
カスタムサブネットモード
- ネットワーク管理者がサブネットとIP範囲を定義
- デフォルトのファイアウォールルールは無し
- どのRFC1918空間にも拡張可能
- 本番環境の用途に適している
ファイアウォール
ファイアウォールとは、サブネットワーク内と外にアクセスする通信をブロックする防火壁のことをいいます。ファイアウォールを使用することで、外部からネットワーク侵入するウィルス等を防ぐことができます。
GCPファイアウォールの特徴
- 分散ファイアウォール
- ルールはネットワーク全体に適用
- インスタンス毎に許可/拒否の設定可能
- ルールはステートフル(内向きの設定をすると外向きも自動で設定)
- 暗黙ルールとして、中から外は全て許可(Allow all)、外から中は全て拒否(Deny All)
ファイアウォールルールのベストプラクティス
- 基本全てのトラフィックをブロック
- 最小限の通信のみ許可
- 階層型ファイルウォールポリシーを使用
- GCPサービスへの通信許可はサービスアカウントを使用
- 最小限のルールの中に複数の設定を行う
- ファイアウォールログを設定する
2つのファイアウォールポリシー
階層型ファイアウォール
- 組織全体で一貫したファイアウォールポリシー
- 個々のインスタンスにも割当可能
- 下位レベルでポリシーの上書き不可
VPCファイアウォールルール
- 単一のインスタンスに対するファイアウォールルール
インターネットアクセスの要件
GCPインスタンスがインターネットに接続するためには、下記要件があります。
- インターネットゲートウェイルート
- 宛先IPアドレスが一般的な「0.0.0.0/0」(※「0.0.0.0/0」は全てのネットワークの意味)
- インスタンスから下り(外向き)のトラフィックを許可
- インスタンスが外部IPアドレスを保持
- Cloud NATを使用
ネットワーキングに関するIAM
IAM(Identity and Access Management)については、以前のブログで説明しているので、今回は、ネットワーキングに関する部分に特化して説明します。
ネットワーク関連のIAMロール
事前定義ロールでネットワーキングリソースへのアクセスロールは3つあります。
- ネットワーク閲覧者
- ネットワーク管理者
- セキュリティ管理者
1.ネットワーク閲覧者
全てのネットワーキングリソースへの読み取り専用のアクセス権をもちます。たとえば、ネットワーク検査のチェックを行う担当者がいる場合、ネットワーク閲覧者ロールを付与します。
2.ネットワーク管理者
ネットワークリソースの作成、変更、削除を行うアクセス権をもちます。注意点は、ファイアウォールルールとSSL証明書に関するアクセス権は、読み取り専用しかない点です。
3.セキュリティ管理者
ファイアウォールルールとSSL証明書を作成、変更、削除を行うアクセス権をもちます。
ポイント!!
「ネットワーク管理者」と「セキュリティ管理者」でアクセスできる権限が違うことをしっかりを理解してください。実際の運用では、「ネットワーク管理者」と「セキュリティ管理者」、2つのロールをもつカスタムロールを作成することがあります。
まとめ
今回は、下記3点について説明を行いました。
- Virtual Private Cloud (VPC)
- ファイアウォール
- ネットワーキングに関するIAM
VPCについては、GCPのサービスを組み合わせるときに使用するので、ぜひ覚えておいてください!また、外部からネットワークに侵入するクラッカー等がいるので、ファイアウォールの設定や、インスタンス間の通信はサービスアカウントを使用等は重要な内容です。今回のブログは、是非、身につけて頂きたい内容となっています!
これからも、Macのシステムエンジニアとして、日々、習得した知識や経験を発信していきますので、是非、ブックマーク登録してくれると嬉しいです!
それでは、次回のブログで!