前提
- Windwos Server 2022 Standard で動作確認済み
- 下記内容を.ps1ファイルを作成するなどして、複数サーバで実施することを想定 (構築時間短縮のため)
PowerShell command
Windowsファイアーウォールの無効化
# すべてのプロファイルの状態を「無効」にする
netsh advfirewall set allprofiles state off
# すべてのプロファイルの状態を確認する
netsh advfirewall show allprofiles
※こちらは、別途ファイアーウォールの導入が前提なので注意
IP/DNSサーバの設定
# Ethernet0 のIP設定
netsh interface ip set address Ethernet0 static <IP> <MASK> <DefaultGateway>
# Ethernet0 へのDNSサーバの設定
netsh interface ip set dns Ethernet0 static <DNS IP> primary
# Ethernet0 へのDNSサーバの設定 (secondary 必要に応じて)
netsh interface ip add dns Ethernet0 <DNS IP>
# Ethernet0 へのDNSサフィックス設定 (必要に応じて)
Set-DnsClient "Ethernet0" -ConnectionSpecificSuffix <DNS Suffix>
# IP情報を確認する
ipconfig /all
コンピュータ名の変更
# コンピュータ名の変更 (反映にはOS再起動が必要)
Rename-Computer -NewName <新しいコンピュータ名>
# コンピュータ名の確認
(Get-ComputerInfo).CSName
Administratorユーザのパスワード変更とアカウント追加
# Administratorユーザのパスワード変更
net user Administrator <新しいパスワード>
# アカウントの追加
net user <アカウント名> <パスワード> /add /FULLNAME:"<フルネーム>" /COMMENT:"<コメント>"
# 追加したアカウントのパスワード無期限化
wmic useraccount where "Name='<アカウント名>'" set PasswordExpires=FALSE
# 追加したアカウントのAdministratorsグループへの追加
net localgroup Administrators <アカウント名> /add
Windowsライセンスアクティベート
# ライセンスキー登録
cscript C:\Windows\System32\slmgr.vbs /ipk <ライセンスキー>
# ライセンス認証
cscript C:\Windows\System32\slmgr.vbs /ato
自動WindowsUpdateの無効化
レジストリを編集する方法であればコマンド化でるが、その場合はグループポリシー上には反映されない。
(グループポリシー上は「未構成」というステータスだが、レジストリ上では「無効」という状態になる)
→ のちのちサーバの現状を把握する上で問題になりそうなので、これはやらないほうが良いと思う。
主要なソフトウェアのインストール
WinGetをインストールして使うと良いみたいですね。ここでは割愛します。
winget ツールを使用したアプリケーションのインストールと管理
https://learn.microsoft.com/ja-jp/windows/package-manager/winget/
参照
Windows のコマンド
https://learn.microsoft.com/ja-jp/windows-server/administration/windows-commands/windows-commands
PowerShell Module Browser
https://learn.microsoft.com/en-us/powershell/module/?view=windowsserver2022-ps
ボリューム ライセンス認証情報を取得するための Slmgr.vbs オプション
https://learn.microsoft.com/ja-jp/windows-server/get-started/activation-slmgr-vbs-options