How-To: Set up Email Forwarding for your domain using Mailgun
This tutorial is particularly useful if you are hosting your domain in a VPS, but you don't want to setup email forwarding via postfix, or setup your own imap or pop3 server (via dovecot or cyrus, for example) but you want a very effective and simple email forwarding service. I'm going to show you how you can use Mailgun's free service to point your domain's MX records and forward all incoming mails to one of your existing mailboxes.
This tutorial is also useful when your existing DNS panel doesn't support email forwarding (for example cloudflare.com)
Lets do it
Step 1: Signup for a free account in mailgun.com
Step 2: Log into your account in Mailgun and add a domain from the top menubar. Once your domain is added, you will see that mailgun gives you a few MX records and TXT records to be added for your domain, for both successful email forwarding and verification of the domain.
Step 3: Now go to your domain's DNS panel and add those MX records and TXT records provided by Mailgun.
Step 4: This is the final step. Log into your Mailgun account and go to Routes section from the top menu. Now add as many routes as you want. For example, if your domain is example.com and you want all the mails sent to [email protected] to be forwarded to [email protected] then create a route like this screenshot, and you are done