目次
はじめに
ディーネットのよろず請負の深見です。
ちょっとご無沙汰をしておりました。
今回は久々に AWS 環境で検証を行ったので、その折にセキュリティグループの設定でハマったことについてのお話になります。
検証をした構成について
今回は思い付きで Windows 関連ではお馴染みの Active Diretory (AD) サーバの構築および AD サーバの追加などを試してみようと早速始めてみました。
最近は、ファイルサーバの案件がしばしばあったりしますが、その際に AD が絡んでくることがあるのですが、あまり触る機会がなかったので、基本に戻って軽く構築をしてみました。
以下の構成で勧めました。
2 サーバ共に AD サーバ兼ファイルサーバ (FS) として構築します。
OS:Windows Server 2022
ルートドメイン名:denet-test01.local (月並みなネーミングですが・・・)
DNSサーバは AD01 にプライマリーサーバになってもらいます。
ファイアウォールについては、各 Windows サーバでは無効にして、VPC のセキュリティグループで後述の設定内容で設定をしています。
(ネットワーク ACL は設定をするとややこしくないので、何も設定はしていません)
以降では、AD サーバ構築の詳細は今回は省略し、その構築の際にハマったことについて注意点としてお話します。
2 台目の Windows Server をメンバサーバとして追加しようとしたとき・・・
1 台目の Windows サーバ (AD01) を構築し、AD の設定およびファイルサーバの設定は無事に終え、次に 2 台目の AD 兼 FS としての構築を終えて、さあ、2 台目の AD サーバを 1 台目の AD サーバのメンバサーバとして追加しようとした際に1つめの問題が発生しました。
通常、メンバサーバとして追加する場合、AD02 側で操作をして問題がなければ最後にドメイン管理者 (Administrator など) の認証でアクセス許可が完了して組み込み完了するのですが、ここでエラーとなりドメイン管理者の認証に進めない状況となりました。
エラーの詳細内容を確認したところ、DNS サーバへの問い合わせをし、AD01 への問い合わせをするのですが、その後はどうやら応答なしでエラーとなっている模様。
そこで気になったのは、ファイアウォールことセキュリティグループの設定でした。
今回、AD でドメイン メンバーが利用するポートに絞ってみようと以下を参考にして設定をしたはずでした。
ポートを使用するサービス | プロトコル | クライアント側ポート番号 | DC 側ポート番号 |
---|---|---|---|
PING | ICMP | ||
DNS | TCP/UDP | 一時ポート | 53 |
Kerberos | TCP/UDP | 一時ポート | 88 |
NTP | UDP | 123 | 123 |
RPC | TCP | 一時ポート | 135 |
RPC | TCP | 一時ポート | 一時ポート |
NetBIOS-ns | UDP | 137 | 137 |
NetBIOS-dgm | UDP | 138 | 138 |
NetBIOS-ssn | TCP | 一時ポート | 139 |
LDAP | TCP/UDP | 一時ポート | 389 |
SMB | TCP | 一時ポート | 445 |
KPasswd | TCP | 一時ポート | 464 |
LDAP GC | TCP | 一時ポート | 3268 |
LDAP SSL | TCP | 一時ポート | 636 |
LDAP GC SSL | TCP | 一時ポート | 3269 |
AD DS Web Services | TCP | 一時ポート | 9389 |
一方、AD02 のセキュリティグループを確認したところ、LDAP (389:UDP) の設定が漏れていたことが判明しました。
具体的にはセキュリティグループは以下の内容で解消、落ち着きました。
[Public Subnet-1 (AD01) へのセキュリティグループ]
セキュリティグループルール ID | IP バージョン | タイプ | プロトコル | ポート範囲 | ソース | 説明 |
---|---|---|---|---|---|---|
(省略) | IPv4 | すべての ICMP - IPv4 | ICMP | すべて | 10.0.27.47/32 | ping |
(省略) | IPv4 | DNS (TCP) | TCP | 53 | 10.0.27.47/32 | DNS (TCP) |
(省略) | IPv4 | DNS (UDP) | UDP | 53 | 10.0.27.47/32 | DNS (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 88 | 10.0.27.47/32 | Kerberos (TCP) |
(省略) | IPv4 | カスタム UDP | UDP | 88 | 10.0.27.47/32 | Kerberos (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 135 | 10.0.27.47/32 | RPC |
(省略) | IPv4 | カスタム UDP | UDP | 137 | 10.0.27.47/32 | NetBIOS-ns |
(省略) | IPv4 | カスタム UDP | UDP | 138 | 10.0.27.47/32 | NetBIOS-dgm |
(省略) | IPv4 | カスタム TCP | TCP | 139 | 10.0.27.47/32 | NetBIOS-ssn |
(省略) | IPv4 | LDAP | TCP | 389 | 10.0.27.47/32 | LDAP |
(省略) | IPv4 | カスタム UDP | UDP | 389 | 10.0.27.47/32 | LDAP (UDP) |
(省略) | IPv4 | SMB | TCP | 445 | 10.0.27.47/32 | AD / SMB |
(省略) | IPv4 | カスタム TCP | TCP | 646 | 10.0.27.47/32 | Kpasswd (TCP) |
(省略) | IPv4 | カスタム UDP | UDP | 646 | 10.0.27.47/32 | Kpasswd (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 3268 | 10.0.27.47/32 | LDAP GC |
(省略) | IPv4 | RDP | TCP | 3389 | XXX.XXX.XXX.XXX/32 | Remote Desktop Port |
[Public Subnet-2 (AD02) へのセキュリティグループ]
セキュリティグループルール ID | IP バージョン | タイプ | プロトコル | ポート範囲 | ソース | 説明 |
---|---|---|---|---|---|---|
(省略) | IPv4 | すべての ICMP - IPv4 | ICMP | すべて | 10.0.5.40/32 | ping |
(省略) | IPv4 | DNS (TCP) | TCP | 53 | 10.0.5.40/32 | DNS (TCP) |
(省略) | IPv4 | DNS (UDP) | UDP | 53 | 10.0.5.40/32 | DNS (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 88 | 10.0.5.40/32 | Kerberos (TCP) |
(省略) | IPv4 | カスタム UDP | UDP | 88 | 10.0.5.40/32 | Kerberos (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 135 | 10.0.5.40/32 | RPC |
(省略) | IPv4 | カスタム UDP | UDP | 137 | 10.0.5.40/32 | NetBIOS-ns |
(省略) | IPv4 | カスタム UDP | UDP | 138 | 10.0.5.40/32 | NetBIOS-dgm |
(省略) | IPv4 | カスタム TCP | TCP | 139 | 10.0.5.40/32 | NetBIOS-ssn |
(省略) | IPv4 | LDAP | TCP | 389 | 10.0.5.40/32 | LDAP |
(省略) | IPv4 | カスタム UDP | UDP | 389 | 10.0.5.40/32 | LDAP (UDP) |
(省略) | IPv4 | SMB | TCP | 445 | 10.0.5.40/32 | AD / SMB |
(省略) | IPv4 | カスタム TCP | TCP | 646 | 10.0.5.40/32 | Kpasswd (TCP) |
(省略) | IPv4 | カスタム UDP | UDP | 646 | 10.0.5.40/32 | Kpasswd (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 3268 | 10.0.5.40/32 | LDAP GC |
(省略) | IPv4 | RDP | TCP | 3389 | 10.0.5.40/32 | Remote Desktop Port |
検証での構築なので、Any で双方での許可するとしても良かったのですが、ここはきっちりと設定をしようとして、最初にハマってしまいました。
Winodws のドメイン環境で使用されるポートについては以下をご参照ください。
さあ、2 台目のドメインコントローラーのインストールだ!(そして、またハマる・・・)
AD02 をメンバサーバとして追加が完了したので、最後に AD02 をドメインコントローラー (DC) に昇格させて完了なので、ですがここでも問題が発生しました。
Ad02 には、AD 関連は未導入でしたので、「Active Directory ドメインサービス」をインストールして、その後に「このサーバーをドメインコントローラーに昇格する」を実行して、各種設定を進めて、インストール前の 前提条件のチェック で、またもやエラーとなり、インストールは待て!の状態に・・・。
確認をしてみると、どうやら AD01 が見つけられずにエラーとなっているようでした。
そういえば、セキュリティグループの設定で1つ保留にしていた設定がありました。
ポートを使用するサービス | プロトコル | クライアント側ポート番号 | DC 側ポート番号 |
---|---|---|---|
RPC | TCP | 一時ポート | 一時ポート |
この 「一時ポート」 って、一体なんぞやと調べるとマイクロソフトのネットワークらしい独自の設定でした。
動的ポートとして、49152 ~ 65535 の間の任意の空きポートを使用して、RPC 通信をするために必要となるようです。
よって、セキュリティグループで ポート範囲で「49152 ~ 65535」を許可するように設定する必要があります。
あらためて、この設定をそれぞれのセキュリティグループに追加しました。
改めて、
[Public Subnet-1 (AD01) へのセキュリティグループ]
セキュリティグループルール ID | IP バージョン | タイプ | プロトコル | ポート範囲 | ソース | 説明 |
---|---|---|---|---|---|---|
(省略) | IPv4 | すべての ICMP - IPv4 | ICMP | すべて | 10.0.27.47/32 | ping |
(省略) | IPv4 | DNS (TCP) | TCP | 53 | 10.0.27.47/32 | DNS (TCP) |
(省略) | IPv4 | DNS (UDP) | UDP | 53 | 10.0.27.47/32 | DNS (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 88 | 10.0.27.47/32 | Kerberos (TCP) |
(省略) | IPv4 | カスタム UDP | UDP | 88 | 10.0.27.47/32 | Kerberos (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 135 | 10.0.27.47/32 | RPC |
(省略) | IPv4 | カスタム UDP | UDP | 137 | 10.0.27.47/32 | NetBIOS-ns |
(省略) | IPv4 | カスタム UDP | UDP | 138 | 10.0.27.47/32 | NetBIOS-dgm |
(省略) | IPv4 | カスタム TCP | TCP | 139 | 10.0.27.47/32 | NetBIOS-ssn |
(省略) | IPv4 | LDAP | TCP | 389 | 10.0.27.47/32 | LDAP |
(省略) | IPv4 | カスタム UDP | UDP | 389 | 10.0.27.47/32 | LDAP (UDP) |
(省略) | IPv4 | SMB | TCP | 445 | 10.0.27.47/32 | AD / SMB |
(省略) | IPv4 | カスタム TCP | TCP | 646 | 10.0.27.47/32 | Kpasswd (TCP) |
(省略) | IPv4 | カスタム UDP | UDP | 646 | 10.0.27.47/32 | Kpasswd (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 3268 | 10.0.27.47/32 | LDAP GC |
(省略) | IPv4 | RDP | TCP | 3389 | XXX.XXX.XXX.XXX/32 | Remote Desktop Port |
(省略) | IPv4 | カスタム TCP | TCP | 49152 - 65535 | 10.0.27.47/32 | RPC (temporary port) |
[Public Subnet-2 (AD02) へのセキュリティグループ]
セキュリティグループルール ID | IP バージョン | タイプ | プロトコル | ポート範囲 | ソース | 説明 |
---|---|---|---|---|---|---|
(省略) | IPv4 | すべての ICMP - IPv4 | ICMP | すべて | 10.0.5.40/32 | ping |
(省略) | IPv4 | DNS (TCP) | TCP | 53 | 10.0.5.40/32 | DNS (TCP) |
(省略) | IPv4 | DNS (UDP) | UDP | 53 | 10.0.5.40/32 | DNS (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 88 | 10.0.5.40/32 | Kerberos (TCP) |
(省略) | IPv4 | カスタム UDP | UDP | 88 | 10.0.5.40/32 | Kerberos (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 135 | 10.0.5.40/32 | RPC |
(省略) | IPv4 | カスタム UDP | UDP | 137 | 10.0.5.40/32 | NetBIOS-ns |
(省略) | IPv4 | カスタム UDP | UDP | 138 | 10.0.5.40/32 | NetBIOS-dgm |
(省略) | IPv4 | カスタム TCP | TCP | 139 | 10.0.5.40/32 | NetBIOS-ssn |
(省略) | IPv4 | LDAP | TCP | 389 | 10.0.5.40/32 | LDAP |
(省略) | IPv4 | カスタム UDP | UDP | 389 | 10.0.5.40/32 | LDAP (UDP) |
(省略) | IPv4 | SMB | TCP | 445 | 10.0.5.40/32 | AD / SMB |
(省略) | IPv4 | カスタム TCP | TCP | 646 | 10.0.5.40/32 | Kpasswd (TCP) |
(省略) | IPv4 | カスタム UDP | UDP | 646 | 10.0.5.40/32 | Kpasswd (UDP) |
(省略) | IPv4 | カスタム TCP | TCP | 3268 | 10.0.5.40/32 | LDAP GC |
(省略) | IPv4 | RDP | TCP | 3389 | 10.0.5.40/32 | Remote Desktop Port |
(省略) | IPv4 | カスタム TCP | TCP | 49152 - 65535 | 10.0.5.40/32 | RPC (temporary port) |
各セキュリティグループへ最後の設定追加を行った後は、無事に 前提条件のチェック をクリアして、インストールが完了しました。
これで、予定の検証環境構築は完了しました。 めでたい!
なお、「一時ポート(動的ポート)」については、以下をご参照ください。
【参考】Windows のサービス概要およびネットワーク ポート要件
おわりに
今回は、久々に Windows サーバでよくある AD 環境を構築しようとしてハマったことを紹介しました。
まあ、マイクロソフトのネットワーク環境に詳しい方にはご存知のお話でしたが、久しぶりの環境構築のためうっかりとして困りましたので、皆さんへの参考としてまとめてみました。
さて、初の予告として、次回はバックアップに関するお話を2~3回くらいに分けてお話しできればと考えています。
また、VMware 関連や K8s 関連、Docker 関連、Windows 関連(、AWS 関連もちょっと)と諸々のおもしろそうな内容のご紹介もできればと考えています。
それでは、この辺で失礼します。