# Déploiement du candidat production ## 1. Préparer les fichiers locaux propres au poste Le matériel reste local : ```text /etc/nixos/hardware-configuration.nix ``` Pour une nouvelle création du compte `alice`, aucun fichier de secret local n'est nécessaire dans ce lab. Le mot de passe temporaire est déclaré dans `modules/users.nix` : ```text LaboTest@1980 ``` Avec `users.mutableUsers = true`, il sert à la création initiale du compte puis le mot de passe choisi par l'utilisateur est conservé. > En vraie production, le dépôt étant privé, la stratégie de mot de passe initial pourra être adaptée sans modifier le fonctionnement de l'assistant. ## 2. Remplacer l'ancien assistant La version production utilise : ```text modules/workstation-setup.nix workstation-setup/ ``` L'ancien `modules/yubikey-first-login.nix` et l'ancien frontend d'aperçu `modules/first-login-ui.nix` / `first-login-ui/` ne doivent plus être importés. `modules/security.nix` reste utilisé. ## 3. Construire sans activer ```bash cd ~/nixos-workstations sudo nixos-rebuild build \ -I nixos-config=/home/localadm/nixos-workstations/configuration.nix ``` ## 4. Examiner l'activation ```bash sudo nixos-rebuild dry-activate \ -I nixos-config=/home/localadm/nixos-workstations/configuration.nix ``` ## 5. Activer temporairement ```bash sudo nixos-rebuild test \ -I nixos-config=/home/localadm/nixos-workstations/configuration.nix ``` Avant de continuer, vérifier immédiatement que `localadm` fonctionne toujours. ## 6. Valider le parcours utilisateur Ouvrir une session `alice` avec la YubiKey et le PIN temporaire, puis : 1. saisir le mot de passe temporaire ; 2. choisir et confirmer le mot de passe personnel ; 3. vérifier que l'étape ne passe à YubiKey qu'après succès réel de `passwd` ; 4. saisir le PIN temporaire de la YubiKey ; 5. choisir et confirmer le nouveau PIN ; 6. vérifier qu'un mauvais PIN ne déclenche aucune nouvelle tentative automatique ; 7. terminer l'assistant ; 8. se déconnecter/reconnecter et vérifier que l'assistant ne revient plus ; 9. vérifier l'authentification YubiKey + nouveau PIN ; 10. vérifier le mot de passe local comme mécanisme de secours. Marqueurs attendus : ```text ~/.local/state/nixos-workstations/password-initialized ~/.local/state/nixos-workstations/yubikey-pin-initialized ``` ## 7. Passer réellement en production Uniquement après la validation complète : ```bash sudo nixos-rebuild switch \ -I nixos-config=/home/localadm/nixos-workstations/configuration.nix ```