ArtsAutosBooksBusinessEducationEntertainmentFamilyFashionFoodGamesGenderHealthHolidaysHomeHubPagesPersonal FinancePetsPoliticsReligionSportsTechnologyTravel

How to Migrate to Office 365 Exchange Online

Updated on December 2, 2016

What is Exchange Online

Exchange Online is a hosted email service from Microsoft. It is Microsoft Exchange on Microsoft's Azure cloud platform.

You connect to Exchange Online via Microsoft Outlook, a web browser or any other POP3 or MAPI compatible applications.

Exchange Online can be purchased as a service by itself or it can be purchased as part of the Office 365 suite.

Preparing Your On-premise Active Directory for Migration

Before the migration takes place, the on-premise Active Directory needs to be cleaned up.

Your external domain name that is used for your external e-mail addresses needs to be added as a User Principle Name (UPN) suffix in your active directory. If you had installed active directory under a domain name of somename.local, then your default UPN suffix is somename.local. You should add the FQDN of your external domain name as a UPN suffx.

To add an additional UPN suffix to the forest :

- Go to Active Directory Domains and Trusts.

- Right-click Active Directory Domains and Trusts -> Properties.

- On the UPN Suffixes tab, type the new user principal name (UPN) suffix, and click Add.

(NOTE: Add as many UPN suffixes as required since you may have some office in other countries which share the same active directory forest but may have a different domain name for their e-mails e.g. in the US office, you may have, and in the UK, you might have . )

Once the new UPN suffix or suffixes have been added, use the Active Directory Users and Computers management console to change the properties of each user account to have the appropriate UPN suffix. Most of the time, the UPN login name is identical to the e-mail address of the user and this makes it less confusing. If not, the user just needs to remember that when they log in to their Exchange Online account, they need to be using their UPN login account and NOT their e-mail address.

Take this opportunity to give your Active Directory a nice clean out, especially with user accounts.

Preparing the On-Premise Exchange Server to be Migrated

Microsoft Office 365 offers three ways to migrate your on-premise Exchange to the Exchange Online version. One is a cut-over migration, the second is the staged migration and the third is a clean slate i.e. start off clean on Microsoft Office 365, but you can always export the on-premise mailboxes as PST files and attach it to your Microsoft Outlook profile. You can either leave the e-mails in the PST files or copy it to the Exchange Online server.

We will be looking at the staged migration. It makes sense because then you can move a handful of users at a time, and make sure everything works before migrating the rest of the mailboxes.

Enabling RPC over HTTP on the server running Exchange

Because we have chosen Exchange 2003 as an example of migrating to Office 365/Exchange Online, the OS that usually Exchange 2003 would be running on would be Windows Server 2003.

To enable RPC over HTTP, on the Exchange 2003 server, go into Control Panel -> Add or Remove Programs .

Select Add/Remove Windows Components and the Windows Components Wizard comes up.

Scroll down and highlight Networking Services . Click the Details button and the Networking Services window comes up.

Tick the RPC over HTTP Proxy option and hit OK. Hit Next .

Enabling RPC over HTTP on Exchange 2003

Use Exchange System Manager and enable RPC over HTTP back-end server. If you have only one Exchange server i.e. no front end server, it is okay to enable RPC over HTTP on this server.

Configuring the RPC Proxy Server to Use Specified Ports for RPC over HTTP

Follow this Technet article to configure the RPC Proxy Server to use specific ports for RPC over HTTP.

Just follow the Before You Begin section and the Procedure section in the following link.

Install a valid SSL Certificate

A valid SSL Certificate for the domain name or external FQDN of the Exchange server needs to be purchased and installed. This is done by generating a CSR and then using that to generate the SSL certificate from certification authorities such as Comodo and Verisign.

Add a Port Forwarding Rule in Your Firewall

On your firewall, allow and port forward TCP Ports 443 and 6002 to the Exchange server.

This will allow RPC communication to take place to your Exchange server.

Verifying RPC over HTTP connectivity

You will need to verify that RPC over HTTP connectivity is working before staged migration can be setup in the Exchange Online/Office 365 admin portal.

To verify connectivity, go to the following web site:

Select the Office 365 tab,

And select the Outlook Connectivity option and enter the appropriate details in the fields to test for connectivity.

While theoretically you shouldn't be getting any errors if you have set up the registries and port forwarding properly, I have found that where I still seem to get an error for the "Testing HTTP Authentication Methods", I was still able to successfully perform the migration.

So if it looks like everything is set up correctly but you are still getting an error on the above, proceed through the next steps anyway.

Signing into the Office 365 Portal

Go to the Portal :

Log in using your Global Administrator account. This is usually the account you have setup when you first signed up to Exchange Online/Office 365.

Adding Your Domain Name to Office 365

We now need to add your mail domain name to the Office 365/Exchange Online portal so it can recognise the e-mail address domain name.

Once you are logged into the Portal, go to the Office 365 Admin Center, Click Domains, and the page corresponding to the domains management will come up. Click on Add Domain.

You need to go to your domain registrar's portal so you can add a TXT record with the information as listed in Office 365. This is one way that Office 365/Exchange Online can verify that you are the owner of the entered domain name.

Update DNS Records to work with Office 365/Exchange Online

Office 365 will prompt you if you want it to add DNS records for your domain. It's possible with some domain registrars that you can get Office 365 to make the necessary changes for you. However, it's better we control it ourselves an we should select "No" to the option.

Office 365 will give you information on what DNS records you need to add or modify.

Add/Edit everything EXCEPT for the MX record. This will need to be done last once all mailboxes have successfully been migrated.

You can ignore the errors to do with the MX record because we have chosen not to change it yet.

Install the Directory Sync Tool

We are now ready to start SYNCING the on-premise Active Directory accounts to the Office 365/Exchange Online environment and then migrating the mailboxes across.

To sync the on-premise Active Directory accounts to Office 365/Exchange online, you need to install DirSync on a member server that is part of the on-premise domain.

A page describing the Tool and a link to the download is here :

Once this is installed and configured, the active directory user accounts will start syncing to Office 365/Exchange Online. You can log in to the Office 365 portal and navigate to the active Users section (on the Office 365 Admin Center screen) to view the list of users that have now been synced across.

Syncing the Mailboxes and then Assigning the Licenses

Create a CSV file containing the e-mail address of the users to be migrated.

The file needs to be one column listing the e-mail addresses and it needs to have a header :


Create an Migration Endpoint

In the Office 365 portal, go to the Admin Exchange page . Under the recipients section, select migration .

Click on the "..." link and select Migration Endpoints .

Creating a Migration Batch

Now that we have created the Migration Endpoint, we will create the Migration Batch which will consist of uploading the CSV file we created above and selecting the Migration Endpoint which we've just created.

Verifying the User has Synced

In the Office 365 Portal, if you go to the Active Users and search or browse for the mailboxes that you have put in the CSV file, you should be able to see it in the list.

Assigning Licenses

Assuming that you have added Office 365/Exchange Online licenses to your portal, you will now need to highlight the user, and from the right hand pane, select to assign the user a license. If the user does not have a license, you cannot access the mailbox.

Configuring Outlook

This is the easiest part if you have already setup the DNS records for autodiscover to point to Office 365/Exchange online.

Just open up Outlook and create a new e-mail profile. It will use auto discover to detect the mailserver settings, and it will prompt for a username and password to the mailbox. Enter the user's full UPN login details (i.e. and password.

That's it.

NOTE: If you haven't re-configured Outlook to talk to Office 365/Exchange Online, it will still point to the on-premise Exchange. It will look as though no e-mails have come in for your mailbox since the migration/syncing took place. You MUST re-configure your Outlook to point to Office 365/Exchange Online to be able to see all the new e-mails (and the old ones).

Change MX Record to Point to Exchange Online

Once all mailboxes have been migrated across, it is now time to change the MX record to point directly to Office 365/Exchange online. Currently e-mail is entering the organisation via the on-premise Exchange server. The migration batch created above continually syncs all new e-mails to Exchange Online.

Once you change the MX record to point to Office 365/Exchange Online, then the e-mail points directly to Office 365. Technically speaking, it looks to be going through Microsoft's mail filter first. You can see by looking at the CNAME that you need to point your MX record to.


The above are the basic skeleton of how to migrate an on-premise Exchange to Exchange Online/Office 365. No doubt each organisation will have challenges of their own but at least if you start with a framework, it will be able to be done easier. I didn't have a framework to work off. I had to consult numerous articles, and the Microsoft "contextual" help as you go through the Office 365 portal was very confusing.

Anyway, I hope this article could at least guide you in the right direction.


    0 of 8192 characters used
    Post Comment

    No comments yet.


    This website uses cookies

    As a user in the EEA, your approval is needed on a few things. To provide a better website experience, uses cookies (and other similar technologies) and may collect, process, and share personal data. Please choose which areas of our service you consent to our doing so.

    For more information on managing or withdrawing consents and how we handle data, visit our Privacy Policy at:

    Show Details
    HubPages Device IDThis is used to identify particular browsers or devices when the access the service, and is used for security reasons.
    LoginThis is necessary to sign in to the HubPages Service.
    Google RecaptchaThis is used to prevent bots and spam. (Privacy Policy)
    AkismetThis is used to detect comment spam. (Privacy Policy)
    HubPages Google AnalyticsThis is used to provide data on traffic to our website, all personally identifyable data is anonymized. (Privacy Policy)
    HubPages Traffic PixelThis is used to collect data on traffic to articles and other pages on our site. Unless you are signed in to a HubPages account, all personally identifiable information is anonymized.
    Amazon Web ServicesThis is a cloud services platform that we used to host our service. (Privacy Policy)
    CloudflareThis is a cloud CDN service that we use to efficiently deliver files required for our service to operate such as javascript, cascading style sheets, images, and videos. (Privacy Policy)
    Google Hosted LibrariesJavascript software libraries such as jQuery are loaded at endpoints on the or domains, for performance and efficiency reasons. (Privacy Policy)
    Google Custom SearchThis is feature allows you to search the site. (Privacy Policy)
    Google MapsSome articles have Google Maps embedded in them. (Privacy Policy)
    Google ChartsThis is used to display charts and graphs on articles and the author center. (Privacy Policy)
    Google AdSense Host APIThis service allows you to sign up for or associate a Google AdSense account with HubPages, so that you can earn money from ads on your articles. No data is shared unless you engage with this feature. (Privacy Policy)
    Google YouTubeSome articles have YouTube videos embedded in them. (Privacy Policy)
    VimeoSome articles have Vimeo videos embedded in them. (Privacy Policy)
    PaypalThis is used for a registered author who enrolls in the HubPages Earnings program and requests to be paid via PayPal. No data is shared with Paypal unless you engage with this feature. (Privacy Policy)
    Facebook LoginYou can use this to streamline signing up for, or signing in to your Hubpages account. No data is shared with Facebook unless you engage with this feature. (Privacy Policy)
    MavenThis supports the Maven widget and search functionality. (Privacy Policy)
    Google AdSenseThis is an ad network. (Privacy Policy)
    Google DoubleClickGoogle provides ad serving technology and runs an ad network. (Privacy Policy)
    Index ExchangeThis is an ad network. (Privacy Policy)
    SovrnThis is an ad network. (Privacy Policy)
    Facebook AdsThis is an ad network. (Privacy Policy)
    Amazon Unified Ad MarketplaceThis is an ad network. (Privacy Policy)
    AppNexusThis is an ad network. (Privacy Policy)
    OpenxThis is an ad network. (Privacy Policy)
    Rubicon ProjectThis is an ad network. (Privacy Policy)
    TripleLiftThis is an ad network. (Privacy Policy)
    Say MediaWe partner with Say Media to deliver ad campaigns on our sites. (Privacy Policy)
    Remarketing PixelsWe may use remarketing pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to advertise the HubPages Service to people that have visited our sites.
    Conversion Tracking PixelsWe may use conversion tracking pixels from advertising networks such as Google AdWords, Bing Ads, and Facebook in order to identify when an advertisement has successfully resulted in the desired action, such as signing up for the HubPages Service or publishing an article on the HubPages Service.
    Author Google AnalyticsThis is used to provide traffic data and reports to the authors of articles on the HubPages Service. (Privacy Policy)
    ComscoreComScore is a media measurement and analytics company providing marketing data and analytics to enterprises, media and advertising agencies, and publishers. Non-consent will result in ComScore only processing obfuscated personal data. (Privacy Policy)
    Amazon Tracking PixelSome articles display amazon products as part of the Amazon Affiliate program, this pixel provides traffic statistics for those products (Privacy Policy)
    ClickscoThis is a data management platform studying reader behavior (Privacy Policy)