Setting up a Linux system as a mail server with virtual users
Mail Transfer Agent
A Mail Transfer Agent (MTA) is the program which receives and sends out the email from your server, and is therefore the key part. In this guide is used Postfix.
You can add filtering in your mail chain, mainly in order to detect spam and viruses. This how-to only covers spam filter: SpamassAssin.