How to setup SMTP server and what is SMTP server?

SMTP stands for "Simple Mail Transfer Protocol". A SMTP server is responsible for sending/receiving e-mail messages to/from other smtp servers in Internet community. The mail transferring logic is based on RFC 821 and RFC 5321. Even as of today, communication via email still plays a vital role between companies in day-to-day running business.

Setup SMTP server for Windows 7 or 10?

For macOS users, you can configure SMTP server through macOS Server. For Linux and Unix users, you need extensive server knowledge to sertup SMTP server. For Windows 7 or 10 users? This Windows version is meant for end-users most of the time. However, you can still setup SMTP server through third-party server applications, such as EVO Mail Server or hMailServer. In the meantime, Windows Server require some Windows-server-specialized server ware such as EVO Mail Server, Axigen and Kerio.

How to configure DNS records for SMTP server, such as A, MX, SPF?

For SMTP server to communicate with Internet communicty out there, DNS record assignments are required. Basic DNS records are A and MX records and it would achieve better mail delivery result if SPF is also configured. Steps are simple:

  1. Log in your DNS service. Here, we use Zoneedit DNS service in the demo below:
    DNS setting for SMTP server
    DNS setting for SMTP server
  2. Add A record:
    • Enter hostname of your SMTP server, such as smtp.yourdomain.com in HOST field.
    • Enter its static IP address in IP Address field.
    • Keep TTL default unless you need to modify it for other purposes.
  3. Add MX record:
    • Enter zone or domain that your SMTP server is responsible for, such as yourdomain.com in MAIL FOR ZONE field.
    • Enter SMTP server hostname, such as smtp.yourdomain.com in MAIL SERVER field.
    • Enter an integer under PREF, such as 10,  that defines priority of this SMTP server if you have multiple servers.
  4. Add SPF record:
    • Enter hostname of your SMTP server, such as smtp.yourdomain.com in HOST field.
    • Enter parameter string, such as:"v=spf1 ip4:<server_ip> a mx ~all" in TEXT field. The <> brackets should be ignore and simply enter server_ip.
    • Keep TTL default unless you need to modify it for other purposes.

How to make SMTP server's IP stay healthy?

Under normal circumstances, destination SMTP servers on Internet judge whether email messages from your SMTP server are spam or not based on your server IP credential given by anti-spam organizations on Internet. Before we get to know what to check, we need to make sure your SMTP server is using a static IP rather than dynamic one because spammers usually use dynamic IP to distribute spam mails. Consult your Internet service provider on how to obtain a static IP.

Next, there are two anti-spam organization we need to check whether your IP is listed on their list or what reputation your IP has:

  1. Spamhaus – To check, click on Blocklist Removal Center, enter your IP, and click on Lookup button to check. If you IP is listed, click into each entry and find out what can be done to delist your IP off the list.
  2. Senderbase – Enter your IP and click on magnifier symbol to find out reputation of your server IP. If your reputation is bad, then it will take time of days, weeks or even months for senderbase is assess whether spam mails are being sent out from your IP. Our suggestion for you is to change a static IP rather than wasting time to wait.

ISP limitation on self-running SMTP server

Before your smtp server setup, consult your ISP on whether it allows you to establish a smtp server. Then, also check whether it allows IP reverse resolution. What is it? The relationship between IP forward resolution and IP reverse resolution is like your name and your phone number on yellow page. We can look up your name and get your phone number on a phone directory. Likewise, when we look up your smtp server host name (for example: smtp.yourdomain.com), we can get your server IP address. Conversely, when we look up your IP address, we should be able to get your smtp server host name. However, for some Internet access subscription, your given static IP address is not allowed to have customized IP reverse resolution value.

How to check if your DNS records are well spreaded out across Internet?

Once your server DNS records kick in, we still cannot be sure whether other smtp server on Internet can find us. We can go to MX TOOLBOX and find out. Basically, we can check 4 DNS records and 1 listing to confirm your SMTP server is ready or not?

  1. A record
  2. MX record
  3. PTR record
  4. SPF record
  5. Blacklist

Simply enter value as demonstrated in the screenshots above, there will return results for us to check.

Limitation on EDM (Email Direct Marketing) for SMTP server

If you have a free Gmail, Outlook.com or Yahoo! mail account, then you would probably receive many EDM messages everyday. Some of them are directy dumped to mailbox's SPAM folder while some of them are in INBOX folder. If you plan to distribute such EDM messages via your SMTP server, then you need to be aware of spam policies on these mail service providers. Please refer to the following list:

  1. Gmail – Bulk Sender Guidelines
  2. Outlook.com – Policies, Practices, and Guidelines
  3. Yahoo! – Yahoo Mail deliverability FAQs
  4. aol. – Bulk Sender Best Practices & Guidelines

For any additional policy and guideline of other mail service providers, you can google it using keywords such "mail server provider's name + bulk mail policies" to find out.

How to configure built-in SMTP service on Windows Server?

Previously, we mentioned about how to setup SMTP server on Windows 7 or 10. Now, it is about Windows Server 2008, 2012 or 2016. In fact, Microsoft has implemented a SMTP service in Windows Server. All you need to do is enabling it according to a handy YouTube video tutorial here. However, this SMTP server barely plays a SMTP relay role rather than a comprehensive SMTP solution, such as Exchange Server, Kerio Connect or Axigen Mail Server, in which additional POP3, IMAP and even Groupware features are offered.

How to easily setup SMTP server other than Exchange Server?

For companies that run on Windows Server 2008, 2012, or 2016, Exchange Server is usually deployed along with Active Directory. This integration solution provides an environment where users can connect to synchronization services of messaging, calendar, address book, task on almost every client platforms, such as web browser, mobile devices, various types of laptop and desktop. However, the cost is higher than what medium and small business can afford.

However, EVO Mail Server, to some degree, provides similar services but at a much lower cost for especially those small business companies that cannot afford Exchange budget overhead. To setup, simply follow steps as below:

  1. Assume you have all DNS parameters for your company's domain properly configured.
  2. Download and install EVO Mail Server software as administrator on Windows Server.
  3. Open EVO Mail Server GUI.
  4. Enter your company's domain name next to Prmary Domain under Setting tab.
  5. Check Status tab and see if there is any issue under Mail, Network & Server sections.
  6. Create user accounts under Account tab.
  7. Create email account in mail client software and test sending e-mails.

For a complete tutorial on installing and configuring EVO Mail Server software as well as purchasing and deploying SSL certificate for the server, I have writeen another article detailing all of the above:

Cloud SMTP services

Cloud mailing serivces are becoming more and more popular, it's convenient and more unlikely to be blocked when using cloud SMTP services. here are a list of cloud mailing services that you can choose:

  1. Amazon SES: Amazon SES is an email service that provides a way for sending transactional emails and marketing emails.
  2. MailGun: MailGun is an email service and SMTP provider, which is owned by Rackspace. It allows you to send, receive, track and store emails.