Introduction #
When you start a new website or application with your own domain, it is obvious that you will need a mail server to handle your emails. While it is possible to have your own mail server but it is not the best option for you for possible reasons which are listed I this article.
Complex Mail Servers #
A usual mail server consists of many software components that provide a specific function. Each element must be configured and tuned to work together and provide a completely-functioning mail server. Because they have moving parts, mail servers can become complex and difficult to set up.
Required components in a mail server are:
- Mail Delivery Agent
- Mail Transfer Agent
- IMAP and/or POP3 Server
In addition to these, you may want to add the following components:
- AntiVirus
- Webmail
- Spam Filter
Other then these components your mail server would be needing a domain name, appropriate DNS records, and SSL certificate.
Now, let us understand what these components are.
Mail Delivery Agent #
- A Mail Delivery Agent (MDA), also known as the Local Delivery Agent (LDA), retrieves mail from a MTA and places it in the appropriate mailbox.
- There are different type of mailbox formats, such as Maildir and mbox. Each MDA supports a specific mailbox formats. The mailbox format decide how the messages are actually stored on the mail server which, in return, affects disk usage and mailbox access performance.
- Examples of MDA software: Postfix and Dovecot.
Mail Transfer Agent #
A MTA(Mail Transfer Agent), which handles Simple Mail Transfer Protocol (SMTP) traffic, has two responsibilities:
- Sending mail from your customer to an external MTA
- To receive mail from an external MTA
Examples: Postfix, Exim, and Sendmail.
IMAP and/or POP3 Server #
- IMAP and POP3 are protocols that are used by mail clients ( any software that is used to read email, for mail retrieval) .
- IMAP is a complex protocol that allows (among other things) various clients to connect to an single mailbox simultaneously. The emails are copied to the client, and the original message is left on the mail server.
- POP3 is not complex comparatively, and it moves the email messages to mail client’s computer, usually the user’s local computer, by default.
Webmail #
- Many users look forward to their email service to provide webmail access. Webmail, in the perspective of running a mail server, is basically mail client that can be accessed by users via a web browser–like Gmail. The webmail element, which requires a web server such as Apache or Nginx, can run on the mail server itself.
- Examples: Citadel.
Spam Filter #
- Spam filter is used to reduce the amount of incoming spam that reaches user’s mailboxes. Spam filters achieve this by putting spam detection rules–which consider a variety of factors such as the message content,the server that sent the message, and many more. If a message crosses it “spam level” limit, then it is marked and treated as spam.
- They can also be applied to outgoing mail. This is useful if a user’s mail account is compromised, to decrease the amount of spam that can be sent using your mail server.
- Spam Assassin is a popular open source spam filter.
Antivirus #
- Antivirus is used to detect malware ,viruses, trojans, and other threats in incoming and outgoing mail.
Time Consuming Maintenance #
- Other than tuning all the component with each other there are other maintenance tasks which are very time consuming. Some of them are listed below:
Keeping Off From Blacklists #
- While maintaining a mail server, another challenge here is to keep it away from various blacklists.They contain the IP addresses of mail servers that were reported to send junk mail or spam.
- Many mail servers subscribe to these blacklists, so that it filter incoming messages based on if the mail server that sent the messages is on the lists. If your mail server gets blacklisted, then your outgoing messages may be discarded before they reach their destination.
Troubleshooting is Difficult #
- When using a mail server, troubleshooting it becomes very difficult as it is a complex system to handle. For example, if your sending emails but they are not being received on the other side, in this case from where do you start to resolve the issue? This can be arise because of various reasons may be it was caused by a misconfiguration in the configuration files of many mail server components.
- So, these are some reasons why you may not want to run your own mail server by yourself. By taking it from a service provider makes it easy for you to focus on your business or website as all these issues will be handled by your service provider.