03 sept. 20262 min de lecture
Des scripts Windows pour déployer un AD/DNS
Littéralement un bloc note en ligne de scripts Windows
intro#windows#admin#devops
2. Script pour le Contrôleur de Domaine (srv-02)
Exécute ce bloc dans une console PowerShell Administrateur sur srv-02 :
# 1. Activation de WinRM
Enable-PSRemoting -Force
# 2. Installation des rôles AD DS et DNS
Install-WindowsFeature -Name AD-Domain-Services, DNS -IncludeManagementTools
# 3. Promouvoir le serveur en Contrôleur de Domaine
$secPassword = ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force
Import-Module ADDSDeployment
Install-ADDSForest `
-DomainName "formation.local" `
-SafeModeAdministratorPassword $secPassword `
-InstallDns:$true `
-Force:$true
(Remarque : Le serveur redémarrera automatiquement après la création de la forêt).
3. Script pour le Serveur de Fichiers (srv-01)
Exécute ce bloc sur srv-01 (remplace $DC_IP par l’IP de srv-02 sur le pod) :
$DC_IP = "192.168.140.102" # Indiquer l'IP exacte de srv-02
# 1. Pointer le DNS vers le DC
$NetAdapter = Get-NetAdapter | Where-Object Status -eq "Up" | Select-Object -First 1
Set-DnsClientServerAddress -InterfaceAlias $NetAdapter.Name -ServerAddresses $DC_IP
# 2. Activation de WinRM
Enable-PSRemoting -Force
# 3. Création du dossier et du partage SMB
New-Item -Path "C:\CorporateShares" -ItemType Directory -Force
New-SmbShare -Name "CorporateShares" -Path "C:\CorporateShares" -FullAccess "Everyone" -ErrorAction SilentlyContinue
# 4. Jonction au domaine
$secPassword = ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential("formation.local\Administrateur", $secPassword)
Add-Computer -DomainName "formation.local" -Credential $credential -Restart -Force
4. Script pour le Poste Client (Win10 / Win11 Pro)
Exécute ce bloc sur le Poste Client (remplace $DC_IP par l’IP de srv-02 sur le pod) :
$DC_IP = "192.168.140.102" # Indiquer l'IP exacte de srv-02
# 1. Politique d'exécution et TrustedHosts
Set-ExecutionPolicy RemoteSigned -Force
Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory Private
Enable-PSRemoting -Force
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*" -Force
winrm quickconfig -q
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*" -Force
# 2. Configuration DNS
$NetAdapter = Get-NetAdapter | Where-Object Status -eq "Up" | Select-Object -First 1
Set-DnsClientServerAddress -InterfaceAlias $NetAdapter.Name -ServerAddresses $DC_IP
# 3. Installation des outils RSAT (console dsa.msc)
Add-WindowsCapability -Online -Name "Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0"
# 4. Installation silencieuse de VS Code + Extension PowerShell via Winget
winget install --id Microsoft.VisualStudioCode --silent --accept-package-agreements --accept-source-agreements
$codeBin = "C:\Program Files\Microsoft VS Code\bin\code.cmd"
if (Test-Path $codeBin) {
& $codeBin --install-extension ms-vscode.PowerShell
}
# 5. Jonction au domaine
$secPassword = ConvertTo-SecureString "P@ssw0rd123!" -AsPlainText -Force
$credential = New-Object System.Management.Automation.PSCredential("formation.local\Administrateur", $secPassword)
Add-Computer -DomainName "formation.local" -Credential $credential -Restart -Force
Procédure d’exécution recommandée
- Exécute le script srv-02 en premier et laisse-le installer AD DS et redémarrer.
- Une fois srv-02 prêt, exécute le script srv-01, puis le script Client.
- Après les redémarrages automatiques, connecte-toi avec le compte
formation.local\Administrateuret le mot de passeP@ssw0rd123!.