PowerMTA Server with Mailwizz, Enjoy!
Hi! I am Hasan. From H-educate, I am in the online world for more than ten years. and I worked in Different Fields of Online Business.
I Worked in Building and Developing Websites and Apps as a freelancer, worked in Facebook advertising and content marketing, SEO, Email Marketing, Online Shopping, E-learning, and much other stuff.
Today I work mainly in 5 fields:
- I have some websites monetized with Ads.
- Online Instructor on Udemy and Youtube.
- Digital Marketer.
- Programming and Development.
- IT & Networking.
What I concluded after all this, that Marketing and especially Digital marketing is almost more important than the business it’s self. Imagine that you have a shop – a beautiful shop- but no one knows about it. Then, You will not sell anything.
So besides working hard on your business, you need always to think and work hard on marketing.
One of the best marketing strategies used, today is Email marketing, which means (as you may know): Building a Targeted Email List and marketing your stuff to turn those emails into customers.
So When it comes to Email Marketing, You have two choices:
1. Choose one of the leading email marketing companies like MailChimp, Aweber, Get response, or whatever, pay them monthly fees to accomplish your work under there limits and rules.
2. Build your email marketing system and go beyond any limits. (What we will talk about here)
You may say: “I don’t have any IT skills, and I don’t want to bother my head with this stuff!”
Then Why I am Here?
I am Here to help you accomplish what you think is hard, and make it as a piece of cake. YES!
Don’t believe me? After you finish this article maybe 15 minutes from now, you will see how things are easy, and it’s only one-time configuration, and then you will have fun with your mailing system and go beyond limits!
Of course, this is a bit harder than setting up a new email account on google for your friend. However, I tried my best to make this guide as informative and entertaining as a guide like this can be. The rest is up to you!
Ok, I think this is enough, let’s start the real work!
What I will cover in this Guide:
- PowerMTA Bulk Mail System Overview.
- Getting a Domain Name.
- Setting up our management server
- Get a VPS server
- Installing the Web Hosting Manager to make things Easy (Webmin)
- Installing Email Marketing Software (MailWizz)
- Install and Configure PowerMTA mailing server.
- Setup SPF, Dkim, and rDNS to get 10/10 as a sending score.
- Connect Mailwizz with PowerMTA.
- Note About IP Rotation.
- Warming Up Your IP, Final Tip before you send.
1. PowerMTA Bulk Mail System Overview
You may have noticed that I said: email bulk system and not email bulk server.
To make things simple, when you want to send an email, you need to use an SMTP server or an email server.
What I mean here by “System” is that I am not only going to show you how to build an SMTP Server but also how to configure an Email Marketing Application “MailWizz in Our Example” so you can manage Lists, campaigns, and your Servers, all from one interface. Cool ha!
Our system will be made up of the following:
- Management Server (a dedicated VPS server where we will install the hosting manager and the email marketing management software “Mailwizz”)
- Another VPS server where PowerMTA will be installed and configured.
*Note: you can build everything on one server, but it’s better to separate management servers from your SMTP servers.
We will build Our SMTP server using PowerMTA, and we’ll also make sure our DKIM,SPF and rDNS records are set up correctly and configure everything properly to reach 10/10 sending score. You will see that!
To manage our lists, campaigns, and newsletters, we’ll use Mailwizz, as I mentioned before.
The Following Diagram shows Our Overall Email Marketing System:
LET’S START! 🚀🚀🚀
2. Get A Domain Name
The first thing you need is a domain name that you are going to use as a name for your server, as an example: h-educate.com is my server domain name, so you need to buy one.
A Domain usually costs between 1.99 – 15$ per Year, so Its not that big deal.
If you don’t know what a domain name, DNS is, and such things, please watch the following 2 Mins lecture to understand the concept very easily:
This Lecture is part of my Premium Top selling Udemy Course “Build Your Own SMTP Email Server and Send Unlimited Emails!” ⭐⭐⭐⭐⭐
So Let’s get a Domain:
You can choose between a large variety of domain providers, feel free to select whatever you want, but in this tutorial, I will be using GoDaddy Domain Registrar.
So open GoDaddy
Create an account and buy a domain name, its very simple
Watch me doing this in the following video:
This Lecture is part of my Premium Top selling Udemy Course “Build Your Own SMTP Email Server and Send Unlimited Emails!” ⭐⭐⭐⭐⭐
Now you have a domain. We are ready to go and get our First VPS Server to install our email Marketing Application “Mailwizz.”
3.Setting up our management server
Get A VPS Server From Digital Ocean.
Before we start, take a look at this video to understand what is a VPS if you are new to this. If you already know, you can skip.
So you heard me said “Digital Ocean,” is it obligatory to choose it ?? or we can go with other Cloud/Hosting Service companies?
The answer is you can choose whatever company you want to start with, but in my experience and several years working with Digital ocean, I feel it’s very easy to start with. And it allows the SMTP ports by default, which makes it easy for you.
AND TO HELP YOU MORE 🤩🤩🤩 drop your email and I will send you a 50$ coupon for 1 month to test everything on Digital Ocean For free, WoW!
So Now, you created a Digital Ocean Account, we are ready to Get a VPS and Install our Web Hosting Manager (Webmin)
Note: Webmin is a software that makes it easy to manage your VPS servers and host web applications and websites.
By the way, if you would like to learn how to host WordPress, PHP, ASP.NET websites and web applications very easily, you can join in My Awesome Udemy course now for only 9.99$ instead of 199$ for a limited time:
Ok, Now Click on Create Button on the Right Corner, then click Droplets. Click on Ubuntu and select your configuration…
Now we need to install Webmin and then MailWizz On this Server, to make things easy for you, I created a video lecture that will show you this step by step.
So after watching this, your First Server will be almost ready.
Please watch, and if you have any question, I will be here to help.
Free Weekly Email Marketing Tips and Videos to help you boost your Online business, Check Here.
4. Setup PowerMTA Server
Now We Need to get another VPS server to setup PowerMTA on. So let’s Create another Droplet, and now we will choose Centos as our Droplet OS.
You can go with 5-10$ machines, its enough to start with, later on, you can resize your server if you want to go with heavy Loads.
Also, to make things easy, the following video will show you a step by step guide on how to upload the files and install them on your machine.
Tools Mentioned in the video:
Vesta Installation Commands:
curl -O http://vestacp.com/pub/vst-install.sh
service pmta start // Start the powermta service
service pmta restart // restart the powermta service
pmtad –debug //debug the powermta service startup failure
netstat -tulpn //check processes using ports
Now we are almost done! Do you see how easy it is?
5. Setup SPF, DKIM, & rDNS
Before we set up SPF, DKIM, and rDNS let’s talk about each in brief.
SPF (Sender Policy Framework):
An SPF record is a TXT record that is added to your Domain DNS Zone and allows you to set the mail servers that are allowed to send emails from your domain.
Messages sent from a server that isn’t included in the SPF record might be marked as spam.
As an example, you can’t send an email from your own server and set your sending email as “firstname.lastname@example.org,” you can’t use google’s domain, this indicates that you are trying to spam.
In the same way, you can configure SPF and prevent anyone from using your domain to send emails, which may lead marking your domain as a spam domain and decrease your reputation. So setting SPF is very important when it comes to making your domain trusted by other mailing providers.
Ok, So let’s set up SPF. Open your DNS zone in GoDaddy and add the following record:
v=spf1 a ip4:XXX.XXX.XXX.XXX ~all
*Replace with your server IP.
Now only your server can send emails from your domain.
Dkim (DomainKeys Identified Mail) :
A Dkim record is also a text record in your DNS that holds a public authentication key. This key will be validated using a private key saved privately inside your server when sending emails so that all emails will be signed and this will avoid any alterations and protect your emails originality, and this is very important for your server to archive high sending scores.
How to setup Dkim in PowerMTA?
Run the following commands inside your machine from putty:
- find / -name dkim.pem #this will find the Dkim private key location in your machine
- mv dkim.pem dkim_old #this will rename your existing key so that we can create a new private key.
- openssl genrsa -out dkim.private.key 1024 #generate a new private key using openssl
- openssl rsa -in dkim.private.key -out dkim.public.key -pubout -outform PEM #generate the public key
- mv dkim.private.key dkim.pem #rename the new key to be used by Powermta
- vim dkim.public.key #open the public key to copy to our DNS domain zone
Now open your PowerMTA config file again:
- Point your dkim key location inside your config file: “domain-key dkim,*,/home/admin/conf/mail/example.com/dkim.pem”
- Enable Key signing, just add “dkim-sign yes” inside your <domain *> tag(<domain *> dkim-sign yes…)
Then, restart the pmta service using the following command:
service pmta restart
rDNS (Reverse DNS):
The reverse DNS is called a pointer record that is used to point your IP to your Domain, its the inverse of the regular DNS A record. So when you call the IP, you will get the name. It is also an essential factor in setting up your mail server and increasing your sending score and reputation.
Setting the rDNS is very simple, especially in Digital Ocean. Just click on your Droplet name and make sure to enter the subdomain name of your domain. like mail.YourDomain.com
moreover, make sure to add an A record in your DNS zone for this subdomain.
6. Connect Mailwizz with PowerMTA.
I showed you how to add a delivery Server in the Mailwizz setup video. You can review if you want. In your Mailwizz Backend Dashboard, click on “Delivery Servers.”
Then add your server: set the hostname or IP, Port, user, and password.
All this was configured in the PowerMTA Config file that we saw in the PowerMTA Installation and Configuration Video.
Then, make sure to test your server by sending a test email.
If you face any problem, don’t hesitate to open a support question in the questions section.
7. Note About IP Rotation *Very Important*
I think since you are here, you already know what IP rotation is. However, in case you don’t, let’s talk about briefly and explain some important points.
IP rotation is simply a technique used to allow your SMTP email server to use multiple IPs when sending your Email marketing campaigns.
PowerMTA allows you to create something called “Virtual MTAs” and each MTA acts as a dedicated SMTP server inside your server with a custom IP and subdomain.
Let’s say you have your Main PowerMTA server with IP: 126.96.36.199, and your domain is examplemail.net
Then you create multiple subdomains: “server1.examplemail.net” “server2.examplemail.net” “server3.examplemail.net”
And you add multiple IPs to your server so that you will have multiple senders inside one mail server.
Why Use IP rotation?
If you surf the internet today, asking email marketers about this point, you will probably get the following answer:
When you use IP Rotation, you will use multiple IPs, which means you will distribute the campaign load, then this will decrease the possibility of blocking your IPs or blacklisting your domain.
Is this True?
Yes and No!
Yes, this will be helpful for those people who send massive email marketing campaigns without building their emails properly, in other words, for those who tend to spam or send to people who haven’t subscribed to their lists in a legit way.
However, if you work correctly, and you build your lists properly, and everything is clean, 1 IP can send millions of emails per day.
As a best practice, you can use 2 IPs, 1 for transactional emails, and 1 for marketing campaigns per server.
Are you interested in learning how to deploy PowerMTA with IP rotation on Amazon AWS cloud and go over more details?
8. Warming Up Your IP, Final Tip before you send.
Now that we have finished building our email system, we need to go over a process called “Warming up the IP.”
What is IP WarmUp?
“IP warming is the practice of gradually increasing the volume of mail sent with a dedicated IP address according to a predetermined schedule. This gradual process helps to establish a reputation with ISPs (Internet Service Providers) as a legitimate email sender.” (SendGrid)
In other words, now we create a new server with a new Dedicated IP, this IP is still new and not known by any ISP (Internet service provider), so you need to tell those ISPs, that you are here online, and you are not a spammer.
So what you need to do is to start sending emails gradually from your server according to a specific schedule. Example:
Day 1: 100 emails
Day2: 300 emails
Day3: 1000 emails
Day4: 2000 emails
And so on.
While warming up, you need to monitor your bounce rate and user activity and make sure your percentages are below limits, like keep bounce rate 2% or less and have good user interactions.
As a best practice, try to warm up with a double opt-in email list and make sure to target your emails correctly to the correct people, so you build a good reputation.
You can monitor and view your IP reputation status using the following website: https://www.talosintelligence.com/reputation_center
Also, make sure to start IP warm up after you get 10/10 in mail-tester.
If you need any help, please open a question in the questions section, and I will be there to help you.