Install Postfix and Dovecot on Redhat


Download and Install:

Check if both Postfix and Dovecot is not yet installed in your system.

# rpm –q postfix
# rpm –q dovecot

If you installed your box as Minimal, for sure both postfix and dovecot not yet installed. Let’s download and install both Postfix and Dovecot.

# yum install postfix
# yum install dovecot

Sendmail and system-switch-mail
By default, sendmail is installed to your system and serves as the default MTA. Since we want to use postfix instead of sendmail, let’s get rid of it! You can use system-switch-mail to do that easily.

Check if it is installed

# rpm –q system-switch-mail

If not installed, install it

# yum install system-switch-mail

And run system-switch-mail

# system-switch-mail

And select Postfix as your default MTA.

Goodbye Sendmail
To finally get rid of sendmail in to your system, go and completely erase it!

# rpm –e --nodeps sendmail

Setting up Postfix
Enough for the intro; let’s do now Postfix setup.

1. Go to /etc/postfix directory

# cd /etc/postfix

2. Copy the original main.cf to another file

# cp main.cf main.cf-bak-orig

We copy the original main.cf file to a new file named main.cf-bak-orig in case we want to go back to the previous configuration. This is always my practice, that any modification I’m doing; I always do a backup first. Very handy in case something goes wrong.

3. Clear the existing main.cf file

# cat /dev/null > main.cf

This command will quickly clear the content of you main.cf file.

4. Edit and add the following lines to main.cf

myhostname = mail.example.com
mydomain = example.com
myorigin = $mydomain
mydestination = $myhostname localhost.$mydomain localhost $mydomain
relay_domains =
home_mailbox = Maildir/

Here I assume Internet domain name is “example.com”. Users are configured to send mail as “user@example.com”, we call this machine by the name of “mail.example.com”, and “home_mailbox = Maildir/" for qmail-style delivery.

5. Check Postfix

# postfix check

6. Reload Postfix

# postfix reload

Setting up Dovecot :-
Dovecot is very easy to setup and easy to configure. In fact, the last time I setup Dovecot in our local mail server I just simply make sure that under protocols, imap and pop3 are there (protocols = imap pop3). Surprisingly nothing more I did and it works out-of-the-box. Only one thing you may need to get the authentication works – but hey if your users are in /etc/passwd there’s hardly anything you have to do.

Don’t forget to restart dovecot after you edited and saved /etc/dovecot.conf

# /etc/init.d/dovecot restart

Firewall Configuration :-
Make sure you open the SMPT (tcp/25), POP3 (tcp/110), and IMAP (tcp/143) ports in your iptables.

# vi /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 143 -j ACCEPT

Restart iptables

# /etc/init.d/iptables restart

That’s all folks! With your choice of mail clients, your users can now send and receive emails.

Optionally, you can install SquirrelMail for your web-based email.

Just download SquirrelMail

# yum intall squirrelmail

Apache and PHP will be automatically downloaded and installed as well. Why not add MySQL so that you can do more things?Here’s how to do it, in case you want.

Edit some settings in SquirrelMail

# /usr/share/squirrelmail/config/conf.pl
SquirrelMail Configuration : Read: config.php
---------------------------------------------------------
Main Menu --
1. Organization Preferences
2. Server Settings
3. Folder Defaults
4. General Options
5. Themes
6. Address Books
7. Message of the Day (MOTD)
8. Plugins
9. Database
10. Languages

D. Set pre-defined settings for specific IMAP servers

C Turn color off
S Save data
Q Quit


Start Apache

# /etc/init.d/httpd start

Conclusion
This is a general very quick guide that will guarantee you a working Mail Server Setup in a latest Red Hat environment. Other optimization and enhancement can be done as your specific requirements arise.
Open Postfix mail server

http://192.168.1.1/webmail


Thaks,
Vishal Vyas

3 comments:

  1. Hi Vishal, How are you I am navin from gorakhpur your old linux frd.you are not metioned what things to be edited in
    # /usr/share/squirrelmail/config/conf.pl

    please clear the editing.........

    ReplyDelete
    Replies
    1. Hello Navin .

      This is a Squirrelmail script .. to start this command just run and see.

      /usr/share/squirrelmail/config/conf.pl

      # run config script

      SquirrelMail Configuration : Read: config.php (1.4.0)
      ---------------------------------------------------------
      Main Menu --
      1. Organization Preferences
      2. Server Settings
      3. Folder Defaults
      4. General Options
      5. Themes
      6. Address Books
      7. Message of the Day (MOTD)
      8. Plugins
      9. Database
      10. Languages

      D. Set pre-defined settings for specific IMAP servers

      C Turn color off
      S Save data
      Q Quit

      Delete
  2. Hi Vishal.

    I am able to configure webmail.But when i am sending and receive a mail.form my mail server i am getting localhost@xyz.com..but my mail server is mail.xyz.com...i added mx,ns,A records in dns server..And i am unable to configure outlook...

    Regards,
    Prashant

    ReplyDelete