Complete Active Directory teaching environment based on dockurr/windows: - Windows Server domain controller, Windows 11 client, Debian 12 client - docker-compose orchestration, env-driven configuration - Bilingual documentation (FR + EN) for students - Dual approach (GUI + PowerShell) in every procedure - Instructor course plan and reference scripts - RDP launcher scripts for Linux, macOS and Windows Made by AcadéNice - https://acadenice.fr/
156 lines
4.5 KiB
Markdown
156 lines
4.5 KiB
Markdown
# Résolution des problèmes courants
|
|
|
|
Ce document recense les pièges rencontrés lors de la mise en place du lab.
|
|
|
|
## Installation Windows bloquée
|
|
|
|
Symptôme : l'interface http://localhost:8006 reste sur l'écran de
|
|
téléchargement de l'ISO.
|
|
|
|
Causes possibles :
|
|
|
|
- Connexion internet lente ou coupée (l'ISO pèse plusieurs Go)
|
|
- Stockage insuffisant sur le disque hôte
|
|
- Filesystem `btrfs` sur le volume `/storage` (dockurr le signale, rarement
|
|
bloquant en lab)
|
|
|
|
Vérifie `docker compose logs -f dc01` et relance si besoin.
|
|
|
|
## /dev/kvm inaccessible
|
|
|
|
Symptôme : `KVM acceleration not available` dans les logs dockurr.
|
|
|
|
Causes :
|
|
|
|
- Virtualisation désactivée dans le BIOS
|
|
- Ton utilisateur pas dans le groupe `kvm`
|
|
- WSL2 sans virtualisation imbriquée (Windows)
|
|
|
|
Solutions :
|
|
|
|
- Linux : `sudo usermod -aG kvm $USER` puis reconnexion
|
|
- Windows : éditer `%USERPROFILE%\.wslconfig` avec `nestedVirtualization=true`
|
|
- macOS Apple Silicon : non supporté, utilise UTM
|
|
|
|
## Rename-Computer refuse l'auth
|
|
|
|
Symptôme : `Rename-Computer : ... Le nom d'utilisateur ou le mot de passe est incorrect.`
|
|
|
|
Ça arrive sur une installation fraîche, avant même toute jonction domaine. Le
|
|
cmdlet tente une authentification locale qui échoue pour une raison obscure.
|
|
|
|
Solutions :
|
|
|
|
- Utiliser la GUI : `sysdm.cpl > Modifier`
|
|
- Passer par le registre :
|
|
```
|
|
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name "Hostname" -Value "NOUVEAU"
|
|
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters" -Name "NV Hostname" -Value "NOUVEAU"
|
|
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" -Name "ComputerName" -Value "NOUVEAU"
|
|
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName" -Name "ComputerName" -Value "NOUVEAU"
|
|
Restart-Computer -Force
|
|
```
|
|
|
|
## Add-Computer : "l'ordinateur se trouve déjà dans ce domaine"
|
|
|
|
Le PC a un état domaine partiel (suffixe DNS, workgroup portant le même nom
|
|
que le NetBIOS du domaine, jonction antérieure). Sort d'abord proprement :
|
|
|
|
```
|
|
Add-Computer -WorkgroupName "WORKGROUP" -Force
|
|
Restart-Computer -Force
|
|
```
|
|
|
|
Si `Remove-Computer` échoue avec `Le mappage entre les noms de compte et les
|
|
ID de sécurité n'a pas été effectué`, force via WMI :
|
|
|
|
```
|
|
$cs = Get-WmiObject Win32_ComputerSystem
|
|
$cs.UnjoinDomainOrWorkgroup($null, $null, 0)
|
|
Restart-Computer -Force
|
|
```
|
|
|
|
## RDP refuse l'utilisateur AD
|
|
|
|
Symptôme : `ERRCONNECT_CONNECT_TRANSPORT_FAILED` après NLA côté freerdp, ou
|
|
"accès refusé" côté mstsc.
|
|
|
|
Cause : par défaut, seul le groupe local `Administrateurs` a le droit RDP.
|
|
Les utilisateurs du domaine ne l'ont pas.
|
|
|
|
Solution sur le poste :
|
|
|
|
```
|
|
Add-LocalGroupMember -Group "Utilisateurs du Bureau à distance" -Member "CORP\pmartin"
|
|
```
|
|
|
|
En production, on le pousse via GPO sur toutes les machines.
|
|
|
|
## "Le mot de passe doit être changé" via freerdp
|
|
|
|
Symptôme : `ERRCONNECT_PASSWORD_MUST_CHANGE`.
|
|
|
|
freerdp avec NLA ne sait pas afficher l'écran de changement. Deux options :
|
|
|
|
- Désactiver la mention côté DC :
|
|
```
|
|
Set-ADAccountPassword -Identity pmartin -Reset -NewPassword (ConvertTo-SecureString "NewP@ss!2026" -AsPlainText -Force)
|
|
Set-ADUser -Identity pmartin -ChangePasswordAtLogon $false
|
|
```
|
|
- Ou bypass NLA :
|
|
```
|
|
xfreerdp3 /sec:rdp ...
|
|
```
|
|
|
|
## realm discover ne répond rien
|
|
|
|
Causes :
|
|
|
|
- Le conteneur `linux01` n'a pas le bon DNS (vérifier `/etc/resolv.conf`)
|
|
- Le DC ne répond pas sur le port 53
|
|
- `dbus` n'est pas démarré dans le conteneur :
|
|
```
|
|
dbus-daemon --system --fork
|
|
```
|
|
|
|
## sssd ne démarre pas
|
|
|
|
Symptôme : `Invalid option -f: unknown option` quand `realm join` lance
|
|
`service sssd restart`.
|
|
|
|
Contexte : les images docker sans init complet (pas de systemd). Lance sssd
|
|
manuellement :
|
|
|
|
```
|
|
/usr/sbin/sssd --daemon
|
|
```
|
|
|
|
## L'utilisateur AD n'est pas résolu côté Linux
|
|
|
|
```
|
|
id pmartin@corp.lab
|
|
# "no such user"
|
|
```
|
|
|
|
Causes fréquentes :
|
|
|
|
- sssd pas démarré (voir ci-dessus)
|
|
- Cache sssd désynchronisé : `sss_cache -E`
|
|
- Le domaine n'apparaît pas dans `realm list` : la jonction a échoué
|
|
silencieusement, relance `realm join -v`
|
|
|
|
## Partage inaccessible depuis un client
|
|
|
|
- L'utilisateur n'est pas membre du groupe DL : `Get-ADGroupMember DL_Partage_Commun_R`
|
|
- Le token Kerberos n'a pas été rafraîchi : déconnexion / reconnexion
|
|
- ACL NTFS restrictive : vérifier via `Get-Acl` ou onglet Sécurité
|
|
|
|
## Reset complet du lab
|
|
|
|
Pour repartir de zéro sans toucher au reste de ton système :
|
|
|
|
```
|
|
docker compose down -v
|
|
rm -rf ./storage-dc01 ./storage-pc01
|
|
docker compose up -d dc01
|
|
```
|