justin_p.pdc

ansible-role-pdc

Ansibleロール名 Github Actions

このロールは、Active Directory ドメインおよびフォレストを持つ新しいプライマリ ドメイン コントローラーを作成します。強化は行われていません。

@jborean93 による jborean93/ansible-windows の作業に基づいています。

対応しているOS

  • Windows Server 2019
  • Windows Server 2016
  • Windows Server 2012R2

要件

  • python3-winrm (pywinrm) が WinRM 用に必要です。

ロール変数

defaults/main.yml

変数 説明 デフォルト値
pdc_administrator_username これをビルトインの管理者アカウントに設定すると、NETBIOS\Administrator のパスワードを把握できます。9/10 の確率で、デフォルト値のままにしておくべきです。 Administrator
pdc_administrator_password ビルトインの管理者アカウントのパスワードです。このパスワード(pdc_administrator_username がデフォルトのままなら)は、NETBIOS\Administrator のパスワードになります。強力なパスワードに変更してください。 P@ssw0rd!
pdc_dns_nics DNS を設定するイーサネットアダプターの名前です。デフォルトはワイルドカードです。9/10 の確率で、デフォルト値のままにしておくべきです。 *
pdc_dns_servers pdc_dns_nics で使用する DNS サーバーです。デフォルトは {{ ansible_host }} です。9/10 の確率で、デフォルト値のままにしておくべきです。 {{ ansible_host }}
pdc_domain 新しい Active Directory フォレストのドメインです。テストやラボ目的の場合は ad.domain.test を使用することをお勧めします。本番環境では既存のドメインと ad サブドメインを使用することをお勧めします: ad.domain.tld ad.example.test
pdc_netbios 新しい Active Directory フォレストの NetBIOS 名です。ニーズに応じて変更してください。 TEST
pdc_domain_path ドメインの識別名です。pdc_domain で指定した値と一致する必要があります(例:dc=ad,dc=domain,dc=test dc=ad,dc=example,dc=test
pdc_domain_safe_mode_password ドメイン セーフ モードのパスワードです。強力なパスワードに変更してください。 P@ssw0rd!
pdc_domain_functional_level 新しいフォレストの最初のドメインのドメイン機能レベルを指定します。ドメイン機能レベルはフォレスト機能レベルよりも低くすることはできませんが、高くすることはできます。ニーズに応じて変更してください。 デフォルト (Windows2008R2)
pdc_forest_functional_level 新しいフォレストのフォレスト機能レベルを指定します。Windows Server でのデフォルトのフォレスト機能レベルは、通常使用しているバージョンと同じです。ニーズに応じて変更してください。 デフォルト (Windows2008R2)
pdc_required_psmodules PSGallery からインストールする PowerShell/DSC モジュール。WaitForAD チェックに対しては常に ActiveDirectoryDsc を含めるようにしてください。9/10 の確率でデフォルト値のままにしておくべきです。 [xPSDesiredStateConfiguration, NetworkingDsc, ComputerManagementDsc, ActiveDirectoryDsc]
pdc_required_features ドメインコントローラーにインストールする必要がある Windows 機能です。デフォルトは AD-domain-services と DNS です。9/10 の確率でデフォルト値のままにしておくべきです。 ["AD-domain-services", "DNS"]

依存関係

  • Windows ホストで WinRM が設定されている必要があります。
  • justin_p.posh5
  • justin_p.wincom

例 Playbook

- hosts: primary_domain_controller
  roles:
    - role: justin_p.posh5
    - role: justin_p.wincom
    - role: justin_p.pdc

例のインベントリについては、https://github.com/justin-p/ansible-role-pdc/blob/master/tests/inventory.yml を参照してください。

ローカル開発

このロールには、VirtualBox でローカルの Windows Server 2019 VM を立ち上げる Vagrantfile が含まれています。
VM を作成すると、自動的にロールが実行されます。

開発要件

pip3 install pywinrm

使い方

  • vagrant up を実行して VM を作成し、ロールを実行します。
  • vagrant provision を実行してロールを再適用します。
  • vagrant destroy -f && vagrant up を実行して VM を再作成し、ロールを実行します。
  • vagrant destroy を実行して VM を削除します。

ライセンス

MIT

著者

  • Justin Perdok (@justin-p), Orange Cyberdefense

コントリビューション

問題をオープンしたり、貢献したり、プルリクエストを送信したりしてください。Twitter でも私に連絡することができます(@JustinPerdok)。

プロジェクトについて

Setup a Primary Domain Controller and Active Directory on a Windows Server.

インストール
ansible-galaxy install justin_p.pdc
ライセンス
mit
ダウンロード
258
所有者
IT Geek, Ethical Hacker, DevOps Nut, PowerShell Fanatic and lover of beers :beers: