Exchange 2013/2016 : migration vers Exchange 2019

Exchange 2013Exchange 2016Exchange 2019

Introduction

Dans ce tutoriel, je vais vous expliquer comment effectuer une migration Exchange 2013/2016 vers Exchange 2019.

Une migration d’Exchange est quelque chose qui peut faire peur mais qui est relativement simple sous 2 conditions :

  • PrĂ©parer la migration en s’aidant d’un aide-mĂ©moire par exemple.
  • Que l’environnement de dĂ©part (Exchange 2013/2016) est Ă©tĂ© correctement installĂ© et configurĂ© (ce qui n’est pas toujours le cas …)

Les captures du tutoriel ont été effectuées sur Exchange 2013. La procédure est identique avec Exchange 2016.

Dans ce tutoriel, je dĂ©taille la partie migration, certains points seront Ă  faire en pointant vers d’autre tutoriel.

Environnement de départ

Avant de commencer, il est nécessaire de bien maitriser son environnement de départ. Pour ce lab le voici :

  • Environment Acive Directory sans problème.
  • Un serveur Exchange 2013 installĂ© sur Windows Server 2012R2.

Les boites aux lettres qui seront migrées :

Pour que la migration puisse se faire dans de bonne condition, il est impĂ©ratif que les services Exchange utilisent une URL personnalisĂ©e du type mail.domaine.tld et non l’adresse du serveur.

Si ce n’est pas le cas, configurer les URL dans Exchange.

Sur la capture ci-dessous, on peut voir l’enregistrement DNS mail.lab.priv qui pointe sur la mĂŞme adresse IP que le serveur Exchange de dĂ©part.

ÉlĂ©ment facultatif, mais qui facilite par la suite la migration est d’avoir renommĂ© la base de donnĂ©es par dĂ©faut si celle-ci est utilisĂ©.

Il est possible de le faire avant la migration, cela n’a pas d’impact sur les services de messagerie.

Préparer la migration

Avant de se lancer dans l’installation d’Exchange 2019 et d’effectuer la migration, voici quelques Ă©lĂ©ments Ă  prendre en compte afin que celle-ci se passe bien.

Il est nĂ©cessaire de maitrise vos diffĂ©rents flux rĂ©seau vers Exchange c’est Ă  dire :

  • Le flux de message entrant et sortant car il faut Ă  un moment basculer la rĂ©ception et l’envoie des emails sur la nouvelle installation, ce qui peut implique souvent de modifier un flux firewall et/ou d’une appliance MTA.
  • Maitriser les HTTPS entrant vers Exchange, comme pour les flux de messagerie, Ă  un moment il faut basculer vers la nouvelle version d’Exchange, si vous utilisez un reverse proxy, vĂ©rifier son bon fonctionnement avec Exchange 2019.
  • Lister les applications et pĂ©riphĂ©rique qui utilise un connecteur de rĂ©ception pour l’envoie d’email comme les copieurs (si vous utilisez un enregistrement DNS cela devrait pas poser de problème).

Prévoir aussi :

  • Le ou les certificats SSL qui doivent ĂŞtre rĂ©installĂ©s sur Exchange 2019
  • VĂ©rifier la compatibilitĂ© des clients (Outlook / tĂ©lĂ©phones …) avec Exchange 2019
  • Certainement autre chose que j’ai oubliĂ© propre Ă  votre environnement …

Installer d’Exchange 2019

Maintenant que vous ĂŞtes prĂŞt, il est tant de passer Ă  l’installation d’Exchange 2019. Je ne vais pas renter dans le dĂ©tail dans cet article. Le tutoriel : Exchange 2019 : installation explique comment faire.

Ce que je peux vous conseiller par contre, c’est de faire l’installation Ă  un moment « calme » de prĂ©fĂ©rence un soir ou un week-end, car le point de service SCP de l’autodiscover ne sera pas bon le temps de le reconfigurer.

Ă€ la fin de l’installation, pour accĂ©der Ă  l’ECP, il faut utiliser l’URL suivante sur : https://server_exchange_2019/ecp?ExchClientVer=15.2.

Sur les deux environnements vĂ©rifier dans la partie serveur que l’ensemble des serveurs Exchange soient prĂ©sent.

Configuration de l’autodiscover

Le premier Ă©lĂ©ment Ă  configurer ou Ă  modifier est l’autodiscover, lors de l’installation d’Exchange 2019, une entrĂ©e a Ă©tĂ© ajoutĂ©e et fait pointer l’autodiscover vers le serveur Exchange 2019.

Pour le moment, il est nécessaire que cela pointe vers une URL.

Sur le serveur où est installé Exchange 2019, ouvrir Exchange Management Shell 1.

Entrer la commande ci-après pour afficher les points SCP :

Get-ClientAccessService | fl name, AutodiscoverServiceInternalURI

Sur la capture ci-dessous, on voit qu’un enregistrement pointe directement sur le serveur Exchange 2019.

Entrer la ligne ci-dessous pour modifier l’URL de l’autodiscover sur le serveur Exchange 2019. (Adapter le paramètre Identity et AutodiscoverServiceInternalURI).

Set-ClientAccessService -Identity LAB-EX2019 -AutodiscoverServiceInternalURI  https://mail.lab.priv/Autodiscover/Autodiscover.xml

Entrer de nouveau la commande ci-après pour vérifier le changement :

Get-ClientAccessService | fl name, AutodiscoverServiceInternalURI

PrĂ©paration / Configuration d’Exchange 2019

Avant de faire la migration des boites aux lettres, il faut prĂ©parer / configurer l’environnement Exchange 2019 avec la « mĂŞme » configuration pour que cela soit transparent pour les utilisateurs et Ă©viter un problème d’accès au service.

Configurer les bases de données

Cette configuration dépend de votre environnement, dans les bonnes pratiques, renommer et déplacer la base de données par défaut sur un autre disque.

En fonction de votre environnement créer les bases de données necessaires.

Configurer les URL des répertoires

Cette Ă©tape est importante, car c’est elle qui va permettre de configurer les URL Ă  l’identique sur les deux environnements et rendre la migration transparente pour les utilisateurs.

Pour vous aidez utiliser le lien suivant : Exchange 2016 : Installation et configuration – Page 12 Ă  18

URL Outlook Anywhere

Dans la section serveurs 1 de l’ECP, sĂ©lectionner le serveur Exchange 2019 2 et cliquer sur l’icĂ´ne de modification 3.

Dans les propriĂ©tĂ©s du serveur, cliquer sur Outlook Anywhere 1. On peut voir que l’URL est le nom FQDN du serveur 2.

Entrer l’URL d’accès aux services Exchange 1 et cliquer sur Enregistrer 2.

L’URL d’Outlook AnyWhere est configurĂ©e.

URL des répertoires virtuels

Il est nĂ©cessaire de faire la mĂŞme opĂ©ration pour l’ensemble des repertoires virtuels d’Exchange 2019.

Toujours dans la partie serveur 1, cliquer sur rĂ©pertoires virtuels 2. Sur la capture ci-dessous j’ai sĂ©lectionnĂ© les rĂ©pertoires Ă  modifier.

Le repertoire Autodiscover n’a pas d’URL Ă  configurer.

Pour modifier l’URL d’un repertoire virtuel, sĂ©lectionner le 1, cliquer sur l’icĂ´ne de modification 2, dans les propriĂ©tĂ©s rechercher les champs URL 3, entrer l’URL configurĂ©e 4 et cliquer sur Enregistrer 5.

Importer le certificat SSL

Maintenant les URL sont configurées, il faut importer le certificat SSL correspondant.

Avant d’importer le certificat, il faut placer le fichier pfx sur un partage rĂ©seau.

Dans la partie serveurs 1, aller sur certificats 2 et sélectionner le serveur Exchange 2019 3.

Cliquer sur … 1 puis sur Importer un certificat Exchange 2.

Entrer le chemin UNC du fichier du certificat 1, entrer le mot de passe 2 et cliquer sur Suivant 3.

Ajouter le serveur Exchange 2019 1 pour installer le certificat dessus et cliquer sur Terminer 2.

Il faut ensuite attribuer le certificat au différent service, en allant dans ces propriétés.

Configurer les connecteurs d’envoie et de rĂ©ception

Il faut maintenant configurer les connecteurs pour l’envoie d’email sur Internet et aussi de reception.

Configurer un connecteur d’envoie : Exchange 2016 : Installation et configuration – Page 13 Ă  18

Configurer un connecteur de reception : Exchange : crĂ©ation d’un connecteur de rĂ©ception

En cas de doute, regarder la configuration de vos connecteurs existants sur l’environnement Exchange 2013/2016.

Cette partie est importante pour l’envoie d’email vers Internet et pour la rĂ©ception d’email depuis des applications et des pĂ©riphĂ©riques

Il est possible d’utiliser un script PowerShell pour dupliquer les connecteurs de reception :

$OldServer = "SRV-EX2013"
$NewServer = "SRV-EX2019"

[array]$ReceiveConnectors = Get-ReceiveConnector -Server $OldServer | Where {$_.Name -notlike "Default $($OldServer)" -and $_.Name -notlike "Client $($OldServer)"}

$ReceiveConnectors | foreach {
    New-ReceiveConnector -Name $_.Name -RemoteIPRanges $_.RemoteIPRanges -bindings $_.Bindings -Banner $_.Banner -ChunkingEnabled $_.ChunkingEnabled -DefaultDomain $_.DefaultDomain -DeliveryStatusNotificationEnabled $_.DeliveryStatusNotificationEnabled -EightBitMimeEnabled $_.EightBitMimeEnabled -DomainSecureEnabled $_.DomainSecureEnabled -LongAddressesEnabled $_.LongAddressesEnabled -OrarEnabled $_.OrarEnabled -Comment $_.Comment -Enabled $_.Enabled -ConnectionTimeout $_.ConnectionTimeout -ConnectionInactivityTimeout $_.ConnectionInactivityTimeout -MessageRateLimit $_.MessageRateLimit -MaxInboundConnection $_.MaxInboundConnection -MaxInboundConnectionPerSource $_.MaxInboundConnectionPerSource -MaxInboundConnectionPercentagePerSource $_.MaxInboundConnectionPercentagePerSource -MaxHeaderSize $_.MaxHeaderSize -MaxHopCount $_.MaxHopCount -MaxLocalHopCount $_.MaxLocalHopCount -MaxLogonFailures $_.MaxLogonFailures -MaxMessageSize $_.MaxMessageSize -MaxProtocolErrors $_.MaxProtocolErrors -MaxRecipientsPerMessage $_.MaxRecipientsPerMessage -PermissionGroups $_.PermissionGroups -PipeliningEnabled $_.PipeLiningEnabled -ProtocolLoggingLevel $_.ProtocolLoggingLevel -RequireEHLODomain $_.RequireEHLODomain -RequireTLS $_.RequireTLS -EnableAuthGSSAPI $_.EnableAuthGSSAPI -ExtendedProtectionPolicy $_.ExtendedProtectionPolicy -ExtendedProtectionTlsTerminatedAtProxy $_.ExtendedProtectionTlsTerminatedAtProxy -SizeEnabled $_.SizeEnabled -TarpitInterval $_.TarpitInterval -Server $NewServer
}

Source : Copy Receive Connectors to a New Exchange Server (techgenix.com)

Il faut également penser à configurer le firewall/MTA pour autoriser le nouveau serveur à envoyer et réceptionner les messages.

Bascule des accès sur Exchange 2019

Avant de passer à la migration des boites aux lettres sur Exchange 2019, on bascule les accès Outlook, Webmail sur Exchange 2019.

Avant de faire le changement DNS, il est possible de faire des tests depuis un ordinateur en modifiant le fichier host en indiquant le DNS et l’IP associĂ© Ă  l’URL.

Il est aussi possible de tester le Webmail (OWA) en se connectant directement avec le nom FQDN du serveur Ă  l’interface Web.

Une fois les tests validĂ©s, modifier l’enregistrement DNS interne et externe

Une fois les enregistrements DNS configurés, configurer firewall et/ou reverse proxy pour envoyer les requêtes HTTP sur le serveur Exchange 2019.

Migration des boites aux lettres sur Exchange 2019

Dernière étape de la migration vers Exchange 2019, le basculement des boites aux lettres.

Je vous conseille fortement de le faire en PowerShell, j’ai eu pas mal de problème en passant par l’outil Migration dans l’interface ECP.

Pour effectuer la migration, on va utiliser un script PowerShell qui va dĂ©placer toutes les boites aux lettres d’une base de donnĂ©es vers une autre.

Pour rĂ©sumer, on va demander de dĂ©placer les BAL d’une base de donnĂ©es Exchange 2013/2016 vers une base de donnĂ©es Exchange 2019.

Entrer la ligne ci-dessous depuis le serveur Exchange 2019 pour faire une migration (en adaptant DBEX2013 et DBEX2019 Ă  votre environnement) :

Get-Mailbox -Database DBEX2013 | New-MoveRequest -TargetDatabase DBEX2019 -BatchName “EX20132EX2019”

Pour suivre la migration, il est possible d’entrer la commande : Get-MoveRequest

Une fois la migration terminée, le status passe à Completed.

Il est possible de vĂ©rifier dans l’ECP la migration, dans les propriĂ©tĂ©s d’une BAL en regardant la base de donnĂ©es.

Pendant la migration si un utilisateur Ă  Outlook d’ouvert, un message s’affiche lui demandant de redĂ©marrer Outlook.

RĂ©pĂ©ter l’opĂ©ration pour chaque base de donnĂ©es sur Exchange 2013/2016 Ă  migrer.

Astuce :

Si vous le pouvez, avant de faire la migration, c’est de tester celle-ci en crĂ©ant une base de donnĂ©es de test sur chaque serveur et de faire un test de migration avec des boites non « importantes ».

Migration des boites d’arbitrages

Les boites d’arbitrages sont des boites systèmes.

Entrer la commande ci-dessous depuis le serveur Exchange 2019 pour les migrer :

Get-Mailbox -Server LAB-EX2013 -Arbitration | New-MoveRequest

Utiliser la commande Get-MoveRequest pour suivre l’avancement :

Si vous effectuez une migration depuis Exchange 2016, il faut aussi migrer les boites systèmes suivantes :

# Monitoring
Get-Mailbox -Server LAB-EX2016 -Monitoring | New-MoveRequest
# Auditlog
Get-Mailbox -Server LAB-EX2016 -AuditLog | New-MoveRequest

Vous pouvez également choisir la base de données de destination en ajoutant le paramètre suivant -TargetDatabase « DATABASE NAME »

Migration des dossiers publics (facultatif)

Si vous utilisez des dossiers publics, il faut aussi les migrer.

Migrer des dossiers publics d’Exchange 2013 vers Exchange 2016 ou Exchange 2019 | Microsoft Docs

DĂ©commission d’Exchange 2013 / 2016

Ceci est la dernière Ă©tape de la migration, la dĂ©sinstallation d’Exchange 2013 de votre environnement.

Je vous conseille d’attendre une Ă  deux semaines avant de faire la dĂ©sinstallation afin de vous assurez que tout fonctionne et que vous n’avez rien oubliĂ©. Par contre ce que vous pouvez faire c’est d’Ă©teindre le ou les anciens serveurs avant la dĂ©sinstallation.

Dans le cas d’un DAG, il faut d’abord le supprimer puis dĂ©sinstaller chaque serveur.

Exchange ayant beaucoup de liaison avec l’Active Directory, il est très important de dĂ©sinstaller Exchange et de ne surtout pas supprimer les serveurs sans dĂ©commission.

Pour désinstaller Exchange 2013/2016, depuis le panneau de configuration / Désinstaller ou modifier un programme, faire un clic droit sur Exchange et cliquer sur Désinstaller.

Suivre l’assistant pour la dĂ©sinstallation.

Une fois dĂ©sinstaller, il est possible d’accĂ©der Ă  l’ECP d’Exchange 2019 sans les paramètres de versions.

Dans la partie serveurs, le ou les serveurs décommissionnés ne sont plus présent.

Conclusion

J’espère que ce tutoriel vous aidera dans votre migration Exchange.

Ce n’est pas une opĂ©ration compliquĂ©e, mais elle doit ĂŞtre planifiĂ©e avec soin pour ne pas oublier d’Ă©lĂ©ment.

Il est possible d’utiliser ce tutoriel pour une migration de Exchange 2013 vers 2016 ou Exchange 2010 vers 2013/2016.

Pour une migration depuis Exchange 2010 vers 2019, il est nécessaire de faire une migration intermédiaire vers Exchange 2013 ou 2016.

Romain Drouche
Architecte Système | MCSE: Core Infrastructure
Expert en infrastructures IT avec plus de 15 ans d’expérience sur le terrain. Actuellement Chef de projet Systèmes et Réseaux et Référent SSI (Sécurité des Systèmes d’Information), je mets mon expertise au service de la fiabilité et de la sécurité des environnements technologiques.

Laisser un commentaire