AWSで4つのサーバーを数年間実行しています。趣味のプロジェクトです。すべてのサーバーは、同じVPCの同じサブネットにあります。
アカウントとアクセス許可の管理を簡略化するために、Active Directoryを使用することにしました。つまり、ドメインコントローラーをインストールします。ドキュメントには、AWSドメインコントローラーサービスを使用するには、ドメインコントローラーがVPCのプライベートサブネットにある必要があることが示されています。私にとって馴染みのない用語であるプライベートサブネットの調査を続けたところ、プライベートサブネットのEC2はNATゲートウェイの背後にある必要があります-または少なくともそれが強く推奨されています。
NATゲートウェイの背後にあるプライベートサブネットにドメインコントローラーを配置することの推奨は、明らかに提供されるセキュリティ上の利点に基づいています。これは私の質問につながります:正確にはこれらのセキュリティ上の利点は何ですか?
これが私が尋ねる理由です...
私の既存の4台のサーバーにはそれぞれプライベートIPとルーティング可能な(「弾性」)IPがありますが、ファイアウォールで許可するセキュリティルールを作成しない限り、ファイアウォールで後者に接続することはできません。ドメインコントローラーの場合、なぜこれが異なるのですか? DCはネットワーク上のサーバーでのみ使用され、インターネット上の外部の関係者によって使用されることはないことを理解していますが、逆に受信セキュリティルールを作成しない限り、それは単にデフォルトの状態ではないのですか?独自のNATゲートウェイを使用して、孤立したサブネット上でこれらのDCを分離することのポイントは何ですか?それは、本当のアップサイドなしで複雑さを追加しているようです。まあ、おそらくそこにあります is上向きで、それが何であるかわからないので、私の質問です。
(私は趣味であり、専門家ではないので、この質問がSuperUserに適していると思われる場合は、削除して再投稿します。サーバー関連であるこのサイトの方が適している可能性があるため、ここで考えました。)
インスタンスにパブリック/エラスティックIPがある場合、攻撃で直接ターゲットにすることができます。たぶん、セキュリティグループで不要なポートを開いたままにして、私が悪用できる可能性があります。
Public/Elastic IPがない場合、インターネットからはほとんど見えず、外部から直接ターゲットにすることはできません。
家のことを考えてみてください。通りに直接ドアが付いている場合、家のセキュリティはドアのロックにかかっています。ただし、硬い壁の後ろのセクションにある場合は、ドアにアクセスしてロックを解除することさえ困難です。誤ってドアのロックを解除したままにしても、かなり安全です。
ですから、すべてが期待どおりに機能する場合、パブリックサブネットとプライベートサブネットのセキュリティは類似しているはずです。しかし、ミスが発生し、プライベートサブネットにリソースを配置することで、このような場合の保護をさらに強化できます。
それが役に立てば幸い:)
ネットワークの考慮事項に加えて、サービスの分離についても検討してください。 AD DS + DNS +ファイルサーバーは、理想的にはドメインコントローラーホストの唯一の役割です。おそらく、ネットワークへの資格情報と同じボックスにパブリックWebサーバーを配置したくないでしょう。
ホストされたディレクトリサービスを使用して、ディレクトリを他の人の問題にすることができます。柔軟性と学習機会が減る代わりに。
安全なネットワークは、プライベートまたはパブリックIPで可能です。違いは、分離を明確にしたいという個人的な好みです。
「プライベートサブネット」と「NATゲートウェイの背後」」を個別に見てみましょう。
管理サブネットをパブリックネットワークサブネットから分離すると、セキュリティゾーン間の境界が明確になります。一見すると、IPは内部または外部のいずれかです。 AWSネットワークACLまたはそれらの間にサードパーティのファイアウォールを追加できます。 (サブネットではなくインスタンスに関連付けられているセキュリティグループの上に。)
NATゲートウェイは実際にはセキュリティを追加しません。着信接続は許可されていませんが、セキュリティグループでも実行できます。
NATはIPv4アドレスを節約します。または、出力専用のインターネットゲートウェイを備えたIPv6は、ゼロのIPv4アドレスを使用します。
ファイアウォールルールが正しく作成されていて、サーバーが1つしかない場合は、セキュリティは低下します。プライベートIP範囲が必要なのは、複数のサーバー間の通信が安全に行われるためです。たとえば、Webサーバーとドメインコントローラーを見てみましょう。 Webサーバーがプライベートネットワークを介してドメインコントローラーと安全に通信できるようにし、ポート80/443への外部アクセスを許可する必要があります。これを行うには、ポート80と443を直接wwwサーバーに直接転送します。この構成では、ドメインコントローラーのトラフィックをパブリックネットワークに公開しないことで、トラフィックを保護します。