Aller au contenu principal

Profils itinérants et lecteurs réseau

Deux GPO du domaine FormuleSAE.local font qu'un membre retrouve son bureau et ses fichiers sur n'importe quel poste du club, avec les partages du club déjà montés.

GPOLiée àCe qu'elle fait
FSAE - Profils itinérantsOU Postes-Club (les ordinateurs)Le profil Windows de l'utilisateur est copié sur le serveur fsae-profils à la déconnexion et récupéré à la connexion
FSAE - Lecteurs réseauOU FormuleSAE → Utilisateurs (les comptes)Monte les partages Shared et cad du serveur de fichiers
Les comptes locaux ne sont pas concernés

Les profils itinérants ne marchent qu'avec un compte du domaine (FORMULESAE\…). Avec un compte local du poste (comme fsae-admin), il n'y a ni profil itinérant ni accès automatique aux partages.

Le serveur de profils fsae-profils​

ÉlémentValeur
MachineVM 130 sur formule-pve-02, Debian 13, 10.194.24.58
Nomfsae-profils.formulesae.local
Partage\\fsae-profils.formulesae.local\Profils$ (caché), dossier /srv/profils
Gestioncréée par OpenTofu (tofu/envs/prod/main.tf), configurée par Ansible (rôle samba_profils)

C'est un serveur Samba membre du domaine. Chaque utilisateur y a un dossier <compte>.V6 auquel lui seul (avec les administrateurs) a accès.

Le reconfigurer avec Ansible​

Le playbook playbooks/profils.yml du dépôt infra/infra installe Samba, règle l'heure et le DNS sur l'AD, joint le serveur au domaine et crée le dossier des profils. Le mot de passe du compte svc-join est dans un coffre Ansible chiffré, jamais dans le dépôt.

  1. Crée le coffre (une seule fois) :
    cd ansible
    ansible-vault create inventories/prod/group_vars/profils/vault.yml
    # contenu : vault_samba_join_password: "…"
  2. Lance le playbook :
    ansible-playbook playbooks/profils.yml --ask-vault-pass
  3. Le récapitulatif doit afficher failed=0.
À compléter

L'emplacement du mot de passe de svc-join et de celui du coffre Ansible dans Vaultwarden.

Ajouter un poste aux profils itinérants​

  1. Dans Utilisateurs et ordinateurs Active Directory, clic droit sur le poste → Déplacer… → Postes-Club.
  2. Sur le poste, dans un terminal administrateur : gpupdate /force, puis redémarre.

Le profil d'un utilisateur est copié sur le serveur à sa déconnexion : il faut se déconnecter (pas seulement verrouiller) pour le retrouver sur un autre poste.

Les lecteurs réseau​

LecteurPartage
S:\\fsae-fs.formulesae.local\Shared
P:\\fsae-fs.formulesae.local\cad

Ils sont définis dans la GPO FSAE - Lecteurs réseau, User Configuration → Preferences → Windows Settings → Drive Maps, avec l'action Update. On utilise le nom du serveur et pas son IP (10.194.24.12) : avec le nom, Windows s'authentifie en Kerberos.

Pas de mot de passe dans une GPO

Laisse toujours vide la partie Connect as d'un lecteur : un mot de passe enregistré dans une GPO est lisible par tous les comptes du domaine.

Vérifier depuis un poste​

Avec un compte du domaine, dans PowerShell :

CommandeRésultat attendu
whoamiformulesae\<compte>, pas <poste>\…
gpresult /r /scope computerFSAE - Profils itinérants dans les objets appliqués
reg query "HKLM\SOFTWARE\Policies\Microsoft\Windows\System" /v MachineProfilePath\\fsae-profils.formulesae.local\Profils$\%USERNAME%
Test-NetConnection fsae-profils.formulesae.local -Port 445TcpTestSucceeded : True
klist get cifs/fsae-profils.formulesae.localUn ticket est récupéré

Problèmes connus​

SymptômeCauseSolution
Événement 1521 « Windows ne peut pas trouver de copie serveur de votre profil itinérant »Le réseau n'était pas prêt à l'ouverture de session, ou le compte est localActive Always wait for the network at computer startup and logon (Computer Configuration → Administrative Templates → System → Logon) et connecte-toi avec un compte du domaine
net use demande un nom d'utilisateurSession ouverte avec un compte localDéconnecte-toi et reconnecte-toi avec FORMULESAE\<compte>
Permission denied dans les journaux Samba pour un compte de groupe 10515C'est le compte de l'ordinateur qui sonde le partageNormal, sans effet sur les profils
La jonction de fsae-profils au domaine échoueDebian n'envoie pas les noms en .local au DNS de l'ADLe rôle Ansible déclare le domaine à systemd-resolved avant la jonction