Postfix is a mail transfer agent that routes and delivers e-mail.
What you can do to check if postfix is working.
- Send yourself a message from a Gmail account.
- Mtools: https://mxtoolbox.com/SuperTool.aspx?action=smtp%3aeinstein.unh.edu&run=toolpage#
- Ultra Tools: https://www.ultratools.com/tools/emailTest
- Check the Blacklists: https://mxtoolbox.com/blacklists.aspx or http://mail-blacklist-checker.online-domain-tools.com
- Try to telnet to einstein.unh.edu port 25.
- Note that this does not mean postfix is actually working properly, but if this doesn’t nothing else will.
- Contact Bryan Scoville <Bryan.Scovill@unh.edu> at UNH Telecom and ask to check the network connections.
Centos 7 Postfix
We upgraded Einstein to Centos 7 and a newer version of postfix.
To combat spam, we require any hosts that connect to postfix to have a resolvable DNS name. There is a specific exception to this rule for systems in the "client-access" list. This is needed for JLab, where you are not resolvable to outside systems.
In the /etc/postfix/main.cf file:
smtpd_client_restrictions = check_client_access hash:/etc/postfix/client_access, reject_unknown_reverse_client_hostname
the client_access file:
220.127.116.11 OK 129.57. OK bad.domain REJECT
OUTDATED OLD POSTFIX
Postfix stores its configuration files in the /etc/postfix/ directory. The following is a list of the more commonly used files:
- Used for access control, this file specifies which hosts are allowed to connect to Postfix. Empty, except for comment documentation
- A configurable list required by the mail protocol. Not present
- The global Postfix configuration file. The majority of configuration options are specified in this file.
- Specifies how Postfix interacts with various processes to accomplish mail delivery.
- Maps email addresses to relay hosts. Has one significant line:
Basic Postfix Configuration
Make sure that you use the
system-switch-mail-gnome program to select Postfix as the default MTA. If you don't, you'll thrash the mail system and lose mail!
Standard Postfix Configuration
Slightly more advanced configuration: README
By default, Postfix does not accept network connections from any host other than the local host. Perform the following steps as root to enable mail delivery for other hosts on the network:
- Edit the /etc/postfix/main.cf file with a text editor, such as vi.
- Uncomment the mydomain line by removing the hash mark (#), and replace domain.tld with the domain the mail server is servicing, such as example.com.
- Uncomment the myorigin = $mydomain line.
- Uncomment the myhostname line, and replace host.domain.tld with the hostname for the machine.
- Uncomment the mydestination = $myhostname, localhost.$mydomain line.
- Uncomment the mynetworks line, and replace 18.104.22.168/28 with a valid network setting for hosts that can connect to the server.
- Uncomment the inet_interfaces = all line.
- Restart the postfix service.
Once these steps are complete, the host accepts outside emails for delivery.
However, much of this is actually unnecessary since Postfix has intellegent defaults (e.g. it can figure out the machine's hostname automatically). Follow the Postfix readme instead.
Setting up Postfix to cooperate with LDAP: README
How Postfix recieves mail
We use smtpd. Yes, our "sendmail" isn't the real thing, but rather a Postfix component.