By default the GoDaddy VPS Servers relay mail through GoDaddy's relay servers. You have a 5,000 email per day limit. As an alternative to that you can use Amazon's Simple Email Service (SES). Typically by default you can get 50,000 emails per day via Amazon SES.
As of May 2020 Amazon's relay rate is $0.10 per 1000 emails sent and $0.12 for each GB of attachments you send. Additionally Amazon offers multiple regions where you can relay through as well as the ability to have a dedicated IP address for your relay.
* the number of relays is based on the number of recipients so 1 email send to 10 people or 10 emails each to 1 person are billed the same
* when you send using this method your emails will show in certain mail clients like Google Mail as from email@example.com via amazonses.com
So the first thing would be to setup an Amazon AWS account (https://aws.amazon.com) and add the domains you will be hosting email for in the SES section. You will need to verify each domain you wish to send from from adding some TXT records in the DNS. Once you've done this you will need to request to take the account out of Sandbox mode.
* Amazon does monitor for bounce a bounce rate as well as a compliant rate
* We expect our senders' bounce rates to remain below 5%. Senders with a bounce rate exceeding 10% risk a sending Pause.
* We expect our senders' complaint rates to remain below 0.1%. Senders with a complaint rate exceeding 0.5% risk a sending Pause.
In the Amazon SES console you will need to create / save your SMTP settings.
Once that is all done we are ready to configure the mail server settings in WHM on the VPS. This setup assumes we will send all mail for all domains via Amazon SES
We will now log into WHM on the VPS and go to the Exim Configuration Manager. Once there we want to select the Advanced Editor.
Now we can search on the page for Section: PREROUTERS
In the empty box for the PREROUTERS we will add the following
send_via_ses: driver = manualroute domains = ! +local_domains transport = ses_smtp self = send route_list = * localhost
Next we can search on the page for Section: TRANSPORTSTART
In the empty box for the TRANSPORTSTART we will add the following
ses_smtp: driver = smtp port = 2525 hosts_require_auth = localhost hosts_avoid_tls = localhost
* We will be setting up a secure tunnel to Amazon which is why we are using localhost
Finally we can search on the page for Section: AUTH
In the empty box for the AUTH we will add the following
ses_login: driver = plaintext public_name = LOGIN client_send = : USERNAME : PASSWORD
This is where we will enter the SMTP username and password we created in the Amazon SES Console.
The last step we have is to configure the Secure Tunnel to Amazon. You will do this via the terminal in WHM
Step 1) Install Stunnel
yum install stunnel
Step 2) Edit /etc/stunnel/stunnel.conf and add the following configuration
[smtp-tls-wrapper] accept = 2525 client = yes connect = email-smtp.us-east-1.amazonaws.com:465 delay = yes sslVersion = TLSv1
* This assumes you are using the Northern Virginia (East 1) Region - Your connect URL maybe different depending on which region you are using.
Step 3) Start the Secure Tunnel and add a cron job to it to load when the server is rebooted.
a) stunnel /etc/stunnel/stunnel.conf b) crontab -e c) @ReBoot stunnel /etc/stunnel/stunnel.conf
Additional information / details can be found at
Once your issue is resolved,
please be sure to come back and click accept for the solution