Introduction
This is the complete onboarding task flow for migrating mailboxes from IMAP systems to On-Premises Exchange. Due to API limitations, IMAP migrations will only migrate mail items.
There are some tools and resources that will make the migration easier. We suggest reading through the following information and linked guides before beginning your migration.
Exchange questions and troubleshooting
Our Exchange Mailbox FAQ, Exchange Migration Setup and Planning, and Exchange Mailbox Migration Troubleshooting guides contain a number of common questions and concerns, along with more information, guidance, and steps to resolve issues such as throttling.
First migration?
We’ve created a guide on scoping, planning, and managing the migration process for your use. If this is your first migration, we recommend reading this guide carefully.
MigrationWiz
MigrationWiz is a migration tool, not a syncing tool. If changes are made at the source after migration, they will not sync to the destination, nor will changes made at the destination sync to the source. We do not have “live” monitoring of changes (as with a sync agent) and we cannot handle scenarios such as conflict resolution without user interaction.
MigrationWiz supports the capability to share migration projects across a Workgroup. When the Project Sharing feature is turned on, all Agents besides those who are Inactive can view all migrations projects.
We are not able to support migrations with two-factor or multifactor authentication.
The maximum file size for migration through MigrationWiz varies by migration type and environment, but may never exceed 60GB.
Only mail folders are migrated with this scenario. Contacts and Calendar items will need to be exported/imported manually.
Prerequisites
There are many different versions of IMAP mail systems available. For this reason, we recommend running a trial migration on one or more mailboxes prior to the actual full migration project. Once the trial migration completes, check on the folder structure at the Destination to ensure that the directory structure is as desired.
To run a trial migration, follow these steps:
- Sign in to your MigrationWiz account.
- Click on your migration project. If you haven't created a project, create a project (following the steps laid out in the Create a Mailbox Migration Project below) and add a user to that project.
- Select the user for whom you wish to perform the trial migration.
- Click on Start.
- From the drop-down list, click on Trial Migration .
- Click on Start Trial Migration.
Prepare the Source Environment
- Test connectivity to the IMAP server through our connectivity test tool. Fill in the form and click the Test button.
- Export user list to a CSV file.
- Administrator accounts with at least read rights can export a user list.
- If you do not have an administrator account, you will need to ask your IMAP host to provide you with a complete user list, in CSV file format.
- This CSV file will be used to bulk-add users into your MigrationWiz mailbox project.
Prepare the Destination Environment
Set up user accounts, then perform the following actions.
Set up admin account
To create an administrator account (e.g., MigrationWiz), perform the follow steps when logged into the Exchange Server.
- Open the Exchange Management Console.
- Expand the Recipient Configuration node.
- Right-click on the Mailbox node.
- Click on New Mailbox.
- Click on Next.
- Click on Next.
- Enter "MigrationWiz" as the first name.
- Enter "MigrationWiz" as the user logon name, and optionally select a user principal name (UPN) domain.
- Enter a password and confirm the password.
- Click on Next.
- Click on Browse to select a Mailbox database.
- Click on Next.
- Click on New.
- Click on Finish.
To grant the account access, perform the following from the Exchange Server machine:
- Open the Exchange Management Shell.
- Enter the following command:
Get-Mailbox -ResultSize Unlimited | Add-MailboxPermission -AccessRights FullAccess -Automapping $false -User MigrationWiz
Notes:
- In the PowerShell script above, change the -User account to match the name of the admin account that was set up for migration.
- Any user account that is a part of the domain administrator, schema administrator, or enterprise administrator groups will not have any administrative rights to mailboxes, no matter how many permissions are granted. A security default of Exchange Server is to explicitly deny any user that is a member of these groups. This is why we recommend creating a new user account specific for migration.
Disable Throttling
To disable all throttling parameters for an admin account called "MigrationWiz":
- Open the Exchange Management Shell.
- Type the following command and press Enter.
New-ThrottlingPolicy MigrationWizPolicy
- Type the following command and press Enter.
Set-ThrottlingPolicy MigrationWizPolicy -RCAMaxConcurrency Unlimited -EWSMaxConcurrency Unlimited -EWSMaxSubscriptions Unlimited -CPAMaxConcurrency Unlimited -EwsCutoffBalance Unlimited -EwsMaxBurst Unlimited -EwsRechargeRate Unlimited
- Type the following command and press Enter.
Set-Mailbox "MigrationWiz" -ThrottlingPolicy MigrationWizPolicy
Test mailbox access
- Browse to https://testconnectivity.microsoft.com. This is a Microsoft-owned tool.
- If using Office 365, click on the Office 365
- Select Service Account Access (Developers)and click on Next.
- Specify the target mailbox email address.
- Specify the service account user name (if using admin credentials on the connector, enter the exact same user name).
- Specify the service account password (if using admin credentials on the connector, enter the exact same password).
- Check Specify Exchange Web Services URL and specify the URL (example: https://server/EWS/Exchange.asmx).
- If using Exchange Server, do not check Use Exchange Impersonation. If you are using Office 365, and using impersonation, do check the box.
- Check Ignore Trust for SSL.
- Click on Perform Test.
- Once results are displayed, check the overall result, and also click on Expand All.
It may be necessary to first grant permissions.
Prepare Tenant to Receive Large Items
This is a two-step process. The reason for this is that if the message size limits of Exchange are increased, the IIS limits will also have to be increased to allow increased payloads. There are other non-standard settings that can also cause size restrictions for the IIS or EWS connections, but we are unable to troubleshoot or identify specific environment restrictions outside of these settings.
To display current message size limits:
- Open the Exchange Management Shell.
- Enter the following commands:
Get-TransportConfig | Format-List -Property MaxReceiveSize, MaxSendSize
Get-SendConnector | Format-List -Property Identity, MaxMessageSize
Get-ReceiveConnector | Format-List -Property Identity, MaxMessageSize
Get-MailBox | Format-List -Property PrimarySmtpAddress, MaxSendSize, MaxReceiveSize
To increase message size limits on the Exchange Server:
- Open the Exchange Management Shell.
- Enter the following commands:
Set-TransportConfig -MaxReceiveSize 150MB -MaxSendSize 150MB
Get-SendConnector | Set-SendConnector -MaxMessageSize 150MB
Get-ReceiveConnector | Set-ReceiveConnector -MaxMessageSize 150MB
Get-Mailbox | Set-Mailbox -MaxSendSize 150MB -MaxReceiveSize 150MB
Increase IIS Limits to Allow Accepting Payloads
There are three limits that should be increased in IIS:
- maxRequestLength
- maxAllowedContentLength
- maxReceivedMessageSize
Follow these steps to increase the Exchange message size limits on your client access server:
- Open Windows Explorer.
- Navigate to %ExchangeInstallPath%FrontEnd\HttpProxy\ews\
- Open the file Web.Config in a text editor, such as Notepad.
- Find the XML tag starting with for each change.
- Change the existing value to maxRequestLength="200000" -- this occurs in one place in the Web.Config file.
- Change the existing values to maxAllowedContentLength="200000000" -- this occurs one place in the Web.Config file.
- Change the existing values to maxReceivedMessageSize="200000000" -- this entry occurs up to 12 times. This needs to be changed for each Authentication method.
For example:
<httpsTransport maxReceivedMessageSize="200000000" authenticationScheme="Anonymous" maxBufferSize="81920" transferMode="Streamed" />
<httpsTransport maxReceivedMessageSize="200000000" authenticationScheme="Basic" maxBufferSize="81920" transferMode="Streamed" />
etc. - If you are running IIS7 and Windows 2008, it may be necessary to increase WCF settings.
- Save the file.
- IIS Reset is not needed, web.config changes are picked up by the next connection.
Follow these steps to increase the Exchange message size limits on your mailbox server:
- Open Windows Explorer.
- Navigate to %ExchangeInstallPath%ClientAccess\exchweb\ews\
- Open the file Web.Config in a text editor, such as Notepad.
- Find the XML tag starting with for each change.
- Change the existing value to maxRequestLength="200000" -- this occurs in one place in the Web.Config file.
- Change the existing values to maxAllowedContentLength="200000000" -- this occurs one place in the Web.Config file.
- Change the existing values to maxReceivedMessageSize="200000000" -- this entry occurs up to 12 times. This needs to be changed for each Authentication method.
- If you are running IIS7 and Windows 2008, it may be necessary to increase WCF settings.
- Save the file.
- IIS Reset is not needed, web.config changes are picked up by the next connection.
You may increase the maximum accepted content length by following these directions:
- Open Windows Explorer.
- Navigate to C:\Program Files\Microsoft\Exchange Server\ClientAccess\exchweb\ews
- Open the file Web.Config in a text editor such as Notepad.
- Go to the end of the file.
- Insert or edit the following XML code before the </configuration> tag:
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600" />
</requestFiltering>
</security>
</system.webServer>
If XML code is already present in the Web.Config file, edit it to match what is shown above.
Sample Web.Config before changes:
<configuration>
<system.web>
...
...
</system.web>
</configuration>
Sample Web.Config after changes:
<configuration>
<system.web>
...
...
</system.web>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="104857600" />
</requestFiltering>
</security>
</system.webServer>
</configuration>
If you are running IIS7 and Windows 2008, you may need to increase WCF settings:
- Open Windows Explorer.
- Navigate to C:\Program Files\Microsoft\Exchange Server\ClientAccess\exchweb\ews
- Open the file Web.Config in a text editor like Notepad.
- Find all XML tags starting with maxReceivedMessageSize=
- Change existing values to maxReceivedMessageSize="104857600"
- Save the file.
- Open a Command Prompt (cmd.exe).
- Type: cd %windir%\system32\inetsrv
- Type: appcmd.exe set config "Default Web Site/ews" -section:requestFiltering -requestLimits.maxAllowedContentLength:104857600
- Run: iisreset
MSPComplete Steps
Create the customer
Each customer you add will be displayed in your customer list unless you archive it. There are two ways to add customers.
From the All Customer Page
- Click the Add button in the top navigation bar
- Click the Add Customer button on the All Customers page
- In the left navigation pane, select the appropriate workgroup and then click All Customers.
- Click Add Customer.
- Enter the new customer’s information in the Add Customer form. Primary Email Domain and Company Name are required. The rest are optional.
- Click Save.
- Repeat steps 1 through 4 for each customer you want to add.
Add Button
Add customers from the Add button in the top navigation bar
- In the left navigation pane, select the appropriate workgroup.
- Click Add in the top navigation bar, and then click Add in the drop-down list.
- Enter the new customer’s information in the Add Customer form.
- Click Save.
Tip: When you click a customer in the list in the main pane, the name appears under Recent Customers in the left navigation pane.
Licensing
Purchase licenses. We recommend that you use the User Migration Bundle license for this migration scenario.
- These licenses enable multiple migrations of user mailboxes, documents, and in-place archives. It also allows the use of DeploymentPro to perform post-migration Outlook email profile configuration.
- User Migration Bundle Licenses have unlimited data available per license.
- User Migration Bundle Licenses are applied to the customer's users and expire 12 months after their purchase date.
- Document, Personal Archive, and DeploymentPro projects are all included when using User Migration Bundle Licenses.
- This license type must be applied manually.
Apply licenses
- Sign in to MSPComplete at https://manage.bittitan.com.
- When you sign in, make sure to select the MSPComplete button above the email field.
- Select the correct workgroup on the top of the left navigation pane. This is the workgroup that the customer and migration project were created under. Your account must be part of the workgroup if the project was not created under your account.
- On the left navigation pane, click Customers.
- Click the customer that employs the user to whom you want to apply a User Migration Bundle license.
- Click the Users tab at the top of the page.
- Check the box to the left of the email for the user(s) to whom you want to apply a license.
- Click the Apply User Migration Bundle License button at the top of the page. It is recommended that users be added to the Customer page with the vanity domain. Then have the User Migration Bundle Licenses applied, before editing to show the .onmicrosoft domain, if the .onmicrosoft domain will be used for the migration.
- If there is at least one unassigned User Migration Bundle license available for each selected user, click Confirm.
Important: If there are no User Migration Bundle licenses currently available to be assigned and your role in the workgroup is Manager or higher, the form that appears provides all the necessary information and will walk you through the steps of purchasing User Migration Bundle licenses.
MigrationWiz Steps
Create a Mailbox Migration project
- Click the Go to My Projects button.
- Click the Create Project button.
- Click on the type of project that you wish to create. For this migration:
- Mailbox: Mailbox projects are used to migrate the contents of the primary user mailbox from the previous environment to the new environment. Most mailbox migrations can migrate email, calendars, and contacts.
For mailbox migrations, use administrative credentials to access mailboxes. In most migration scenarios, the admin account needs to have full access rights to the Source mailboxes.
- Click Next Step.
- Enter a Project name and select a Customer.
- Click Next Step.
Endpoints
Endpoints are now created through MigrationWiz, rather than through MSPComplete. The steps for this section outline how to create the endpoints in MigrationWiz.
If you are selecting an existing endpoint, keep in mind that only ten endpoints will show in the drop-down. If you have more than ten, you may need to search. Endpoint search is case and character specific. For example, Cust0mer will not show up if the search is customer. We recommend keeping a list of endpoints you have created, along with any unique spellings or capitalization you may have used.
You may either use existing endpoints, or create new ones.
To create a new source endpoint:
- Click Endpoints
- Click Add Endpoint
-
For endpoint type select IMAP.
-
Server Name should follow format: imap.example.com
-
Enter server port. As a general rule, the server port will be either 143 or 993 (if using SSL).
-
If using SSL, checkmark the Use SSL box.
- Click Add
- Click Next Step
To create a new destination endpoint:
- Click Endpoints
- Click Add Endpoint
- Select Exchange 2013+
-
Enter the OWA URL
-
Click the Provide Credentials radio button, and enter the admin account credentials for the account that was set up under the "Prepare the Destination Environment" section of this guide.
- Click Add
- Click Next Step
Add Users
Add the user accounts that will be migrated to the project. MigrationWiz allows you to bulk import mailboxes into the system.
Use the Bulk Add option, and import from the CSV file that you prepared under the Prepare the Source section of this guide.
Admin Account
If you have an admin account on the Source IMAP system, the format will be as follows.
However, most IMAP systems do not support administrative credentials.
The following systems support IMAP:
- G Suite supports OAuth authentication.
- Some versions of Novell GroupWise support Trusted Key authentication. Click here to learn more.
- Some versions of Exchange IMAP support admin authentication. Click here to learn more.
Format:
- Source Email: SMTP email address.
- Source Login Name: Consists of two combined names: the user name of the person whose email is being migrated, and the user name of the mailbox admin account. For example, for Exchange IMAP: Domain/Admin_UserName/User_UserName. The proper formats can be found here.
- Source Password: Enter the administrator's password.
If administrative login is not available
- Request credentials from each user.
- Reset mailboxes to use the same password (this will lock users out).
- Have us automatically request credentials from end users. Click here to learn more.
To request credentials from users:
Enter the Source Email addresses in the Source Email column, and checkmark the I don't know the login name and password for the Source mailboxes box. Users will then be requested to provide their credentials during the migration process.
For the Destination, you only need to enter the Destination email address of each user.
Bulk Add
To import one or more mailboxes once you have gathered the necessary credentials:
- Sign in to your MigrationWiz account.
- Select the Project for which you want to perform the bulk import.
- Click on Add .
- Click on Bulk Add .
- Follow the instructions on the page.
Run Verify Credentials
- Sign in to your MigrationWiz account.
- Open the Project containing items you wish to validate.
- Select the items you wish to validate.
- Click on the Start button in your dashboard.
- Select Verify Credentials from the drop-down list.
Once complete, the results of the verification will be shown in the Status section.
Notify Users
Notify users that a migration is occurring. Send email to all users telling them the time and date of the migration.
Run Migration
Pre-Stage pass
- Select the users you wish to migrate
- Click the Start button from the top
- Select Pre-Stage Migration
- Under the Migration Scheduling section, from the drop-down list, select 90 days ago
- Click Start Migration.
MX Record Cutover
- Change over MX records on the DNS provider's portal.
- Also, include the AutoDiscover (CName) setting.
- Set up Zimbra mail forwarding.
Notify users
Send email to end users to let them know what to expect for their Outlook profile reconfiguration. Samples and screenshots can be found in our DeploymentPro documentation, if you are utilizing that tool.
Full (Delta) pass
- Select the users
- Click the Start button from the top
- Select Full Migration
- Click Start Migration
Run Retry Errors
Look through the user list and click any red "failed migration" errors. Review the information and act accordingly.
If problems persist, contact Support.
Unexpected Extra Arguments
If errors are listed in the MigrationWiz dashboard with the following error message: "Unexpected extra arguments to Examine Context: FolderNameWithQuote", then follow the steps below to add the support option flag AllowQuoteInFolder=1
at the item level, and run retry errors.
Steps
- Click the Edit Item icon to the right of the item that you wish to edit
- Under the Support section, enter the support option:
AllowQuoteInFolder=1
- Click Save Item
- Select the line item in your MigrationWiz dashboard
- Click Start
- Retry Errors
Outlook Configuration
If not using DeploymentPro, then users must now create new Outlook profiles, and set up their signatures again, and reattach any PST files that were attached to their previous profile.
Request Statistics
Click the pie chart icon in the MigrationWiz dashboard to receive an email containing all the project migration statistics.