Les bases d’une bonne configuration Exchange – Partie 4

Les bases d'une bonne configuration Exchange (Tutorial)

Les bases d’une bonne configuration Exchange – Partie 4

Dans la première partie, nous avons fait une check-list de prérequis pour une installation sans soucis.
Dans la seconde partie, nous avons installé, puis configuré Exchange pour pouvoir envoyer des emails en interne.
Dans la troisième partie, nous avons configuré le nom d’hôte (FQDN) sur l’ensemble des répertoires virtuels Exchange et sur les connecteurs d’envoi et de réception. Nous avons configuré le nom de domaine Internet pour que les emails soient distribués à l’Exchange.

Maintenant, nous allons voir la configuration d’Exchange et du domaine pour :

  • Autodiscover (ou comment configurer Outlook de manière automatique)
  • Outlook Anywhere (synchronisation d’Outlook y compris à l’extérieur du LAN)
  • ActiveSync (synchronisation des Smartphones)

Pour cela, nous avons déjà un serveur Exchange configuré pour envoyer et recevoir des mails avec l’extérieur, et nous aurons besoin des éléments suivants (normalement, déjà déterminés dans la première partie) :

  • Nom de domaine Internet : sylvaincoudeville.fr
  • Le login et mot de passe pour configurer le nom de domaine Internet chez votre hébergeur
  • Le FQDN qui sera utilisé pour dialoguer avec le serveur Exchange : mailhost.sylvaincoudeville.fr

Le certificat

Le concept

Nous avons déjà beaucoup parlé du certificat SSL en première partie. Pour rappel, le certificat SSL a pour charge de chiffrer le trafic entre le client et le serveur.

Il existe 2 types de certificats : les autosignés et ceux signés par une autorité de certification.

Nous allons ici voir l’exemple d’un certificat signé par une autorité de certification. L’avantage de ce type de certificat est qu’il est reconnu par n’importe quel périphérique, sans étape de configuration supplémentaire.

Pour les besoins de ce tutoriel, nous commanderons un certificat de test valide 30 jours.

Prérequis

Avant de vous lancer dans la commande du certificat, assurez-vous d’avoir les éléments suivants :

  • Le FQDN (ex: mailhost.sylvaincoudeville.fr) que vous utiliserez pour contacter votre serveur Exchange
  • Une boîte aux lettres acceptant les emails pour postmaster@votredomaine.com (ex: postmaster@sylvaincoudeville.fr).
    Cette boîte recevra le certificat à installer
  • Avoir testé le fonctionnement de cette boîte afin que le certificat ne parte pas dans la nature !

Commande et installation du certificat

La commande et l’installation du certificat se font en 3 étapes :

  • Génération de la clé privée, de la clé publique et de la CSR (demande de certificat)
  • Envoi de la CSR à l’autorité de certification
  • Intégration du certificat reçu de l’autorité de certification dans le serveur et activation

Génération des clés et de la CSR

Afin de fournir une procédure valide sous Exchange 2010 et 2013, nous effectuerons ces opérations en PowerShell. Ouvrez donc un Exchange Management Shell et tapez la commande suivante :

Set-Content -path "C:\{nom-hote}.csr" -Value (New-ExchangeCertificate -GenerateRequest -KeySize 2048 -SubjectName "c={COUNTRYCODE}, s={STATE}, l={CITY}, o={ORGANIZATION}, ou={DEPARTMENT}, cn={COMMONNAME}"  -PrivateKeyExportable $True)

Voici les éléments configurables dans cette demande :

  • {nom-hote} : je vous conseille d’utiliser ici le nom d’hôte pour retrouver plus facilement le fichier CSR
  • {COUNTRYCODE} : Code Pays du certificat dans lequel il sera exécuté (ex: FR, BE, CA etc.)
  • {STATE} : Etat (au sens États-Unis du terme. Pour la france, mettre le département)
  • {CITY} : Ville
  • {ORGANIZATION} : Nom de votre société (ou votre nom si le nom de domaine est un nom de domaine perso)
  • {DEPARTMENT} : Unité d’organisation (dans le cas où votre société est organisée en départements. Pas obligatoire)
  • {COMMONNAME} : nom d’hôte que le certificat va protéger (ex: mailhost.sylvaincoudeville.fr)

Voici à quoi ressemblerait la commande pour le cas de mailhost.sylvaincoudeville.fr :

Set-Content -path "C:\mailhost.sylvaincoudeville.fr.csr" -Value (New-ExchangeCertificate -GenerateRequest -KeySize 2048 -SubjectName "c=FR, s=Gard, l=Nimes, o=Sylvain COUDEVILLE, cn=mailhost.sylvaincoudeville.fr"  -PrivateKeyExportable $True)

Une fois la commande terminée, vous pouvez ouvrir le fichier .CSR généré avec le notepad :

 

Exchange 2013 Certificat CSR

Vous devrez fournir le contenu de ce fichier à l’autorité de certification.

Commande du certificat

Comme vu dans la première partie, vous avez dû choisir un fournisseur de certificat. Nous allons faire le job avec Geotrust dans ce tutoriel.

Nous commandons donc un certificat d’essai :

Geotrust certificat SSL essai

Remplissez les différents champs demandés :

Geotrust commande certificat SSL gratuit

A l’étape suivante, confirmez que vous commandez un certificat gratuit pour 1 mois :

Geotrust commande certificat SSL gratuit 2

Maintenant, copiez et collez la totalité du contenu du fichier CSR (comme dans l’exemple) et validez :

Commande certificat SSL gratuit CSR

Dans la page suivante, contrôlez les informations contenues dans la demande de certificat (si une erreur est présente, recommencez l’opération du début (commande PowerShell) et cliquez sur « Remplacer CSR » pour intégrer la CSR corrigée :

Commande certificat SSL gratuit validation CSR

Maintenant donnez les informations sur les contacts administratifs et technique de votre entreprise (ces contacts seront contactés par email pour valider la demande de certificat) :

Contacts commande certificat ssl gratuit

Enfin, choisissez l’adresse sur laquelle la demande de confirmation de commande du certificat sera reçue (cette adresse sert à valider que vous êtes le propriétaire du domaine) :

Finalisation commande certificate geotrust gratuit

Vérifiez ensuite une dernière fois votre « commande », lisez les conditions avant de valider :

Commande certificat SSL gratuit finalisation

Une procédure d’authentification par téléphone sera peut-être nécessaire. Veuillez la suivre.

Une fois la procédure terminée, vous recevrez un email avec un lien pour confirmer la commande :

Lien confirmation commande certificat SSLCliquez sur le lien et approuvez la commande :

approbation commandePatientez ensuite un petit peu et vous allez recevoir votre certificat par Email. Copier et collez le certificat dans un notepad (la partie entourée) :

Certificat reçu par mailEt enregistrez-le dans un dossier avec l’extension CRT ou CER :

certificat.cer .crt geotrust

Finalisation de la création du certificat dans Exchange et activation

Ouvrez votre EMS, et tapez les commandes suivantes pour terminer le certificat et l’activer :

Import-ExchangeCertificate -FileName C:\temp\mailhost.sylvaincoudeville.fr.crt

Thumbprint                                Services   Subject
----------                                --------   -------
48A32480A0BE38F9A093DE4C25811ACD3D50EB7C  .......    CN=mailhost.sylvaincoudeville.fr, OU=Domain Control Validated -...

La première commande vous retourne le Thumbprint (empreinte) du certificat : copiez cette valeur pour l’utiliser dans la seconde commande:

Enable-ExchangeCertificate -Thumbprint 48A32480A0BE38F9A093DE4C25811ACD3D50EB7C -Services "SMTP,IMAP,POP,IIS" -Confirm:$false

Redémarrez le serveur Exchange pour être tranquille, et accédez à votre OWA.
Comme par magie, il n’y a plus d’erreur de certificat (la barre d’adresse n’est plus rouge, non plus) :

HTTPS sans erreur de certificat

Note : Si vous voulez une barre verte comme certains sites, il vous faudra faire l’acquisition d’un certificat avec Validation Étendue (Extended Validation).
C’est plus cher, et l’autorité de certification va vous demander des documents prouvant que vous existez vraiment : ils ne se contenteront pas de vérifier que vous êtes propriétaire du nom de domaine.

L’enregistrement SRV pour Autodiscover

Autodiscover : comment ça marche

Je vais vous faire un résumé du fonctionnement d’Autodiscover.
Tout d’abord, ce protocole est destiné à l’autoconfiguration d’Outlook.

Le principe est que l’utilisateur ne doit retenir que 2 choses : son login (adresse email), et son mot de passe. C’est la magie de l’informatique qui doit faire le reste pour lui.

Le protocole Autodiscover va, à partir du nom de domaine, rechercher les informations nécessaires à la configuration. Pour cela, ce protocole va interroger le domaine de la manière suivante:

  • SCP (recherche dans l’Active Directory)
  • https://domain.com/autodiscover/autodiscover.xml
  • https://autodiscover.domain.com/autodiscover/autodiscover.xml
  • Enregistrement SRV _autodiscover._tcp.domain.com

C’est un résumé, le process un peu plus complexe (voir ici pour un article complet : http://blogs.technet.com/b/kristinw/archive/2013/04/19/controlling-outlook-autodiscover-behavior.aspx).

Dans le cas d’un Outlook joint et loggué sur le domaine, on voit que SCP va faire le job : super, rien à faire!
Par contre, si l’Outlook est hors domaine, ou en dehors des limites du LAN, c’est la pagaille !

Je ne connais personne qui ne possède pas de site Internet sur son domaine : du coup, la méthode par https://domain.com/autodiscover/autodiscover.xml est à oublier. Ou bien il faudrait créer un dossier autodiscover et un fichier autodiscover.xml à la main, et l’uploader sur le site.

Ensuite, en PME, on ne va pas se payer un certificat SSL pour le nom ‘mailhost.domain.com’ et pour ‘autodiscover.domain.com’ juste pour faire plaisir à la 2nde URL (https://autodiscover.domain.com/autodiscover/autodiscover.xml).

Du coup, on va créer un enregistrement SRV sur le domaine.

Création de l’enregistrement

Comme pour les enregistrements A et MX effectués dans la 3ème partie, connectez-vous à l’interface d’administration de votre domaine Internet et créez un enregistrement de type SRV :

Création enregistrement SRV autodiscover

Le principe de cet enregistrement est de définir le service « autodiscover », qui fonctionne en TCP. On indique qu’autodiscover est situé à l’adresse mailhost.sylvaincoudeville.fr, accessible via le port 443 (https).

De la même manière que l’enregistrement MX ou A, il faudra patienter le temps du refresh du domaine (nslookup -q=SOA domaine.com) afin d’être sûr que cet enregistrement est valide sur l’ensemble d’Internet.

Activation OutlookAnywhere

A quoi ça sert?

OutlookAnywhere est un protocole permettant à un Outlook qui est habituellement connecté au LAN privé, et qui utilise Active Directory, de pouvoir se synchroniser aussi à l’extérieur de l’entreprise.

C’est cette fonctionnalité qui doit être activée pour que des postes hors domaine puissent utiliser Outlook de manière correcte.

Configuration pour Exchange 2010

Pour activer OA (OutlookAnywhere), ouvrez un EMS (Exchange Management Shell) :

Enable-OutlookAnywhere -Server 'EXCH2013' -ExternalHostname 'mailhost.sylvaincoudeville.fr' -DefaultAuthenticationMethod 'Basic' -SSLOffloading $false

Maintenant, il faut patienter 15 minutes afin que la fonctionnalité s’active.

Configuration pour Exchange 2013

Pour configurer OA (OutlookAnywhere), ouvrez un EMS (Exchange Management Shell) :

Get-OutlookAnywhere|Set-OutlookAnywhere -ExternalHostname 'mailhost.sylvaincoudeville.fr' -InternalHostname 'mailhost.sylvaincoudeville.fr' -ExternalClientsRequireSsl $true -InternalClientsRequireSsl $false

On peut améliorer la sécurité en passant le paramètre ‘InternalClientsRequireSsl’ à $true.

Maintenant, il faut patienter 15 minutes afin que la fonctionnalité s’active.

Configuration Outlook

Nous allons voir ici la configuration d’Outlook hors et dans un domaine.

Vous verrez que la jonction au domaine est vraiment un énorme plus. Alors, par pitié, arrêtez de travailler hors domaine !

Outlook dans le domaine

Prenons une machine jointe au domaine monAD.local, et logguée sur le domaine (utilisateur MONAD\s.coudeville, dans notre exemple) et lançons Outlook:

Config Outlook Exchange domaine 1

On configure… rien, tout s’est saisi seul :

Config Outlook Exchange domaine 2

Et à l’étape suivante, tout se valide sans erreur (car nous avons tous bien travaillé!) :

Config Outlook Exchange domaine 3

Et c’est terminé !

Tout va se connecter, pas de prompt du nom d’utilisateur/mot de passe, pas d’erreur de certificat !

Essayez maintenant d’utiliser cette machine et cette session en dehors du LAN de l’entreprise : cela fonctionnera aussi !

Outlook hors domaine

Maintenant, nous allons prendre une autre machine, hors domaine avec un compte local et lancer Outlook :

Config Outlook Exchange hors domaine 1

Et maintenant, on saisit adresse email, et mot de passe :

Config Outlook Exchange hors domaine 2

Grâce au DNS bien configuré (enregistrement SRV), Outlook trouve le service Autodiscover au bon endroit :

Config Outlook Exchange hors domaine 3

Maintenant, il faut saisir le login et mot de passe Active Directory (MONAD\scoudeville) :
Config Outlook Exchange hors domaine 4

Il faudra peut-être ressaisir les informations plusieurs fois. Si tout est OK, la configuration devrait se terminer sans erreur :
Config Outlook Exchange hors domaine 6

Et c’est terminé.

Par contre, l’utilisateur se verra demander son login et mot de passe de domaine à chaque ouverture d’Outlook (si vous ne le stockez pas).

Note: Si vous devez jouer avec les paramètres avancés du compte, c’est que vous avez loupé quelque chose dans les étapes précédentes, ou que vous avez voulu faire l’économie sur quelque chose!

Configuration ActiveSync

Ce chapitre sera un des plus courts.

En effet, la configuration ActiveSync a été réalisée dans la 3ème partie, avec la commande Set-ActiveSyncVirtualDirectory, afin de définir les FQDN interne et externe.

Maintenant, il ne reste qu’à paramétrer les smartphones. Et grâce à l’Autodiscover (selon l’OS du téléphone), la configuration sera relativement simple !

Conclusion

C’est la fin de ce tutoriel.

Nous avons pu voir le long de ces 4 parties les prérequis et les différentes étapes de configuration pour obtenir un Exchange qui fonctionne correctement.

Voici un petit rappel des éléments essentiels à une bonne configuration Exchange :

  • Choisir un nom d’hôte pour le serveur, routable sur internet (ex: mail.masociete.com)
  • Effectuer la configuration avec uniquement ce nom d’hôte (InternalUrl, ExternalUrl)
  • Acheter un certificat auprès d’une Autorité de certification afin que le certificat soit reconnu depuis n’importe quel périphérique (sans configuration supplémentaire)
  • Joindre vos machines au domaine !

Et maintenant, une check-list de configuration dans l’ordre pour une mise en production :

  • Choisir le nom d’hôte
  • Choisir le fournisseur de certificat (Autorité de certification)
  • Vérifier que l’on possède les codes d’accès du routeur
  • Vérifier que l’on possède les codes d’accès pour la configuration du nom de domaine Internet
  • Demander une IP publique fixe auprès du FAI
  • Configuration IP du serveur
  • Joindre le serveur au domaine
  • Installer les pré-requis Exchange
  • Mise à jour Windows Update
  • Installer Exchange
  • Mise à jour Windows Update
  • Configurer les noms de domaines acceptés sur Exchange
  • Créer la stratégie d’adresse de messagerie
  • Création des comptes de messagerie
  • Créer le connecteur d’envoi
  • Configurer le connecteur de réception
  • Ouverture et redirection des ports 25 et 443 (tcp)
  • Effectuer un test de réception d’email via Putty (depuis Internet, vers l’Exchange, en utilisant l’IP publique pour communiquer)
  • Effectuer un test d’envoi d’email (depuis OWA vers Internet)
  • Configuration du FQDN dans Exchange (InternalUrl, ExternalUrl)
  • Création d’une zone de même nom que le FQDN dans le DNS privé (pour le Split-Brain DNS)
  • Déclaration du A et du MX sur le nom de domaine Internet
  • Déclaration du SRV pour Autodiscover sur le nom de domaine Internet
  • Attendre le délai de refresh du domaine
  • Vérifier que le FQDN est résolu correctement depuis Internet et depuis le LAN
  • Création du certificat SSL auprès de l’autorité de certification
  • Activer OutlookAnywhere
  • Configuration des postes et smartphones

J’espère que ce tutoriel vous aidera dans vos configurations d’Exchange.

21 réflexions sur “Les bases d’une bonne configuration Exchange – Partie 4

  1. Pingback: Les bases d’une bonne configuration Exchange – Partie 3 | Sylvain COUDEVILLE
  2. Pingback: Les bases d’une bonne configuration Exchange – Partie 1 | Sylvain COUDEVILLE
  3. Après plusieurs recherches sur Internet sur des installations propres d’Exchange 2013, je dois dire que ton tutoriel est excellent et extrêmement bien détaillé !
    Juste une petite chose qui je pense aurai du être mis dans ton tuto (Partie 2), la préparation de l’Active Directory, avant l’installation d’Exchange. Ce qui donne (à exécuter sur le Serveur Active Directory) :
    1. Setup.exe /PrepareSchema /IAcceptExchangeServerLicenseTerms
    2. Setup.exe /PrepareAD /OrganizationName: » » /IAcceptExchangeServerLicenseTerms
    3. Setup.exe /PrepareAllDomains /IAcceptExchangeServerLicenseTerms

    Bravo et merci pour tout ça !

    • Bonsoir Lythom,
      Merci pour ce commentaire.
      Je suis d’accord avec toi sur les commandes : elles sont même obligatoires dans le cadre d’un Active Directory multi-site ou multi-serveur.
      Cependant, dans le cas d’une architecture simple (comme dans ce tutoriel), le Setup d’Exchange 2013 effectue correctement ces manipulations à notre place.

      Il ne faut pas oublier que chez Microsoft, si un assistant existe pour une tâche, il vaut mieux l’utiliser plutôt que de la faire soi-même (et ça tombe bien, car nous sommes fainéants !

  4. Merci pour ce magnifique tutoriel !!
    Comme Lythom, j’ai fait pas mal de recherche de tutoriel et le tien est parfait.

    Il faudrait je pense que tu supprimes la commande « Get-ReceiveConnector | Set-ReceiveConnector … » de l’encadré dans la partie 3 car tu reviens dessus dans <>

    Encore merci.

  5. Bonjour,

    Merci pour le tuto.

    Pensez-vous aussi parler des la tailles des pièces jointes et le déplacement de la base de données?

    Merci encore.

  6. bonjour,
    comment gérer les problèmes chez orange business.
    je m’explique,orange est en train de modifier sa politique d’envois de mails et bride l’envois avec l’adresse mail ( l’adresse d’expedition doit être la même que celle servant à l’authentification). si mon connecteur smtp envois avec l’authentification du compte « toto@orange.fr » les utilisateurs de mon domaine (@mondomaine.fr) ne peuvent plu envoyer.
    de plus un problème survien depuis peu, aussi chez orange busines, c’est le problème « over quota » qui limite donc les connecteur à 1500 mails/jour.
    si vous avez une solution pour ce genre de problème je suis preneur,orange met en place cette nouvelle politique à partir de septembre 2015.
    d’avance merci pour la réponse

    • Bonjour,

      Pour outre-passer votre problème, il faut que vous utilisiez le mode « Enregistrement MX associé au domaine du destinataire » au lieu de SmartHost dans votre connecteur d’envoi.
      Avec ce mode, vous distribuerez les emails directement sur les serveurs de messagerie de vos destinataires, sans passer par les serveurs d’Orange.
      Par contre, cela nécessite que plusieurs pré-requis soient respectés (comme indiqués dans la partie 3 du tutoriel):
      – IP publique fixe non référencée comme blacklistée
      – Reverse de l’IP publique qui pointe sur votre domaine (ex: 1.2.3.4 -> mail.mondomaine.fr)
      – Vérifier que le port 25 ne soit pas bridé en sortie par Orange

      En passant à ce mode, vous devenez autonome de la distribution des emails.

      Espérant avoir répondu à votre question

  7. Bonjour,
    Merci beaucoup pour ce tutoriel.
    En revanche j’ai un soucis quand je mets mon certificat, Outlook 2007/2013 ne veux plus se connecter :
    Un problème s’est produit au niveau du certificat de sécurité du serveur proxy. Le nom sur le certificat de sécurité n’est pas valide ou ne correspond pas au nom du site cible xxx.domain.fr
    Outlook ne peut pas se connecter au serveur proxy. (Code erreur 10).

    Et effectivement, la cible qu’il m’annonce n’est pas bonne, comment la modifier ?

    Par avance merci beaucoup

    • Bonjour,
      Ceci est un problème de paramétrage Outlook. Allez dans les paramètres avancés du compte, dernier Onglet, paramètres proxy HTTP Exchange et vérifiez le nom d’hôte. Vous devriez avoir « msstd:votrefqdnpublic.tld »

  8. Bonjour Sylvain,
    J’ai configuré mon domaine pour l’autodiscover pour ajouté l’enregistement srv.

    Ensuite en POWER SHELL j’ai tapé la commande :
    Get-OutlookAnywhere|Set-OutlookAnywhere -ExternalHostname ‘mail.toto.fr’ -InternalHostname ‘mail.toto.fr’ -ExternalClientsRequireSsl $true -InternalClientsRequireSsl $false

    Mais j’ai un retour en erreur :
    Pour configurer la fonctionnalité Outlook Anywhere avec un élément ExternalHostname, vous devez également spécifier le
    paramètre DefaultAuthenticationMethod ou ExternalClientAuthenticationMethod.
    + CategoryInfo : InvalidArgument : (SRV-EXCH\Rpc (Default Web Site):ADObjectId) [Set-OutlookAnywhere], Ar
    gumentException
    + FullyQualifiedErrorId : [Server=SRV-EXCH,RequestId=224021e6-2dc5-474c-9ef8-dafb483d39fb,TimeStamp=20/10/2015 09:
    57:43] [FailureCategory=Cmdlet-ArgumentException] E5E209B6,Microsoft.Exchange.Management.SystemConfigurationTasks.
    SetRpcHttp
    + PSComputerName : srv-exch.toto.fr

    Je pense qu’il faut rajouter comme la commade exchange 2010, mais celle ne fonctionne pas.

    Savez vous me dire ou la modifier ?

    Merci pour votre retour.

    • Edit : Je pense qu’il faut ajouté -DefaultAuthenticationMethod ‘Basic’ -SSLOffloading $false comme pour la commande exchange 2010, mais celle ci ne fonctionne pas.

  9. J’ai modifié les paramètres via la console ECP, cela fonctionne correctement maintenant via l’autodiscover sur un poste en workgroup depuis l’extérieur.
    Néanmoins l’auto-discover ne fonctionne pas depuis un IPHONE ou un android, existe-t-il ‘autre paramètres pour les périphériques mobiles . ( pour info si je rentre les paramètres serveur manuellement )

    A savoir que je n’ai certificat autosigné pour mon exchange 2013 qui correspond au nom FQDN mail.toto.fr

    • Bonjour,
      Est-ce que vous avez créé l’enregistrement SRV dans le DNS public de votre domaine (_autodiscover._tcp.mondomaine.fr) ?
      Car c’est lui qui va permettre l’autodiscover depuis l’extérieur.
      Après, selon les OS des Smartphones, il faudrait peut-être créer un CNAME autodiscover.mondomaine.fr qui pointe vers votre serveur (et modifier le certificat en fonction) pour que tous les smartphones s’autoconfigurent.

      • Bonjour Sylvain,

        Oui j’ai bien créé un enregistrement srv avec comme nom de service autodiscover sur un hôte mail.toto.fr.
        J’ai l’est vérifié via la commande nslookup ;
        nslookup
        set q=srv
        _autodiscover._tcp.toto.fr

        Je vais créer un enregistrement cname, pouvez-vous me confirmer quel nom de mon enregistrement cname et bien mail.toto.fr ? ( le nom Fqdn de mon serveur externe ? )

        Merci pour votre retour.

        Cordialement

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *