bulk smtp provider

dedicated smtp server

Powermta Introduction


PowerMTA is a Commercial Mail Transfer Agent (MTA) used by many email service providers (ESPs), Mass Mailing Companies And Paid SMTP Providers Like Sendgrid.com, Mandrill.com, SMTP.com, Sendloop.com, and many others.


powerMTA


Installation


To show you exactly how can you setup PowerMTA on Centos 6.5 x86_64 in any Linux Server Type (ex: Virtual Private Server, SSD Cloud Server, or Dedicated Server), We will take an example of a small SSD Cloud Server.


I recommend you to spend $10-15.00 on the First Package from amazon to deploy an SSD cloud server in 55 seconds, Remember it should be a Centos 6.5 64bits (Don't include any App - ex: Lamp) and try our command lines Step by Step Bellow:


Getting Started


Before Getting Started you need to register a Domain Name of your choice on a popular registrar. We will use Godaddy as an example in this Tutorial.


Let's Say our new Domain Name is:


jsmtp.com

Howerver, if you are new on SSH that's not a problem, all you have to do is to get an SSH Client Software.


For Mac Users:


Try VSSH Download Now!

For Linux Users:


Open Your Terminal And Tap the command bellow :


sudo ssh Server_IP

For Windows Users:


Try Bitvise Download Now!

Step One - Setup an A Record for the main domain name


The first thing to do after deploying your new SSD Cloud Server, you need to point your Server IP with your main domain name.


Let's say for example your Server IP is : 103.208.153.101


Go to the DNS Zone File under your Godaddy account after accessing the Control Panel of your current domain name.


Change your current A Record with your Server's IP Address.


Step Two- Setup a Hostname


You will find the Root Password in your mailbox that you use to register with on your DigitalOcean Account After Deploying Your New Server.

To check your current Hostname, Tap this command in the Terminal of your SSD Cloud Server:


hostname -f

You will find the name of your SSD Cloud server.

Change Your Current Hostname with a subdomain similar to the following bellow:


hostname server1.jsmtp.com

Change "jsmtp.com" with your new domain name in Godaddy

Tap the first command again in the Terminal:


hostname -f

you should see a result similar to the following:


server1.yourdomainname.com

You Need to add a Cname Record in the DNS Records Section of your new domain name at Godaddy.com for the Hostname to work properly:



  • Keep the defaults Nameservers of godaddy like this :


Godaddy Nameservers



  • Access the DNS Records Section (DNS Zone File).


DNS Zone file



  • Add a Cname Record Like the Following :


add zone record



  • Click Finish And Save Changes in the red alertbox.


Step Three- Install Apache, Php, Mysql


Tap the commands bellow in your server SSH Command line like the following :


For Centos 64bits :


The Apache web server is the best choice for any webmaster from a beginner to an expert that want to host his own website.


First we need to install Apache using the command bellow :


yum -y install httpd.x86_64

and then, we need to install Mysql including some "Must-Have" extensions to make it work perfectly.


yum -y install mysql.x86_64 mysql-devel.x86_64 mysql-server.x86_64 mod_auth_mysql.x86_64

Now, let's install PHP including Cli, Common and PHP-Mysql modules :


yum -y install php.x86_64 php-cli.x86_64 php-common.x86_64 php-mysql.x86_64

For Centos 6.5 32Bits :


if you have a PMTA (PowerMTA) for 32bits which i don't recommend it, we need to do exactly as what we we did for centos 6.5 64Bits, there's no other changes except the names of packages. so let's start our installalation of Apache using the command bellow :


yum -y install httpd

and then, we need to install Mysql including some "Must-Have" extensions to make it work perfectly.


yum -y install mysql mysql-devel mysql-server mod_auth_mysql

Now, let's install PHP including Cli, Common and PHP-Mysql modules :


yum -y install php php-cli php-common php-mysql

EDIT: Skip Step 4


----------------------------------------------------------


Step Foor- Install Postfix, Sendmail, Bind


For Centos 64bits :


Postfix is free and popular Mail Transfer Agent (MTA) similar to exim and PowerMTA used to send and receive emails From your server, Which we will need it to setup our SMTP Server to send messages.


Start Postfix installation by Typing the command bellow:



yum -y install postfix.x86_64

Sendmail is a MTA (Mail Transfer Agent) server used for transferring email from between different hosts. it's uses SMTP (Simple Mail Transfer Protocol) protocol. Most of system administrators preferred to use Sendmail server as Mail Transfer Agent than other MTAs.


Start Sendmail installation by Typing the command bellow:



yum -y install sendmail.x86_64 sendmail-cf

Now we need to install the DNS Server for our server by typing the command bellow:



yum -y  install bind.x86_64 bind-utils.x86_64

For Centos 6.5 32Bits :


Start Postfix installation by Typing the command bellow:



yum -y install postfix

Start Sendmail installation by Typing the command bellow:



yum -y install sendmail sendmail-cf

Now we need to install the DNS Server for our server by typing the command bellow:



yum -y  install bind bind-utils

----------------------------------------------------------


Step Five- Install Ntp, Gcc, Dos2Unix, Sudo & wget, Make


In this step i suggest to install those packages to complete the installation of your server for a later use of a web App to send emails with PowerMTA. for example : Interspire, OEM Pro, PHPlist or your In-house custom application developed by your own web developer. Also we used to install MySQL and PHP in Step Three for the same reason.


Let's start installing those packages by typing the commands bellow:


For Centos 6.5 64Bits :


yum -y install ntp.x86_64 gcc.x86_64 dos2unix.x86_64 sudo.x86_64 wget.x86_64 make.x86_64

For Centos 6.5 32Bits :


yum -y install ntp gcc dos2unix sudo wget make

Step Six- Perl-ExtUtils-MakeMaker, Cron, Iptraf, Nano, Telnet, Lsof


Let's Install those packages that you may need them too:


For Centos 6.5 64Bits :


yum -y install perl-ExtUtils-MakeMaker.x86_64 cronie.x86_64 cronie-anacron.x86_64  crontabs.noarch  iptraf.x86_64  nano.x86_64 telnet.x86_64 lsof.x86_64

For Centos 6.5 32Bits :


yum -y install perl-ExtUtils-MakeMaker.x86_64 cronie.x86_64 cronie-anacron.x86_64  crontabs.noarch  iptraf.x86_64  nano.x86_64 telnet.x86_64 lsof.x86_64

Step Seven- Install PHP Modules


For Centos 6.5 64Bits :


yum -y install mod_ssl.x86_64

cd /home/  wget http://www.jsmtp.com/packages/x86_64.tar.gz | tar -xz  rpm -ivh /home/x86_64/*

For Centos 6.5 32Bits :


yum -y install mod_ssl

cd /home/  wget http://www.jsmtp.com/packages/x386.tar.gz | tar -xz  rpm -ivh /home/x386/*

Step Seven- Install PowerMTA


in this tutorial i will show you how to install PowerMTA in the right way, we don't provide any illegal license or cracked version, before continuing this step i need you to know that we don't have any responsibility if you have a legal purchase from Port25.com or a cracked version, we provide you only the installation method newbie friendly without problems. you don't have to pay thousands of dollars to somebody from freelancer.com to do it for you, Now you can do it all by yourself.



  • I suggest that you have your own license to keep yourself safe from any Law penalties.


PowerMTA is a Must Have for any successful email marketer or a bulk e-mailing solution. if you are an email marketer you will know that if you purchase a legal copy of PowerMTA, and you know what you need to do to make money by sending emails to your clients, especially if you send Marketing Emails using CPA, CPL Offers from Affiliate Networks Like Peerfly, Affiliaxe, Convert2Action, Idrive, and many similars.


and Also you need a web App to send those emails, there's many Free and Paid Solutions, some of them are in the partners sections inside PowerMTA Official Website, and there's some famous names like : Interspire, OEM Pro, PHPList,… etc


So Let's get started in our PowerMTA Installation on our SSD Cloud Server. Upload your RPM file to the "/Home/" folder using an FTP Software Like Filezilla or any similars.

Open the SSH Command Line and tap the commands bellow:


If you have a PowerMTA for Centos 6.5 64Bits :


rpm -ivh /home/PowerMTA-4.0r6.x86_64.rpm

If you have a PowerMTA for Centos 6.5 32Bits :


rpm -ivh /home/PowerMTA-4.0r6.x386.rpm

You Will see an Output Like this :


Preparing... ########################################### [100%]  1:PowerMTA ########################################### [100%]    PowerMTA has been installed. Please review the configuration  (in /etc/pmta/config) to ensure it fits your needs.    The PowerMTA User's Guide is available on file:/usr/share/doc/pmta/UsersGuide.pdf.    *** WARNING ***  The SMTP TCP port is already in use by other software on this  system. Installation will continue, but in order to be able to  start up PowerMTA you will need to stop the other software  or reconfigure PowerMTA to use an alternative port. See the  manual section about startup problems for more information.  *** WARNING ***    *** NOTE ***  gdb is not installed. Please install it at your earliest convenience,  so that PowerMTA can use it to provide more useful reports in case of problems.  *** NOTE ***    Thank you for choosing PowerMTA.    This software requires a license to run. To obtain a license key,  please contact Port25 at <sales@port25.com> or call +1.410.750.7687  during office hours, U.S. Eastern Time.    If you already received a license key from Port25, please save it  as /etc/pmta/license before starting PowerMTA.    Starting PowerMTA web monitor: [ OK ]  

And then You need to create some folders for PowerMTA to work perfectly like a charm lol, first of all, we need to enter the following command lines bellow in SSH :


chown pmta:pmta /etc/pmta/config;  chmod 640 /etc/pmta/config;  mkdir -p /var/spool/pmtaPickup/;  mkdir -p /var/spool/pmtaPickup/Pickup;  mkdir -p /var/spool/pmtaPickup/BadMail;  mkdir -p /var/spool/pmtaIncoming;  chown pmta:pmta /var/spool/pmtaIncoming;  chmod 755 /var/spool/pmtaIncoming;  chown pmta:pmta /var/spool/pmtaPickup/*  mkdir -p /var/log/pmta;  mkdir -p /var/log/pmtaAccRep;  mkdir -p /var/log/pmtaErr;  mkdir -p /var/log/pmtaErrRep;  chown pmta:pmta /var/log/pmta;  chown pmta:pmta /var/log/pmtaAccRep;  chown pmta:pmta /var/log/pmtaErr;  chown pmta:pmta /var/log/pmtaErrRep;  chmod 755 /var/log/pmta;  chmod 755 /var/log/pmtaAccRep;  chmod 755 /var/log/pmtaErr;  chmod 755 /var/log/pmtaErrRep;

If you didn't get any error you are in the right direction and everything works just fine for now.

so we need to configure our Httpd service or you can call it Apache config file.

enter your apache config file using this command:


nano /etc/httpd/conf/httpd.conf

Go to the last line under httpd.conf and add those lines, don't forget to change Servername and Server Alias Values With your domain name. (don't forget the error_log.yourdomain.com & access_log.yourdomain.com)


ServerName jsmtp.com  ServerAlias jsmtp.com  DocumentRoot /var/www/  ErrorLog /var/log/httpd/error_log.jsmtp.com  TransferLog /var/log/httpd/access_log.jsmtp.com  ServerName 103.208.153.101  ServerAlias 103.208.153.101  DocumentRoot /var/www/  ErrorLog /var/log/httpd/error_log  TransferLog /var/log/httpd/access_log

and then click CTRL + X and save the file in the same name.


Step Eight- Configure PowerMTA and Sending a Test Email



  • Adding Your License Number for PowerMTA :


We need to add a file under the default PMTA Folder the same as the following : "/etc/pmta/".


Type the following command to create the license file :


nano /etc/pmta/license

and then copy and paste your license key, Save the file and exit the nano editor.



  • Edit PowerMTA Config file:


Type the following command to edit the config file :


cd /etc/pmta/  rm- rf config  wget http://www.jsmtp.com/packages/config  chown mysql:mysql config

Let's say your current ip address of your personal computer is : "81.12.079.22", Please make the following under "/etc/pmta/config" file using nano:


nano /etc/pmta/config

Find the following lines:


#...HTTP management interface  http-mgmt-port 8080 Admin  http-access 127.0.0.1 admin

and change it With this Lines:


#...HTTP management interface  http-mgmt-port 8080 Admin  http-access 81.12.079.22 admin

and then change the following line:


#relay-domain  relay-domain jsmtp.com

With this line (change jsmtp.com with your domain name):


#relay-domain  relay-domain example.com

Find those lines:


smtp-listener 127.0.0.1:2500  smtp-listener 103.208.153.101:25

and change "103.208.153.101" with your server IP Address.


and now we need to setup our VMTA and we can call it "Virtual MTA".


change the following lines :


<virtual-mta mta1E>  smtp-source-ip 103.208.153.101  host-name jsmtp.com  domain-key SELECTOR1,jsmtp.com,/etc/pmta/domainKeys/103.208.153.101.private  </virtual-mta>

Check this tag <virtual-mta mta1E>


mta1E is the name of your VMTA, you can put any name that's does not matter. but you need to understand that if you have a dedicated server with more then 2 IP Addresses and you want to work with them both you need to double this tag and put another with one with different name and give other values like a an other host-name domain name or sub-domain, also you should not forget about the httpd configuration. you need to add other virtual host get more info for each ip address and domain name or sub-domain.


let's continue our last step; we should give smtp-source-ip the server ip address, give host-name value your main domain name, give domain-key values as the following :


let's say your main domain name is "jsmtp.com", try to change jsmtp.com with your main domain name.


domain-key SELECTOR1,example.com,/etc/pmta/domainKeys/103.208.153.101.private

change "103.208.153.101.private" to "your_server_ip_address.private"

now we need to setup our DKIM for your domain name with PowerMTA.


cd /etc/pmta/  mkdir domainKeys  cd domainKeys  nano your_server_ip_address.private

to generate a new dkim record. please go to : port25.com and click the DKIM Wizard Section and then you need to enter your domain name and your SELECTOR, in our situation you should write "SELECTOR1".


and then generate your DKIM easily.


copy and past only the Private Hash code under "103.208.153.101.private" file and save it.


and then in bottom of that page you will find the TXT record that you need to add it on your godaddy DNS ZONE FILE. (don't worry everything is explained easily in that page).


now we are done with the PowerMTA Config file, i've included some high performance configuration tags for you to send millions of emails without problems and you can Warm up your server for a better delivery and get into the inbox folder of your customers.


let's give PMTA:PMTA permissions to the config file by typing this command bellow:


cd /etc/pmta/  chown pmta:pmta config


  • Let's try to Send a test email:


We will be using Telnet Command line to send a test message to your mailbox, let's say your email account "jsmtp@hotmail.com" we will using the command "rcpt to:" and "mail from:" to choose the email address that we will use to send with, let's say "example@jsmtp.com" (Note: Example@yourdomainname.com).


Let's type the commands bellow in our SSH Client like this :


telnet localhost 2500  mail from:example@jsmtp.com  rcpt to:jsmtp@hotmail.com  data  .  quit

Check Your Inbox and let me know if everything works fine.


if you like This Tutorial, or you had any problem to setup your PowerMTA like i explained to you here, please don't hesitate to leave a comment at jsmtp.com and i'm ready to help free of charge


Leave a Reply

Your email address will not be published. Required fields are marked *