mrinzouのブログ

ITとかガジェットとか思いつくままに

Active Directory ユーザの一括登録

メコンのリプレースデモ前に、少しだけアクティブディレクトリの環境を整えておこうと思う。中身のないドメコンをリプレースしても、いまいち感動もないし。

Powershellでユーザを一括登録するには、New-ADUserコマンドレットを使う。
基本的な使い方は、以下のMSのページを参照した。

docs.microsoft.com

まずは一括登録するための、CSVファイルの作成。
ちょっと味気がないが、以下のようなCSVファイルを作成し、ドメコンの適当な作業ディレクトリに置く。今回はC:\tempフォルダを作成し、そこに置いた。

f:id:mrinzou:20210312221705p:plain

Powershellを管理者権限で実行し、以下のコマンドを実行。

Import-Module ActiveDirectory
Import-Csv -Encoding Default "C:\temp\users.csv" | `
%{New-ADUser -Name $_.Name `

  • Path "OU=users,OU=demo,DC=mrinzou,DC=mydns,DC=jp"
  • DisplayName $_.DisplayName `
  • UserPrincipalName $_.UserPrincipalName `
  • Surname $_.Surname `
  • Givename $_.Givenname `
  • sAMAccountName $_.Name `
  • AccountPassword (ConvertTo-SecureString -AsPlainText $_.Password -Force) `
  • ChangePasswordAtLogon $false -Enabled $true -PasswordNeverExpires $true `
  • Enabled $true }

あれ?ヾ(´゚Д゚`;)ゝ
エラーでまくり。しかもプロパティが空で、ユーザはできているという何とも中途半端な状態。
エラーならユーザ作成するなよ。( ・ὢ・ ) ムムッ
f:id:mrinzou:20210312231247p:plain

いろいろググって。。。。

いろいろ間違えまくり。orz
正しくは、以下。

Import-Csv "C:\temp\users.csv" -Encoding Default | `
%{New-ADUser -Name $_.Name `

  • Path "OU=users,OU=demo,DC=mrinzou,DC=mydns,DC=jp" `
  • Surname $_.Surname `
  • Givenname $_.Givenname `
  • sAMAccountName $_.Name `
  • AccountPassword (ConvertTo-SecureString -AsPlainText $_.Password -Force) `
  • ChangePasswordAtLogon $false -Enabled $true -PasswordNeverExpires $true `
  • UserPrincipalName $_.UserPrincipalName `
  • DisplayName $_.DisplayName `

}<<

間違っていたところ。
・-Pathの最後に、行連結の"`"が抜けてた。
・GivennameがGivenameになっていた。
CSVファイルをUFT-8で保存していなかった。

はあ。たったこれだけなのにどっと疲れた。

Active Directoryドメインコントローラ構築 (2)

先日1台目のドメインコントローラを構築したので、2台目のドメインコントローラを既存のドメインに追加する。
基本的な流れは同じで、[役割と機能の追加]から「アクティブディレクトドメインサービス」と「DNS」をインストールし、インストール後にドメコンに昇格させる。
事前準備として、固定IPアドレスの設定とDNSに1台目のドメコンを指定しておく。

役割と機能の追加

「サーバーマネージャー」の[管理]から[役割と機能の追加]でアクティブディレクトドメインサービス」と「DNS」を追加する。
基本的には「次へ」でOK。

f:id:mrinzou:20210309221538p:plain
正常に終了したことを確認して閉じる。

ドメインコントローラに昇格する

1台目と同様に、「このサーバーをドメインコントローラに昇格する」をクリック。
f:id:mrinzou:20210309221740p:plain

1台目との違いは、[配置構成]で「既存のドメインドメインコントローラを追加する」を選択し、ドメイン名と資格情報を入力する。
f:id:mrinzou:20210309223620p:plain

1台目と同じように、ディレクトリサービス復元モード(DSRM)のパスワードを入力して、「次へ」。

あとは基本的に次へを選択して、進める。
インストールに成功すると、自動で再起動され、ドメコンに昇格される。

いつもどこかで嵌っていたけど、今日は比較的すんなりうまくいった。( ◠ ◡ ◠ )

ESXiでゲストの時刻設定

前回、1台目のドメコンを構築したわけだが、構築完了後にゲストOSの時刻がおかしいことに気づいた。
ESXiは、vmware.pool.ntp.orgに時刻同期しているのだが、UTCで日本時間で同期してしまう。つまり9時間進んでしまっているのだ。

ESXi 現在の時刻(ただしタイムゾーンUTCとなる)
ゲストOS ESXiから引っ張ってきた時刻をJSTに変換する(9時間進む)


どうやら、ESXiはタイムゾーンの設定ができないようだ。
communities.vmware.com

そのあとESXiのイベントログとか見たら、こちらも9時間進んでいた(21/3/7 21:00ごろ執筆中)
f:id:mrinzou:20210307205945p:plain


とりあえず、BIOSの設定をUTCにしてみる。
そもそもBIOSタイムゾーンの設定がない。orz
まあ日本国内で利用する前提で販売されているししかたないか。


ホストとゲスト間で時刻同期の無効化
communities.vmware.com

この辺りにそれらしきことが書いてあったので言われた通りにやってみる。
f:id:mrinzou:20210307212424p:plain

だめだ。。。(´;Д;`)

上の文面をよく読む。

VMware Tools サービスによって、ユーザーの指定どおりに定期的時刻同期化が有効または無効になります。定期的時刻同期化を無効にしても、VMware Tools のすべての時刻同期化が無効になるわけではありません。

定期同期が無効になるだけで、起動時とかの同期はされるってことかな。

ゲスト側でNTPを設定する
普段、Win10を使っていると、会社ではドメコン、自宅のPCはtime.windows.comに時刻同期するので意識していなかったけど、仮にもサーバOSなので手動で時刻同期設定が必要なことに気づく。orz

とりあえずググって、コマンドプロンプトから設定。

C:\Windows\system32>w32tm /config /update /manualpeerlist:time.windows.com /syncfromflags:manual
コマンドは正しく完了しました。

レジストリも以下のように変わったようだし、いったんサーバ再起動。
f:id:mrinzou:20210307215638p:plain

やっぱりだめ。orz


もうちょっとぐぐって、コマンドを変えてみる。

w32tm /config /update /manualpeerlist:ntp.nict.jp,0x8 /syncfromflags:manual /reliable:YES

ふたたび再起動。やっぱりだめ。orz

ーーーーーーーーー結論ーーーーーーーーーー

HWクロックを9時間遅らせる。
これがベストとは到底思えないが、別にESXiのNTPの設定をしたいわけではないので、ここで妥協しておく。(´・ω・`)
やりたいのはドメコンのリプレース検証なので。。