Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
Warning: preg_match(): Compilation failed: unrecognized character follows \ at offset 1 in /home/r5652521/public_html/soma-engineering.com/wp-content/themes/affinger/functions.php on line 1548
こんにちは!SE ブログの相馬です。
今回は、PowerShell で 別のサーバーから Active Directory (AD) をリモート管理する方法について書きました。
企業で AD の環境があえば、少なくともドメインコントローラーが 1 台以上あるかと思います。
また、システム管理者が AD のオブジェクトを操作する時には、以下のようにいくつかの方法があるかと思います。
- ドメインコントローラーにコンソールかリモートデスクトップでログオンして操作する方法
- ドメインコントローラーではないサーバーからリモートで操作する方法
- 管理者の PC から RSAT を使って操作する方法
ドメインコントローラーのリモートデスクトップのセッションを使いたくない場合や、ジョブをまわすサーバーから AD の操作を行いたい場合は、上の 2 番や 3 番を使います。
今回は 2 番の方法で、PowerShell を使って AD の操作を検証してみました。Windows PowerShell の Active Directory モジュールというツールを使います。
特別難しい事はなかったのですが、ドメインコントローラーに接続するサーバーに機能を追加しなければならない事と、機能を追加した後にサーバーの再起動が必要になります。ですのでサーバーの再起動ができるタイミングで行って頂く形になります。
環境
以下の環境で検証しています。AD の環境に PowerShell で接続するのは Windows Server 2019 になります。
役割 | OS |
---|---|
ドメインコントローラー | Windows Server 2016 |
リモート接続するサーバー | Windows Server 2019 |
注意すべき点としては、[Windows PowerShell の Active Directory モジュール] を使うと接続するポート番号は 9389 番ポートが使われます。
サービス | プロトコル | ポート番号 |
---|---|---|
AD DS Web Services | TCP | 9389 |
詳細は、Microsoft のブログを参照してください。
ドメイン環境で使用されるポートについて | マイクロソフト Network & AD サポートチーム公式ブログ
機能の追加方法
1. サーバーマネージャーから [管理] をクリックし、[役割と機能の追加] を追加します。
2. [次へ] をクリックして、また [次へ] をクリックします。
3. [次へ] をクリックして、[AD DS スナップインおよびコマンドラインツール] と [Windows PowerShell の Active Directory モジュール] にチェックを入れて [次へ] をクリックします。
4. [次へ] をクリックするとインストールが始まります。完了したら [閉じる] をクリックします。これで機能の追加は完了です。
PowerShell を使って接続する
1. サーバーマネージャーから [管理] をクリックし、[Windows PowerShell の Active Directory モジュール] をクリックします。この時にドメイン管理者のアカウントでログインする必要があれば、このツールを別のユーザーとして実行してください。PowerShell が機能したら、Get-ADUser "ユーザー名" で実行して結果が表示されれば OK です。
2. スクリプトを実行する場合は PowerShell_ISE から実行します。[Windows PowerShell の Active Directory モジュール] する方法ではりませんので、手動で Import-Module ActiveDirectory を実行して Active Directory モジュールをインポートする必要があります。
Windows 10 から AD をリモート管理する方法
以下の記事に Windows 10 バージョン 1809 以降の PC で AD をリモート管理する方法について書きました。参考にしていただければと思います。
このリモートサーバー管理ツールは 従来は RSAT と呼ばれていて Microsoft 謹製のツールになりますが、バージョン 1809 以降は RSAT のダウンロードやインストールは不要になり、Windows の機能から追加するだけの簡単な方法になりました。
まとめ
以上になります。いかがでしょうか。
これができるとわざわざドメインコントローラーにログオンしなくても AD の操作ができますので便利ですね。
ドメインコントローラーにログオンさせたくない場合は、Windows PowerShell の Active Directory モジュール を活用すると良いでしょう。
それでは最後までお読みいただきありがとうございました!