Install Sendmail and Dovecot
Code:
[root@sendmail ~]# yum install sendmail*
[root@sendmail mail]# yum install dovecot
Verify the installation and compilation options
Code:
[root@sendmail ~]# rpm -qa|grep sendmail
sendmail-8.13.8-2.el5
sendmail-cf-8.13.8-2.el5
sendmail-doc-8.13.8-2.el5
sendmail-devel-8.13.8-2.el5
Code:
[root@sendmail ~]# sendmail -d0.1 -bv
Version 8.13.8
Compiled with: DNSMAP HESIOD HES_GETMAILHOST LDAPMAP LOG MAP_REGEX
MATCHGECOS MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6
NETUNIX NEWDB NIS PIPELINING SASLv2 SCANF SOCKETMAP STARTTLS
TCPWRAPPERS USERDB USE_LDAP_INIT
============ SYSTEM IDENTITY (after readcf) ============
(short domain name) $w = sendmail
(canonical domain name) $j = sendmail.example.com
(subdomain name) $m = example.com
(node name) $k = sendmail.example.com
========================================================
This command will show the compiled options of sendmail.
Configuration
Code:
[root@sendmail mail]# cd /etc/mail/
[root@sendmail mail]# vi local-host-names
this file will contain the domain names for which the send mail server is going to serve
Code:
# local-host-names - include all aliases for your machine here.
example.com
Edit the mc file
Code:
[root@sendmail mail]# vi sendmail.mc
Code:
dnl # Following line is optional. If you want ot relay the mails through another server, use the next line
define(`SMART_HOST', `relayserver.example.com')dnl
dnl #
dnl # The following allows relaying if the user authenticates, and disallows
dnl # plaintext authentication (PLAIN/LOGIN) on non-TLS links
dnl #
dnl define(`confAUTH_OPTIONS', `A p')dnl
dnl #
dnl # PLAIN is the preferred plaintext authentication method and used by
dnl # Mozilla Mail and Evolution, though Outlook Express and other MUAs do
dnl # use LOGIN. Other mechanisms should be used if the connection is not
dnl # guaranteed secure.
dnl # Please remember that saslauthd needs to be running for AUTH.
dnl #
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
dnl # The following causes sendmail to only listen on the IPv4 loopback address
dnl # 127.0.0.1 and not on any other network devices. Remove the loopback
dnl # address restriction to accept email from the internet or intranet.
dnl #
dnl # DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
This step is also optional. If relay server need an authentication provide the credantials here
Code:
[root@sendmail mail]# vi access
Code:
AuthInfo:relay.dnsexit.com "U:USERNAME" "P:PASSWORD" "M:PLAIN"
Add a user and set password
Code:
[root@sendmail mail]# useradd -s /sbin/nologin senthil
[root@sendmail mail]# passwd senthil
Changing password for user senthil.
New UNIX password:
BAD PASSWORD: it is too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
Map the mails for users. This will be required when more number of users and more domains are hosted in the same server
[CODE]
Code:
[root@sendmail mail]# vi virtusertable
Code:
senthil@example.com senthil
Configure Dovecot
Code:
[root@sendmail mail]# vi /etc/dovecot.conf
Code:
protocols = imap pop3
create the sendmail cf file with mc file
Code:
[root@sendmail mail]# m4 sendmail.mc > sendmail.cf
[root@sendmail mail]# make
Start the services
Code:
[root@sendmail mail]# /etc/init.d/sendmail start
[root@sendmail mail]# /etc/init.d/saslauthd start
[root@sendmail mail]# /etc/init.d/dovecot start
Make required services permanent (after a reboot they start automatically)
Code:
[root@sendmail mail]# chkconfig sendmail on
[root@sendmail mail]# chkconfig dovecot on
[root@sendmail mail]# chkconfig saslauthd on
As of now the sendmail server is ready. The server can be accessed by outlook or any mail client.
It will be very nice if are having a imap webmail client. I prefer Roundcube. The previous version of Roundcube was having some security holes(Before 2 years). But the current stable version seems to be secured.
Round cube requires mysql support and php greater than 5.2.0.
The current version of Php is 5.1.6 so have to update php version.
Updating PHP
Code:
[root@sendmail round]# php -v
Code:
PHP 5.1.6 (cli) (built: Mar 14 2007 18:56:07)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
Code:
[root@sendmail ~]# cd /etc/yum.repos.d
Code:
[root@sendmail ~]# wget dev.centos.org/centos/5/CentOS-Testing.repo
Code:
[root@sendmail ~]# yum --disablerepo=* --enablerepo=c5-testing update php php-xml php-mysql
Code:
[root@sendmail round]# php -v
Code:
PHP 5.2.10 (cli) (built: Nov 13 2009 11:24:03)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies
Install Mysql And set root password
Code:
yum install mysql mysql-server
/usr/bin/mysqladmin -u root password 'mysqlrootpassword'
Download Round cube Stable version and extract it
Code:
[root@sendmail ~]# cd /tmp/
[root@sendmail ~]# wget nchc.dl.sourceforge.net/project/roundcubemail/roundcubemail/0.3.1/roundcubemail-0.3.1.tar.gz
[root@sendmail ~]# tar -zxvf roundcubemail-0.3.1.tar.gz
[root@sendmail ~]# mv roundcube /usr/share/
[root@sendmail ~]# vi /etc/httpd/conf/roundcube.conf
Inside this file add as follows,
Code:
<IfModule mod_alias.c>
Alias /rcm /usr/share/roundcube
</IfModule>
<Directory /usr/share/roundcube>
Options None
Order allow,deny
allow from all
</Directory>
Code:
[root@sendmail ~]# vi /etc/httpd/conf/httpd.conf
add the following line,
Code:
Include /etc/httpd/conf/roundcube.conf
Set Some permissions
Code:
[root@sendmail ~]# chown -R root:apache /usr/share/roundcube/
[root@sendmail ~]# cd /usr/share/roundcube/
[root@sendmail ~]# chmod g+w temp/
[root@sendmail ~]# chmod g+w logs/
Create Database for Round cube in Mysql
Code:
[root@sendmail ~]# mysql -u root -p
Code:
mysql> create database roundcube;
mysql> show databases;
mysql> create user roundcube;
mysql> GRANT ALL PRIVILEGES ON roundcube.* TO roundcube@localhost IDENTIFIED BY 'roundcube';
mysql> FLUSH PRIVILEGES;
mysql> quit;
restart http
Code:
[root@sendmail ~]# /etc/init.d/httpd restart
In the browser,
Code:
yourserverip/rcm/installer/
Click the "START INSTALLATION" button
These are all very simple forms in the browser. I cant enter all the options because the limited characters. Please contact me if there is any difficulties in filling those options.
General configuration, Database setup, IMAP Settings, SMTP Settings
Then click next
The installer will generate two configuration files for you,
Copy these contents (files) in side the /usr/share/roundcube/config
Code:
[root@sendmail ~]# vi main.inc.php
[root@sendmail ~]# vi db.inc.php
The installer directory should be moved to some other path.
Code:
[root@sendmail ~]# mv installer/ /tmp/
No comments:
Post a Comment