Installer un certificat pour Microsoft Exchange 2010 et +
A noter : depuis Mars 2020, le protocole TLS1.2 est obligatoire : Plus d'informations
1 - Préparation
Pour installer le certificat dans Exchange 2010/2013/2016/2019, si, lors de la création de demande de certificat (CSR):
- Vous avez utilisé l'assistant Microsoft Exchange : il faut lancer la cmdlet Import-ExchangeCertificate
- Vous avez utilisé le shell Exchange : il faut lancer la cmdlet Import-ExchangeCertificate (et ne surtout pas utiliser la MMC !)
- Vous avez utilisé notre outil en ligne KeyBot : il faut générer un certificat au format PFX (bouton "Générer PFX/PEM" depuis la page statut de votre certificat)
Dans les deux premiers cas, il faut importer le certificat et toute la chaîne (format .p7b), et pas uniquement le certificat final. Ce fichier vous est proposé en tant que "fichier global d'installation" dans l'email de livraison et est disponible sur votre page statut, rubrique "Voir le certificat", et "Voir le certificat au format PKCS7".
2 - Importation du certificat
a) Importation via le shell
Pour importer un certificat au format .p7b, utilisez la syntaxe suivante : :
Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path "\\chemin\de\votre\certificat.p7b" -Encoding byte -ReadCount 0)) | Enable-ExchangeCertificate -Services "SMTP, IMAP, POP, IIS"
Importer directement un fichier PFX / P12 (#PKCS12) avec son mot de passe :
Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path c:\chemin\vers\certificat.pfx -Encoding byte -ReadCount 0)) -Password (ConvertTo-SecureString -String 'P@ssw0rd1' -AsPlainText -Force)
Pour l'exemple ci-dessus :
'P@ssw0rd1' : mettre le mot de passe défini lors de la création du PFX
Attention, il est possible qu'après cette commande, votre certificat ne soit pas installé. Dans ce cas, nous vous conseillons de suivre notre procédure d'activation manuelle suivante:
b) Activer manuellement dans exchange un certificat déjà installé
En cas d'erreur d'importation, ou lors d'une importation manuelle du certificat seul par la MMC par exemple, vous aurez alors besoin d'activer et d'associer les services exchange avec votre nouveau certificat :
Option 1 - Retrouver le numéro "Thumbprint" de votre certificat en executant la commande
Get-ExchangeCertificate -DomainName "mondomainprincipal.fr"
Copier / coller le numero "Thumbprint".
Si vous visualisez plusieurs fois le même nom de certificat, ajoutez à la fin de la commande " | fl ",
et retrouvez le dernier certificat en comparant la date d'expiration ( NotAfter : 12/04/2015)
ou son numéro de série que vous pouvez visualiser sur la page Statut de votre certificat
dans votre espace client TBS.
Get-ExchangeCertificate -DomainName "mondomainprincipal.fr" | fl
Option 2 - Retrouver le numéro "Thumbprint" de votre certificat via la MMC
Retrouvez votre certificat dans la MMC de votre serveur windows :
Executer : MMC - Ajouter un composant - Certificat : Ajouter - Compte de l'ordinateur - Ordinateur local
Retrouvez votre certificat dans l'arborescence
Certificats - Personnel - Certificat
Clique bouton droit - Afficher le "Détail"
Retrouver la valeur intitulée "Empreinte numérique"
Copiez cette valeur et dans ce qui suit collez ce numéro "Thumbprint" (en enlevant les "espaces")
3 - Activation du certificat
Enable-ExchangeCertificate applet de commande Enable-ExchangeCertificate à la position 1 du pipeline de la commande Fournissez des valeurs pour les paramètres suivants : Services: SMTP,IIS,IMAP,POP Thumbprint: CE20B70F780CDFD72878F5496931F1A8AF1798A2 Confirmer Remplacer le certificat SMTP par défaut existant ? Certificat actuel : '43B7977C504C7A84422CB815065E1DE34D52CBD3' (expiration 12/04/2015 12:42:43) Le remplacer par le certificat : 'CE20B70F780CDFD72878F5496931F1A8AF1798A2' (expiration 21/05/2016 01:59:59) [O] Oui [T] Oui pour tout [N] Non [U] Non pour tout [?] Aide (la valeur par défaut est " O ") : t
Import impossible à cause d'un certificat déjà existant
Si vous recevez un message d'erreur vous indiquant qu'il est impossible d'importer le pfx parce qu'un certificat avec la même empreinte existe déjà. Il est possible que vous ayez tenté d'installer un p7b alors que votre serveur ne possédait pas la clé privée associée au certificat. Pour résoudre ce problème, suivez notre documentation sur comment supprimer un certificat sous Windows Server.
4 - Fabriquer un PFX à partir d'Exchange (2010 et +)
Pour fabriquer un pfx vous pouvez soit rechercher le certificat via le nom de domaine, soit via le Thumbprint. Pour cela, saisissez une des deux commandes suivantes :
$file = Get-ExchangeCertificate -DomainName votre.domaine.com | Export-ExchangeCertificate -BinaryEncoded:$true -Password (Get-Credential).password
OU
$file = Export-ExchangeCertificate -Thumbprint VOTRE_THUMBPRINT -BinaryEncoded:$true -Password (Get-Credential).password
Une fois le certificat chargé à l'aide de cette commande, vous pouvez l'écrire dans un fichier à l'aide de la commande suivante :
Set-Content -Path “c:\votre-certificat.pfx” -Value $file.FileData -Encoding Byte
Vous pouvez aussi utiliser notre procédure d'export de certificat par la MMC, décrite ici : "Sauvegarder votre certificat".
5 - Cas d'erreur
"revocation check failed" / "Statut de révocation inconnu."
Ce problème vient du fait que Exchange veut vérifier la CRL à l'importation des certificats, et que si son module, qui utilise WinHTTP, n'a pas accès à internet, l'opération échoue.
Solution: Voir notre FAQ sur le support du protocole OCSP
The Certificate is Invalid for Exchange Server Usage
Ceci provient en général de l'installation d'un certificat sans la chaine de certification (.cer) via l'interface GUI. Nous recommandons d'utiliser le powershell et d'installer notre fichier .p7b.
Lorsque vous rencontrez ce souci, le mieux est de demander une refabrication et de suivre scrupuleusement nos instructions avec le powershell.
Mais vous pouvez aussi tenter l'installation manuelle de la chaine manquante.
Private key missing
Lorsque vous tentez d'activer un certificat via la console Powershell Exchange, vous rencontrez ce type de message :
Enable-ExchangeCertificate : The certificate with thumbprint XXXXXXXXX was found but is not valid for use with Exchange Server (reason: PrivateKeyMissing).
Cela provient du fait que Microsoft Exchange ne parvient pas à faire le lien entre votre certificat et la clé privée enregistré dans la base de registre.
Vous pouvez tenter une réparation avec la commande suivante (à lancer depuis un invité de commande) :
certutil -repairstore my "Numéro de série du certificat" (pour récupérer le numéro de série, rendez vous sur la page statut du certificat chez TBS)
Une fois la commande éxécutée, essayez à nouveau d'activer votre certificat avec l'applet "Enable-ExchangeCertificate"
6 - Vérifiez l'installation de votre certificat grâce à CO-PiBot
Sur votre page statut du certificat, dans votre espace client chez TBS INTERNET, Vous y trouverez un bouton "Tester l'installation" pour tester la bonne installation de votre certificat.