Meilleur auteur de réponses
[RESOLU] Script d'activation Bitlocker à distance

Question
-
Bonjour à tous,
Je suis en train de tester l'activation de Bitlocker à distance sur une machine portable. Sauf erreur de ma part, ce n'est pas possible via GPO, j'ai bien vu qu'il était possible de configurer Bitlocker, mais pas de l'activer, d'où les multiples scripts que l'on trouve sur le web...
Nous avons donc concocté le notre, qui grâce aux commandes "manage-bde ..." permet d'activer Bitlocker sur les partitions C puis D, et d'enregistrer la clé de déchiffrement dans l'AD. Ce script fonctionne parfaitement, lorsqu'on l'exécute depuis une session sur une machine. (voir script ci-bas)
Problème, si on tente d'exécuter ce script au démarrage de la machine via GPO (startup script), celui-ci s'exécute avec l'utilisateur SYSTEM, et rencontre une erreur:
Impossible d'activer Bitlocker : Impossible d'obtenir la clé de chiffrement Bitlocker. Vérifiez que le module de plateforme sécurisée (TPM) est activé et que la propriété en a été acquise. Si cet ordinateur n'a pas de module de chiffrement sécurisé, vrifiez que le lecteur USB est inséré et disponible. C: n'a pas été chiffré.
Voilà deux jours que je cherche comment lancer un script autrement qu'avec l'utilisateur SYSTEM sur une machine distante.
j'ai tenté via Powershell en créant un objet "Creds" via un compte admin du domaine et un mot de passe crypté en .txt, mais ça ne fonctionne pas;ConvertirTo-SecureString : Clé non valide pour l'utilisation dans l'état spécifié ....
Auriez-vous une idée? Retour d'expérience?
Merci d'avance!
--
Le script Powershell qui lance le batch en tant qu'admin du domaine:
#Spécifier l'identifiant qui lançera le batch #Le mot de passe stocké est crypté en .txt $User = "user_admin_du_domaine" $Pwd = "path_to_password_crypte_.txt" #Construire l'objet credentials powershell pour lancer le batch $Creds=New-Object -TypeName System.Management.Automation.PSCredential ` -ArgumentList $User, (Get-Content $Pwd | ConvertTo-SecureString) #Démarrer le batch de cryptage avec les identifiants spécifiés start-process -FilePath "path_to_bitlocker_activation_script.bat" -Credential $Creds
Le batch pour activer bitlocker:
@echo OFF rem Double check si bitlocker active for /f "tokens=5 delims= " %%a IN ('manage-bde -status c: ^| FIND "Version"') DO SET ENCRYPTION-C=%%a for /f "tokens=4 delims=, " %%c IN ('manage-bde -status c: ^| FIND "Pourcentage"') DO SET POURCENTAGE-C=%%c rem securite avant execution IF EXIST "C:\Windows\Bitlocker\log_bitlocker_C.txt" GOTO :cryptageD IF NOT "%ENCRYPTION-C%" == "Aucun" GOTO :cryptageD :cryptageC rem creation des clefs de cryptage manage-bde -protectors -add c: -RecoveryPassword ping 127.0.0.1 > nul rem check si clef bien crée IF %errorlevel% neq 0 GOTO :end rem si clé bien créée, cryptage manage-bde -on C: ping 127.0.0.1 > nul rem redemarrage IF EXIST "C:\Windows\Bitlocker\log_bitlocker_C.txt" GOTO :cryptageD mkdir C:\Windows\Bitlocker ECHO Cryptage du disque C demarre a %time% le %date% >> C:\Windows\Bitlocker\log_bitlocker_C.txt shutdown -r -t 15 -c "Votre PC va redemarrer dans 15 secondes pour activer BITLOCKER" GOTO :end :cryptageD for /f "tokens=5 delims= " %%b IN ('manage-bde -status d: ^| FIND "Version"') DO SET ENCRYPTION-D=%%b rem securite avant execution IF NOT "%ENCRYPTION-D%" == "Aucun" GOTO :ends IF NOT "%POURCENTAGE-C%" == "100" GOTO :end IF EXIST "C:\Windows\Bitlocker\log_bitlocker_D.txt" GOTO :end ECHO Cryptage du disque D demarre a %time% le %date% >> C:\Windows\Bitlocker\log_bitlocker_D.txt rem creation des clefs de cryptage manage-bde -protectors -add d: -RecoveryPassword ping 127.0.0.1 > nul rem check si clef bien crée IF %errorlevel% neq 0 GOTO :end rem si clé bien créée, cryptage manage-bde -on D: Manage-bde -AutoUnlock -Enable D: :end
Cordialement, Arnaud Rire
- Modifié Arnaud Rire vendredi 7 décembre 2018 16:07
Réponses
-
Bonjour à tous,
Pour info, problème résolu en exécutant le batch d'activation de bitlocker avec psexec, en fournissant des identifiants d'un utilisateur spécifique admin du domaine (bon ok, sécurité pas terrible, mais on a joué avec les autorisations d'accès aux fichiers de la gpo qui exécute le batch)
Tout fonctionne désormais.
Suivant le batch donc, le PC enregistre sa clé de décryptage dans l'AD, écrit un log dans le C:\ de la machine, puis crypte la partition système après redémarrage. La partition D commencera son cryptage uniquement lorsque la C le sera à 100%.
(Si on attend pas les 100%, la commande "autounlock" ne passe pas, et il faut renseigner la clé de décryptage une première fois après avoir crypté la partition de données, pas pratique!...)
A+
Cordialement, Arnaud Rire
- Modifié Arnaud Rire jeudi 6 décembre 2018 17:03
- Marqué comme réponse Thameur BOURBITAMVP, Moderator lundi 10 décembre 2018 21:37
Toutes les réponses
-
Bonjour, je me permets une petite question avant de parler de la partie script.
Est-ce que le TPM est bien initialiser sur la machine (tpm.msc)?
Sinon peux-tu vérifier tous les pré-requis sur le lien ci-dessous:
http://www.metsys.fr/blog/deploiement-bitlocker-retours-dexperiences/
N'hésite pas à revenir vers moi.
Cordialement.
-
Bonjour,
TPM est bien initialisé sur nos machines de test :
J'avais déjà bien lu cet article, ainsi que d'autres :)
Les prérequis sont bien respectés...
Petite question en revanche à propos de la commande bdeHdCfg.exe -target default -quiet, effectivement nous ne l'avions pas utilisée, mais à quoi sert-elle précisément? Et nous avions pu crypter pendant nos tests un PC sans l'exécuter.
EDIT: donc visiblement cette commande permet de "préparer le disque au chiffrement bitlocker", sur tous nos postes, nous avons déjà deux partitions, une système et une données, donc c'est OK.
Merci
Arnaud
Cordialement, Arnaud Rire
- Modifié Arnaud Rire jeudi 6 décembre 2018 10:11
-
Bonjour, il me semble que cette commande n'est pas nécessaire.
Ci-dessous un script que j'ai utilisé et qui pourrais t'aider.
#Creating the recovery key
Start-Process 'manage-bde.exe' -ArgumentList " -protectors -add $env:SystemDrive -recoverypassword" -Verb runas -Wait
#Adding TPM key
Start-Process 'manage-bde.exe' -ArgumentList " -protectors -add $env:SystemDrive -tpm" -Verb runas -Wait
sleep -Seconds 15 #This is to give sufficient time for the protectors to fully take effect.
#Getting Recovery Key GUID
$RecoveryKeyGUID = (Get-BitLockerVolume -MountPoint $env:SystemDrive).keyprotector | where {$_.Keyprotectortype -eq 'RecoveryPassword'} | Select-Object -ExpandProperty KeyProtectorID
#Backing up the Recovery to AD.
manage-bde.exe -protectors $env:SystemDrive -adbackup -id $RecoveryKeyGUID
#Enabling Encryption of OS Drive
Start-Process 'manage-bde.exe' -ArgumentList " -on $env:SystemDrive -SkipHardwareTest -em aes128 -UsedSpaceOnly" -Verb runas -Wait
#Restarting the computer, to begin the encryption process
#Restart-ComputerCordialement.
-
-
Bonjour à tous,
Pour info, problème résolu en exécutant le batch d'activation de bitlocker avec psexec, en fournissant des identifiants d'un utilisateur spécifique admin du domaine (bon ok, sécurité pas terrible, mais on a joué avec les autorisations d'accès aux fichiers de la gpo qui exécute le batch)
Tout fonctionne désormais.
Suivant le batch donc, le PC enregistre sa clé de décryptage dans l'AD, écrit un log dans le C:\ de la machine, puis crypte la partition système après redémarrage. La partition D commencera son cryptage uniquement lorsque la C le sera à 100%.
(Si on attend pas les 100%, la commande "autounlock" ne passe pas, et il faut renseigner la clé de décryptage une première fois après avoir crypté la partition de données, pas pratique!...)
A+
Cordialement, Arnaud Rire
- Modifié Arnaud Rire jeudi 6 décembre 2018 17:03
- Marqué comme réponse Thameur BOURBITAMVP, Moderator lundi 10 décembre 2018 21:37
-
Bonsoir, content que ça fonctionne.
Mais attention, ce n'est pas un comportement normal surtout avec PSEXEC qui est pour moi un problème de sécurité et l'utilisation du compte admin de domaine.
Au final les PC ne sont pas admin de la machine donc ça ne peut pas marcher à distance, il faudra utiliser des outils tiers comme MBAM.
N'hésitez pas à indiquer que votre problème est résolu.
Cordialement.
-
Bonsoir, content que ça fonctionne.
Mais attention, ce n'est pas un comportement normal surtout avec PSEXEC qui est pour moi un problème de sécurité et l'utilisation du compte admin de domaine.
Au final les PC ne sont pas admin de la machine donc ça ne peut pas marcher à distance, il faudra utiliser des outils tiers comme MBAM.
N'hésitez pas à indiquer que votre problème est résolu.
Cordialement.
Bonjour,
Apparemment il n'y a pas d'autres solutions quand il s'agit d'activer Bitlocker à distance, via GPO! La seule "faille" du process, c'est qu'un mot de passe d'un compte admin du domaine figure dans le psexec, mais qu'on supprime lorsque le script est terminé.
Je vais tout de même regarder pour MBAM!
Arnaud
Cordialement, Arnaud Rire
-
Bonjour Arnaud,
Pour MBAM, il faut tenir compte de la date du fin du support prévu en Juillet 2019:
Microsoft BitLocker Administration and Monitoring 2.5 Service Pack 1
merci de ne pas oublier de marquer les réponses qui vous ont aidé à résoudre votre problème.
Please don't forget to mark the correct answer, to help others who have the same issue. Thameur BOURBITA MCSE | MCSA My Blog : http://bourbitathameur.blogspot.fr/