Migrating to Amazon WorkMail
Since registering my domain, donnyspi.com, in 2001, I have never used one of the big email providers for my mail. I always used the email service that came with my webhost, or I’d run my own mail server. These days, running one’s own mail server is an exercise in futility. Between fighting off spam and maintaining a good reputation of your IP address to ensure mail deliverability, it takes a lot of work.
Gmail has offered free custom domain hosting for email, but their policies continue to evolve so there’s too much uncertainly for me. They have a paid offering, as does Microsoft, but it’s more than I’d like to pay. When searching for a new home for my email hosting after my former service decided to shut down, I thought it was time to give Amazon WorkMail a try. I use AWS for hosting my website, so why not lean into their email offering?
Step 1: Sign up for the WorkMail Service
Signing up for the service from within my existing AWS account was easy. The first step is to create a WorkMail Organization (which differs from an AWS Organization). Since my domain was already hosted on Route 53, the rest of the setup was easy to verify domain ownership, setup DKIM, default From address, etc. I established a user for myself and my wife, which creates a mailbox. The billing unit for WorkMail is the user, so at $4.00/mo per user, WorkMail costs $8.00/mo for us. The amount of storage included is 50GB, which is plenty for us.
Step 2: Migrate Email from Existing Provider
Once my mailbox was established, the next step was to migrate my mail from the provider I was leaving. The best tool for this is imapsync, which I downloaded from here. Once I installed it, copying my email from my old provider to WorkMail was as easy as running this command, removing the -dry option when I was ready to run it for real:
--host1 mail.donnyspi.com --user1 [USERNAME] \
--password1 [PASSWORD] --ssl1 \
--host2 imap.mail.us-east-1.awsapps.com --user2 [USERNAME] \
--password2 [PASSWORD] --ssl2 --dry
It took under an hour to migrate my mail. It’s worth noting that this tool does not migrate contacts or calendar events.
Step 3: Flip the Switch
The final step was to update my domain’s MX record in Route 53 so my incoming mail would be sent to WorkMail. Before getting this far, I had shortened the TTL on my MX record to make the switchover take effect sooner. Once I was confident that the DNS change had propagated, I ran imapsync one last time to catch any remaining mail. The imapsync tool does a diff, so just the new mail was copied over.
The WorkMail web client works well and setting up my favorite mail app on my phone was easy as well.
I hope you enjoyed this Amazon WorkMail overview and migration walkthrough!