Cybersecurity Blog

23 min read

How to Migrate from GoDaddy to Office 365: Step-By-Step Guide

Jun 18, 2019 1:45:30 PM

Besides using GoDaddy as our DNS provider, we're not really fans of their email service or the way they lock people into long-term contracts when they bundle Office 365. GoDaddy, for whatever reason, will restrict global admin privileges and restrict the apps that can be used, really inconveniencing customers. So here's a step by step guide to migrate from Godaddy to Office 365.

This article is continuously being updated as steps change. Last updated: February 5th, 2021

Before you start, watch Brandon's video below from our Why GoDaddy Office 365 is a trap! blog post. Don't like reading step-by-step instructions and prefer watching a video of it happen? Watch the GoDaddy Migration Step-By-Step Webinar instead.

 

Table of Contents

  1. Preparation
  2. Migrate GoDaddy to Office 365
  3. Post-migration steps for GoDaddy

Preparation

  1. What email service are you currently using?
  2. Who is your DNS provider, who is the admin to the account, and what are the credentials?
  3. How many inboxes are there? How many mailboxes are there?
  4. What items do you want to migrate? Just the emails? Contacts? Calendar items?
  5. Do you have any shared inboxes?
  6. How many domains do you have?
  7. How many email aliases are there?
  8. How large (GBs) are each of the mail boxes?
  9. You need a BitTitan account
  10. Microsoft's policy limits the transfer rate of data to 10GB per user/per day. What does that mean? Take a list of all the mailboxes you have today and rank them by size, from largest to smallest. If the largest mailbox of all of them is 18GB, then it will take 2 days to migrate. If the largest of the bunch is 7GB, then it will take under a day to migrate all of them.

FYI: Distribution Lists will need to be migrated manually.


Migrate from GoDaddy to Office 365 Webinar

Before you start, make sure that you:

  1. A cut over time has been scheduled for your team with BitTitan
  2. You have access to the GoDaddy DNS
  3. You have the First Name, Last Name, Username for all your users in an excel spreadsheet. We will be using Enable SSI (Source-Side Impersonation) on GoDaddy in Step 6
  4. You know which of your users is an admin on GoDaddy

Let's start! The entire process should only take about 60 to 75 minutes!

Step 1 - DNS Access 

    1. Validate that you can still connect to the DNS on GoDaddy (or whatever DNS provider you are using)
Step 2 - Backup Client GoDaddy DNS settings
    1. Log in into GoDaddy
    2. Click on Account Settings
    3. Select the domain you will be working on
    4. Click on DNS
    5. Under the Advanced Feature section in the bottom of the page, click on Export Zone File (Windows)
    6. Save the file locally so you can restore the DNS to its original state if something were to happen

If you are not using GoDaddy DNS, make sure to follow the steps from your provider

Step 3 - Preparation Steps on the Target Office 365 Tenant
    1. Log on the target Microsoft 365 admin portal portal.office.com
    2. Make sure you are a Global Administrator on the target tenant.
    3. Create all end-users accounts using the <tenantName>.onmicrosoft.com address.
    4. Provision all the necessary Microsoft 365 licenses from BEMO, your CSP (Cloud Solution Provider) 😀
    5. Assign the licenses to your end-users.
    6. Note: all end-users included in the email migration must be licensed. They must have at least Exchange Online Plan 1 assigned. The Global Admin account needs to be licensed as well.

Step 4 - Enable SSI (Source-Side Impersonation) on the Target Office 365 Tenant

  1. Click on the Windows Start
  2. Search for Windows PowerShell(PowerShell should already be installed).
  3. Start PowerShellunder an administrator context (right-click -> run as administrator)
  4. Run the following PowerShell commands (one at a time):
    Set-ExecutionPolicy Unrestricted
    $LiveCred = Get-Credential
    $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection
    Import-PSSession $Session
    Enable-OrganizationCustomization
    New-ManagementRoleAssignment -Name "App Impersonation" -Role "ApplicationImpersonation" -User "admin@domain.com"

Notes:

  • You will be asked to enter some credentials, enter the Global Admin from the target tenant first.
  • Enable-OrganizationCustomization command can take few minutes to run.
  • Make sure to replace "admin@domain.com" in the last PowerShell command above with the global admin account used for migration.
  • Close the PowerShell Command
Step 5 - Become Tenant Admin on GoDaddy
    1. Go to Azure AD Portal https://portal.azure.com (in private mode)
    2. Use the GoDaddy credential from one of the users with Admin privileges
    3. Once on the Azure portal, select Azure Active Directory.
    4. Go to Users.
    5. Look for an Admin account that looks like admin@xxxx.onmicrosoft.com.
    6. Select this user account and click on Reset Password at the Top Navigation pane > Reset Password.
    7. You will get a temporary Password, Copy the temp password as well as the admin@xxxx.onmicrosoft.com username into Notepad.
    8. Sign-Out for the Azure Portal and open a new browser session and login to https://portal.azure.com with the New Global Admin Account admin@xxxx.onmicrosoft.com. During the first sign-in, reset the password and set a new password.
    9. Make sure to save it locally on Notepad
    10.  Important: make sure that the Global Account is licensed too!
Step 6 - Enable SSI (Source-Side Impersonation) on GoDaddy
Note: these are recommended steps to avoid asking all passwords from your end-users.

    1. Click on the Windows Start button.
    2. Search for Windows PowerShell (PowerShell should already be installed).
    3. Start PowerShell under an administrator context (right-click -> run as administrator)
    4. Run the following PowerShell commands (one at a time):

      Set-ExecutionPolicy Unrestricted
      $LiveCred = Get-Credential
      $Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://ps.outlook.com/powershell/ -Credential $LiveCred -Authentication Basic -AllowRedirection
      Import-PSSession $Session
      Enable-OrganizationCustomization
      New-ManagementRoleAssignment -Name "App Impersonation" -Role "ApplicationImpersonation" -User "admin@domain.com"

Notes:

  • You will be asked to enter some credentials, enter the Global Admin from the source tenant first.
  • Enable-OrganizationCustomization command can take a very long time to run and will likely display an error saying that the tenant is already enabled.
  • Make sure to replace "admin@domain.com" in the last PowerShell command above with the global admin account used for migration.
  • Close the PowerShell Command 

SSI will now be enabled on both the target and source tenant.

godaddy to office 365 migration case study with chris cotton


Step 7 - Create a Migration Project on BitTitan and Perform a first Full Migration

  1. On BitTitan Go to My Projects
  2. Create a Mailbox ProjectMailbox project BitTitan
  3. Fill up Project Name and create a New Customer
  4. Provide an endpoint name and provide the credentials for the source (ie credentials for the Global Admin).BitTitan
  5. This is what needs to be selected for GoDaddy:BitTitan
  6. Create an endpoint for the target. Provide the Global Admin credentials.BitTitan
  7. Leave the following box uncheckedBitTitan
  8. Save Project
    BitTitan
  9. Run the Autodiscover tool
    BitTitan
  10. Make sure that all the mailboxes that are in scope are displayed in the project window.
  11. Make sure to change the target email to the onmicrosoft.com one that was setup on step 3. Edit each mailbox and change the target email address if necessary.
  12. Select at least 2 mailboxes and verify that the credentials are valid ==> Start / Verify Credentials
  13. Wait until both jobs are completed (it can take a few minutes…..)
  14. If all are ready, select all mailboxes in scope and launch a full sync ==> Start / Full MigrationBitTitan
  15. Make sure to buy BitTitan licenses if there is not enough. A Credit Card and address will need to be used at this stageBitTitan
  16. If there are enough licenses, start the migration
    BitTitan
  17. Wait for the first migration to be completed. THIS CAN TAKE SEVERAL DAYS!!!


Migrate GoDaddy to Office 365

Step 8 - Log in to Client Source Tenant Admin on GoDaddy

  1. Go to Azure AD Portal (https://portal.azure.com (in private mode)
  2. Log in to with the New Global Admin Account

Step 9 - Add the vanity domain with onmicrosoft.com account to each user

Open Windows PowerShell as Administrator and run the following commands:

 

Import-module MSonline
(Install-Module MSOnline if you don’t have the module installed yet)

 

Connect-MsolService
Enter the new Global Admin Credentials

 

Get-MsolUser -DomainName "domain.com" | Select UserPrincipalname
Get the list of all users using the vanity domain

Set-MsolUserPrincipalName -UserPrincipalName "username@domain.com" -NewUserPrincipalName "username@netorgXXXXXX.onmicrosoft.com"
Make the netorgxxxxxxx.onmicrosoft.com be the main SMTP to the given user

 Repeat for all users

Now, all the users have their main SMTP set to xxx@NETORGxxxx.onmicrosoft.com

Step 10 - Remove Federation with GoDaddy

  1. Open Windows PowerShell as Administrator and run the following commands:

    Connect-MsolService
    Enter the new Global Admin Credentials

    Get-MsolDomain
    To get the list of all the domain added with Office 365. Look for the domain which shows Federated. That is the domain which is Federated with GoDaddy and we would like to remove the Federation and Turn it into a Managed Domain.

    Set-MsolDomainAuthentication -DomainName "Federatedomainname.com" -Authentication Managed
    To Convert Federated domain to Managed

      

Step 11 - Delete any vanity domain reference within Exchange Online

 

Go to https://outlook.office365.com/ecp

Click on Recipients

Click on Mailboxes

Double-click on a mailbox

Click on email address

Remove any address including the vanity domain you need to delete

 

Repeat the steps above for all mailboxes

Repeat the steps above for Groups, Resources, and Shared mailboxes

Step 12 - Remove Domain from GoDaddy

Run the following commands:

Remove-MsolDomain -DomainName "domain.com" -Force
To remove the domain with domain name “domain.com” from GoDaddy Office 365 Tenant.

Step 13 - Add vanity domain and update DNS on new Office 365 tenant

  1. Login to Office 365 with Admin credentials
  2. Go to Admin-> Setup -> Domains
  3. Click on Add Domain
  4. Enter your domain
  5. You will be prompted by the Verify Domain page. Select Add a TXT record instead
  6. On a separate browser, open your DNS and add the TXT record
  7. Once done, wait few minutes and then click on Verify
  8. You will now be prompted by the Update DNS settings Select I'll add the DNS records myself
  9. Update the DNS accordingly and remove any GoDaddy email server references
  10. Once done, click the Refresh button until you get the message "All DNS records are correct, no error found"

godaddy to office 365 migration case study with body scientific

Step 14 - Update primary email addresses to new vanity domain

  1. On Office 365 Portal, click on Users -> Active users
  2. Select one user, and click Edit within the Username / Email section
  3. Create a new alias using the new vanity domain name and click Add
  4. Click Set as primary
  5. A big yellow warning box will be displayed. Click Save
  6. Click Close
  7. Now ready Steps B through F for all the other users 

If you get a warning Red box saying that you need to wait up to 4 hrs, do the following steps: 

Open Windows PowerShell as Administrator and run the following commands:

Import-module msonline

Connect-MsolService

Get-MsolDomain

Set-MsolUserPrincipalName -UserPrincipalName "username@xxx.onmicrosoft.com" -NewUserPrincipalName "username@domainname.com"

Step 15 - Update Shared Mailboxes Primary email addresses to new vanity domain (if applicable)

 

Step 16 - Test email delivery

  1. On Office 365 Portal, click on Users -> Active users
  2. Select one of the user and reset his password (uncheck Make this user change their password when they first sign in)
  3. Now, send a test email to this user
  4. In a separate window, open Office 365 portal, use the credential of this user, and confirm that your email was received.
  5. Delete the test email from their inbox as well as their deleted email folder

 

Consider this step completed only when both send and receive tests have been successful

 

Note: We have noticed, in some cases, that It can take up to 1 hour to be able to send and receive emails due to DNS propagation (when click on Outlook Web, you may get an error until the propagation is complete)

 

Step 17 - Final Synchronization

  1. This step is really important, a final synchronization needs to be performed to make sure that all emails have been captured.
  2. In BitTitan, Once the domain has been correctly added on Office 365. Modify the project settings and change the source to be the admin account on the netorgXXX.onmicrosoft.com account instead of the account using the vanity domain. 
       BitTitan
  3. Run a full synchronization on 1 small mailbox to validate that there is no credentials issues
  4. If the test full sync does not work, make sure that the password for the source admin has not been modified during the vanity domain deletion.
  5. Run a full synchronization on all mailboxes and wait for this step to be completed before proceeding to next step.

Step 18 - Password Reset

  1. Now, reset the passwords for all users (using the password you have communicated to your users in Post Migration Steps) and check this user can change their password when they first sign in
  2. All passwords should now have been reset

Step 19 - Clean up

  1. Make sure to delete the accounts from the Deleted Users to Permanent Deletion from Office 365. Open Windows PowerShell as Administrator and run the following commands:

    Import-module msonlibe
    Connect-MsolService
    Get-MsolUser -ReturnDeletedUsers | Remove-MsolUser -RemoveFromRecycleBin -Force

  

Step 20 - Set SSPR on a new domain

  1. Within Office 365, click on Admin -> Admin centers ->Azure Active Directory
  2. Click on Azure Active Directory
  3. Click on Password Reset
  4. Under Self-service password reset enabled, select All
  5. Click Save 
Step 21 - Email Testing
  1. On Office 365 Portal, click on Users -> Active users
  2. Select one of the user and reset his password (uncheck Make this user change their password when they first sign in)
  3. Now, send a test email to this user
  4. In a separate window, open Office 365 portal, use the credential of this user, and confirm that your email was received.
  5. Delete the test email from their inbox as well as their deleted email folder

Consider this step completed only when both send and receive tests have been successful

Step 22 – Turn on Azure Baseline Security (if you do not use Conditional Access)

  1. Go to https://portal.azure.com
  2. Click on Azure Active Directory
  3. Click on Properties
  4. Click on Manage Security defaults
  5. Select Yes for Enable Security defaults
  6. Click Save 

godaddy migration cost calculator


Post-migration Steps from GoDaddy to Office 365

 

Step 1 - Reset your password

To connect to your new email:

  1. Go to https://www.office.com
  2. Click on Log in
  3. Use your credentials
    1. Username: <your email address> (i.e.: johndoe@contosos.com)
    2. Temporary password: NewPassw0rd! (<-just an example)
    3. Follow the wizard to reset and create your own password.
    4. Once done, you will be able to check your email on your smartphone (iOS or Android) using the Outlook app and/or via Office 365 Outlook Web (as shown below)

office_365_portal

Step 2 - Log off your Office Application from GoDaddy

  1. Open Microsoft Word
  2. Click on Files
  3. Click on Office Account
  4. Click on Sign out
    1. You will now get a message similar to the one belowlog_off_office365_for_godaddy
  5. Click Yes
  6. Repeat steps D and E until your only option is Sign In (as shown below)office365_sign_in
  7. Click Sign in
  8. Enter your new credentials (Select work or school if asked)
    1. Username: <your email address> (i.e.: johndoe@contoso.com )
    2. Password: use the one you created when resetting your password in step 1
    3. Your Office 365 Office Applications are now fully disconnected from GoDaddy and now connected to your new Office 365 tenant

Step 3 - Update Office 365 to the latest version

  1. Open Microsoft Word
  2. Click on Files
  3. Click on Office Account
  4. Click the button Update Options -> Update now
    1. Office will either install an update or you will get a message such as “You’re up to date! The latest version of Office is installed on your computer”

Step 4 - Reset your Outlook Profile

If you were using Outlook 2013 or 2016 to manage your email hosted by GoDaddy, you will need to reset your Outlook profile as your Exchange server has changed from GoDaddy to Microsoft. Watch our video video on Microsoft Outlook Profile Update.

godaddy to office 365 migration case study with deborah lopez

What if you don't know how to do this, don't want to try and mess it up yourself, or don't have the time?


We can do it for you, go to our migration quote builder and we'll give you the price of doing this without even having to talk to us. 😊 Want to talk to someone about the specifics? Just open our web chat on the right side of this web page or schedule a call with Josh below.

godaddy to office 365 migration talk to sales

 

Brandon Lecoq
Written by Brandon Lecoq

Cybersecurity Manager

Post a Comment