The enterprise grade software PowerMTA is built especially for high-volume email marketers. MailChimp is a popular company that utilizes PowerMTA for their business. PowerMTA comes with many useful features for bulk email sending. This tutorial will show you how to install PowerMTA v5 on CentOS 7 VPS.
This is a part of our perfect bulk email server setup tutorial. Make sure you read and follow prior instructions before continuing with this tutorial. In summary, we will be configuring your additional IPs and installing PowerMTA. Let’s get started.
Pepare CentOS 7 Server for PowerMTA
Your VPS provider should have sent you an email with VPS login credentials by now. You need to use those credentials and connect to your servers’ SSH terminal. If you haven’t done that before, take your time and watch the video on Connect to Linux VPS over SSH tutorial. Learn and connect to your server over SSH.
If you’re connected to your server with username centos, you need to execute the following command to change to root user account.
If you’re logged in with the username root, you can ignore the above command. So, as the root user, let’s install some required softwares first.
yum -y install gdb perl wget unzip nano git
Do a quick update with the two commands below,
yum update yum upgrade
Next, we’ll disable postfix on the server. I found that most providers deliver their servers with either Postfix or Exim pre-installed. This software is going to cause us problems in the future. So, let’s disable them.
systemctl disable postfix.service systemctl disable exim.service
That’s it for server preparation. Let’s move to the next step.
Configure Additional IPs on CentOS 7
Additional IPs are an important part of a PowerMTA installation. Each IP will act as a Virtual MTA. The more IPs you have the more emails you can send out per hour. But before PowerMTA, your OS should be aware of these IPs. That’s what we’re going to do here. We’ll configure PowerMTA to use these IPs in a later step.
So, for example, let’s say I’m configuring 3 additional IPs for my server. Let’s say the IPs I got from my VPS provider are the following,
220.127.116.11 18.104.22.168 22.214.171.124
Now to configure these I have to create 3 files inside network-scripts directory. The first file I’m going to create is ifcfg-eth0:1. The following command will open a blank file.
Now I’ll paste the following content and save the file.
DEVICE=eth0:1 BOOTPROTO=static ONBOOT=yes IPADDR=126.96.36.199 NETMASK=255.255.255.0
Note the DEVICE and IPADDR lines. This adds IP address 188.8.131.52 as eth0:1 to the system. Next, I’ll add 184.108.40.206 as eth0:2. I’ll open a blank file named eth0:2 with the following command,
And paste the following content,
DEVICE=eth0:2 BOOTPROTO=static ONBOOT=yes IPADDR=220.127.116.11 NETMASK=255.255.255.0
I’ve only changed DEVICE and IPADDR lines. And likewise, I can add 18.104.22.168 to the system by creating a file named eth0:3 and pasting following content and changing only the DEVICE and IPADDR lines accordingly.
DEVICE=eth0:3 BOOTPROTO=static ONBOOT=yes IPADDR=22.214.171.124 NETMASK=255.255.255.0
I think you will get the idea. You need to do this for each additional IP you add to your system. Once you’ve created all the files, restart the network service for changes to take effect with the following command.
service network restart
If that goes okay, let’s do a server reboot as well.
You’ll be disconnected while the server is rebooting. Wait a few minutes and log back in for the next step. And remember to change to root user account if you’re login in with centos user account.
Install PowerMTA v5 on CentOS 7
I’m going to assume you already have SMTP.zip saved on your computer. Start by uploading it to /opt directory of your CentOS 7 server. You can use FileZilla to upload files to your server.
Next, log back in to your server using Putty and navigate to /opt directory.
Extract the SMTP.zip file,
The zip file contains a directory named SMTPFix5r1 inside. Navigate to it with the following command,
There will be an installation script inside this folder. Let’s make it executable.
chmod +x install.sh
Finally run the installation script with the following command.
This will install PowerMTA v5 on your CentOS server. Next, you need to configure PowerMTA to use multiple IPs and your domain before you can start using it.