This tutorial intends to teach you How To Install Postfix Mail Server on Rocky Linux 8.
Postfix is a popular free and open-source software that acts as a mail transfer agent (MTA). The job of Postfix is to route and deliver emails. Besides the classic usage, Postfix can also be configured to send emails by local applications only.
This application of Postfix is a useful trick to deploy in various situations. For example, it can be used when sending email notifications regularly, working with a third-party email service provider with limited outbound traffic, etc. Compared to any full-fledged SMTP server, Postfix is a lighter alternative that at the same time retains the necessary functionalities.
Install and Configure Postfix Mail Server on Rocky Linux 8
To install Postfix, you need to log in to your server as a non-root user with sudo privileges. To do this, you can follow our guide the Initial Server Setup with Rocky Linux 8.
Now follow the steps below to complete this guide.
Steps To Install Postfix on Rocky Linux 8
First, you need to update your local package index with the following command:
sudo dnf update -y
Then, run the command below to check whether Sendmail is installed or not:
rpm -qa | grep sendmail
If you didn’t get any output that means you don’t have Sendmail installed and you can keep going.
If you have Sendmail installed on your server, you need to remove it with the following command:
sudo dnf remove sendmail*
At this point, you can check whether you have Postfix installed on your server or not:
rpm -qa | grep postfix
Next, if you don’t have it installed on your server, use the command below to install Postfix on Rocky Linux 8:
sudo dnf install postfix
Configure Postfix on Rocky Linux 8
At this point, you need to make some configuration changes to the Postfix main configuration file on Rocky Linux 8.
First, open the file with your favorite text editor, here we use vi:
sudo vi /etc/postfix/main.cf
At the file, uncomment the myhostname line and set it to your hostname:
myhostname = your-hostname
Uncomment and set the domain name at the line below:
mydomain = your-domain-name
Also, uncomment the line below:
myorigin = $mydomain
Uncomment and Set ipv4 at the following line:
inet_interfaces = all
Set the line below to all:
inet_protocols = all
Comment on the following line:
#mydestination = $myhostname, localhost.$mydomain, localhost,
Uncomment and add IP range at the following line:
mynetworks = 192.168.1.0/24, 127.0.0.0/8
Finally, uncomment the line below:
home_mailbox = Maildir/
When you are done, save and close the file.
At this point, you need to start and enable your Postfix Mail server with the following commands:
# sudo systemctl enable postfix # sudo systemctl restart postfix
Verify that your Postfix service is active and running on Rocky Linux 8:
sudo systemctl status postfix
Output ● postfix.service - Postfix Mail Transport Agent Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; vendor pre> Active: active (running) since Thu 2022-09-08 03:09:59 EDT; 4s ago Process: 89849 ExecStart=/usr/sbin/postfix start (code=exited, status=0/SUCCE> Process: 89848 ExecStartPre=/usr/libexec/postfix/chroot-update (code=exited, > Process: 89843 ExecStartPre=/usr/libexec/postfix/aliasesdb (code=exited, stat> Process: 89841 ExecStartPre=/usr/sbin/restorecon -R /var/spool/postfix/pid/ma> Main PID: 89918 (master) Tasks: 3 (limit: 11413) Memory: 5.1M CGroup: /system.slice/postfix.service ├─89918 /usr/libexec/postfix/master -w ├─89919 pickup -l -t unix -u └─89920 qmgr -l -t unix -u
Testing Postfix on Rocky Linux
At this point, you need to create a new user for testing. To do this, run the command below:
sudo useradd postfixtester
Add a password for your user:
sudo passwd postfixtester
When you are done, you will get the following output:
Output passwd: all authentication tokens updated successfully.
After adding the user let’s check the server access using telnet. If you don’t have telnet installed on your server, use the command below to install telnet on Rocky Linux 8:
sudo dnf install telnet
Then, run the following command:
telnet localhost smtp
Once you have successfully done the configuration you will get the following output:
Output Trying ::1… Connected to localhost. Escape character is '^]'. 220 your-hostname ESMTP Postfix
Start your transaction by writing the below command:
250-hostname 250-PIPELINING 250-SIZE 10240000 250-VRFY 250-ETRN 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN
Once you get 250 DSN you can send mail.
Finally! You have postfix installed and emails getting sent! You are all set to use your server as your private SMTP server to send emails.
For more information, you can visit the Postfix Documentation page.
At this point, you learn to Install Postfix Mail Server on Rocky Linux 8.
Hope you enjoy it.
You may be interested in these articles: