目次
シナリオ2 PublicとPrivate Subnet
VPC環境で利用可能です。</ p>
アーキテクチャ
Virtual Private Cloud(VPC)のPublic SubnetとPrivate Subnetが構成されます。このシナリオでは、Privateサーバー(例えば、DB)の公開的なアクセスを遮断し、Public Web Applicationを実行する場合にお勧めします。
- Webサーバーがデータベースサーバーと通信できるように、セキュリティとルーティングを提供しています。
1 . VPC
- IPv4 CIDRブロックのサイズが/ 16(例えば、10.0.0.0/16)で提供され、65,536個のアドレス空間を提供しています。
2 . Public Subnet
Subnetサイズが最大/ 24(例えば、10.0.0.0/24)で提供され、256個のアドレス空間を提供しています。
- Public Subnet内サーバーは、インターネットとの接続が必要なサーバです。 (例えば、Webサーバ)
- 各サーバーは、グローバルIPを一つずつ保持します。 (1:1 NAT)
3 . Private Subnet
- Subnetサイズが最大/ 24(例えば、10.0.0.0/24)で提供され、256個のアドレス空間を提供しています。
- Private Subnet内サーバーは、インターネットから受信したトラフィックを受け入れる必要がないサーバーです。(例:DB)
4 . Internet Gateway
- VPCをインターネットや他のNcloudサービスに接続します。
5 . NAT Gateway
- Private Subnet内のサーバーがインターネット接続時に使用するゲートウェイです。
6 .ルーティングテーブル
Public Subnet:サーバーがVPC内の他のインスタンスと通信できるようにする項目(local)とインターネットと直接通信できるようにする項目(IGW)が保存されます。
Private Subnet:サーバーがVPC内の他のインスタンスと通信できるようにする項目(local)とNAT Gatewayを介してインターネットと通信できるようにするアイテムが保存されます。
ルーティング
ルーティング情報は、以下の通りです。
- Public Subnet
- Private Subnet
セキュリティ
セキュリティのためにACGとNetwork ACLを提供しています。 ACGは、サーバーのInbound / Outboundトラフィックを制御し、Network ACLはSubnetのInbound / Outboundのトゥレピクを制御します。本シナリオでは、ACGとNetwork ACLは以下のように構成することをお勧めします。
- Public Subnet:Inbound
優先順位 | プロトコル | アクセスソース | ポート | 許可するかどうか | メモ |
---|---|---|---|---|---|
1 | TCP | 0.0.0.0/0 | 80 | 許可 | Inbound HTTPトラフィックを許可 |
2 | TCP | 0.0.0.0/0 | 443 | 許可 | Inbound HTTPSトラフィックを許可 |
3 | TCP | 接続者IP | 22 | 許可 | 接続者IPからSSHトラフィックを許可(インターネットゲートウェイを介して) |
4 | TCP | 接続者IP | 3389 | 許可 | 接続者IPからRDPトラフィックを許可(インターネットゲートウェイを介して) |
5 | TCP | 0.0.0.0/0 | 32768-65535 | 許可 | Subnetから発信された要求のInboundリターントラフィックを許可(表示されたIPアドレスとポートは、例示であるため、構成に合わせて設定を進めてください) |
197 | TCP | 0.0.0.0/0 | 1-65535 | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
198 | UDP | 0.0.0.0/0 | 1-65535 | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
199 | ICMP | 0.0.0.0/0 | - | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
- Public Subnet:Outbound
優先順位 | プロトコル | アクセスソース | ポート | 許可するかどうか | メモ |
---|---|---|---|---|---|
1 | TCP | 0.0.0.0/0 | 80 | 許可 | Outbound HTTPトラフィックを許可 |
2 | TCP | 0.0.0.0/0 | 443 | 許可 | Outbound HTTPSトラフィックを許可 |
3 | TCP | 0.0.0.0/0 | 32768-65535 | 許可 | インターネット上のクライアントのOutbound応答を許可(表示されたIPアドレスとポートは、例示であるため、構成に合わせて設定を進めてください) |
4 | TCP | PrivateサーバーPrivate IP | Privateサーバーポート(例えば、DB) | 許可 | Privateサーバーとの通信を行うためのトラフィックを許可 |
197 | TCP | 0.0.0.0/0 | 1-65535 | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
198 | UDP | 0.0.0.0/0 | 1-65535 | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
199 | ICMP | 0.0.0.0/0 | - | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
- Private Subnet:Inbound
優先順位 | プロトコル | アクセスソース | ポート | 許可するかどうか | メモ |
---|---|---|---|---|---|
1 | TCP | Public Subnetサーバーの非公認IP | Privateサーバーポート(例えば、DBポート) | 許可 | Publicサーバーとの通信を行うためのトラフィックを許可 |
2 | TCP | 0.0.0.0/0 | 32768-65535 | 許可 | インターネットで発信された要求のInboundリターントラフィックを許可(表示されたIPアドレスとポートは、例示であるため、構成に合わせて設定を進めてください) |
197 | TCP | 0.0.0.0/0 | 1-65535 | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
198 | UDP | 0.0.0.0/0 | 1-65535 | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
199 | ICMP | 0.0.0.0/0 | - | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
- Private Subnet:Outbound
優先順位 | プロトコル | アクセスソース | ポート | 許可するかどうか | メモ |
---|---|---|---|---|---|
1 | TCP | Public Subnetサーバーの非公認IP | 32768-65535 | 許可 | PublicサーバーからPrivateサーバーのOutbound応答を許可(表示されたIPアドレスとポートは、例示であるため、構成に合わせて設定を進めてください) |
197 | TCP | 0.0.0.0/0 | 1-65535 | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
198 | UDP | 0.0.0.0/0 | 1-65535 | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
199 | ICMP | 0.0.0.0/0 | - | 拒否 | 上記の規則以外の残りのルールは、すべてのトラフィックが拒否されます。 |
シナリオの実装
1 . VPCを作成します。
(1)コンソール> VPC> VPC Management に移動します。
(2)画面上部 VPCを作成ボタンを押した後、VPCの名前とIPアドレスの範囲を入力します。
- IPアドレスの範囲は、今後の修正ができませんので、慎重に指定してください。
2 . Subnetを生成します。
(1)コンソール> VPC> Subnet Management に移動します。
(2)画面上部 Subnet作成ボタンを押した後、情報を入力します。
Subnet名前:目的に合ったSubnet名を入力します。
VPC :Subnetを配置させることがvpcを選択します。
IPアドレス範囲:VPCのアドレス範囲内でSubnetアドレスの範囲を、いくつかの割り当てられます。
利用可能Zone :Subnetが配置される物理的な使用可能なZoneを選択します。 *現在は、Single Zoneで運営中です。追加Zoneも準備中ですのでご了承ください。
Network ACL :基本的にDefault ACLルールを提供しています。事前にネットワーク構成要件に合わせてNetwork ACLを構成すると、セキュリティをさらに強化することができます。
Internet Gateway専用かどうか:使用するSubnet特性を考慮して、Public Subnetを使用する場合は、 Y を、Private Subnetを使用する場合は、 N を選択します。
- Public Subnetを選択される場合Subnet内で生成されたすべてのVMは、グローバルIPが、基本的に割り当てられ、インターネット網に直接通信が可能です。
*このシナリオを実装するためにはPublic、Private Subnetをそれぞれ作成する必要があります。
3 . Network ACLを設定します。
(1)コンソール> VPC> Network ACL に移動します。
(2) Network ACLの作成ボタンを押した後の情報を入力します。
Network ACL名:ACLの目的を考慮して、名前を入力します。
VPC:生成するNetwork ACLが適用されるVPCを選択します。
(3) Rule設定を介してNetwork ACLのInboundとOutboundルールを変更することができます。このシナリオでの[セキュリティ](#セキュリティ)が推奨するルールを入力します。
4 . Route Tableを設定します。
(1)コンソール> VPC> Route Table に移動します。
(2) Route Table生成ボタンを押した後の情報を入力します。
Route Table名前:使用したいRoute Tableの名前を入力します。
VPC :Route TableはSubnet単位で適用されます。適用することがSubnetがあるVPCを入力します。
Subnetサポートタイプ:Internet Gatewayが接続されているSubnetに適用されるRoute Tableなら公認を選択し、そうでない場合は、プライベートを選択してください。
(3)関連Subnet設定を介して対応するRoute Tableが適用されるSubnetを選択することができます。
(4) Route設定を介してルーティングテーブルを設定することができます。本シナリオでは、上記の設定が自動的に反映されます。
5 . NAT Gatewayを生成します。
(1)コンソール> VPC> NAT Gateway に移動します
(2) NAT Gateway生成ボタンをクリックして該当する情報を入力します。
NAT Gateway名前:目的に合ったNAT Gatewayの名前を入力します。
VPC:生成するNAT Gatewayが適用されるVPCを選択します。
ZONE:Subnetが配置される物理的な使用可能なZoneを選択します
*現在は、single zoneで運営中です。追加Zoneも準備中ですのでご了承ください。
6 . Route Tableを設定します。
(1)コンソール> VPC> Route Table に移動します
(2)先に作成したプライベートSubnetと関連付けられているRoute Tableを選択して、 Route設定ボタンをクリックして該当する情報を入力します。
Destination:通信先のネットワークのアドレス形式をCIDR形式で入力します。 *インターネット全体の通信が必要な場合は、「0.0.0.0/0」になります。
Target Type:トラフィックが転送される先を選択します。 *このシナリオでは、「NATGW」になります。
Target Name:生成されたNAT Gatewayを選択します。
(3)関連Subnet設定を介して対応するRoute Tableが適用されるSubnetを追加することができます。