Many times I have seen people
complaining about their sendmail configuration.
So here I am going to explain configuration of sendmail on CentOS 5
NOTE: This is a simple configuration but if you want to insert some special permissions and authentications let me know I will try to help with additional info.
So here I am going to explain configuration of sendmail on CentOS 5
NOTE: This is a simple configuration but if you want to insert some special permissions and authentications let me know I will try to help with additional info.
To start of with the configuration initially you need to check for the presence of STARTLS and SASLv2 in your machine.
# sendmail -d0.1 -bv root
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 = server
(canonical domain name) $j = server.example.com
(subdomain name) $m = example.com
(node name) $k = server.example.com
========================================================
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 = server
(canonical domain name) $j = server.example.com
(subdomain name) $m = example.com
(node name) $k = server.example.com
========================================================
(you should see something like this, so look for STARTTLS AND SASLv2)
# rpm -qa |
grep sendmail
sendmail-cf-8.13.8-2.el5
sendmail-8.13.8-2.el5
sendmail-cf-8.13.8-2.el5
sendmail-8.13.8-2.el5
make sure that you install sendmail-cf because while mapping sendmail.mc into sendmail.cf you need sendmail-cf as mentioned in the configuration file
# vi
/etc/mail/sendmail.mc
define(`SMART_HOST', `smtp.gmail.com')dnl
define(`SMART_HOST', `smtp.gmail.com')dnl
# (add these two lines in your sendmail.mc file to listen on port 465 and 587)
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl
# uncomment this line
TRUST_AUTH_MECH(`EXTERNAL
DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
# add this line
FEATURE(`authinfo', `hash /etc/mail/auth/client-info.db')dnl
FEATURE(`access_db', `hash -T<TMPF> -o /etc/mail/access.db')dnl
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
# add this line
FEATURE(`authinfo', `hash /etc/mail/auth/client-info.db')dnl
FEATURE(`access_db', `hash -T<TMPF> -o /etc/mail/access.db')dnl
DAEMON_OPTIONS(`Port=smtp, Name=MTA')dnl
# uncomment for sendmail to listen on port 587
DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl
# uncomment for sendmail to listen on port 587
DAEMON_OPTIONS(`Port=smtps,
Name=TLSMTA, M=s')dnl
# write your domain and uncomment
MASQUERADE_AS(`mydomain.com')dnl
Make a directory
auth inside /etc/mail and assign proper permissions to auth so that
no other user can access this directory
# mkdir /etc/mail/auth
# cd
/etc/mail/auth
Create a new file
client-info
# vi
client-info
AuthInfo:gmail.com "U:username" "P:Password" "M:PLAIN"
AuthInfo: "U:username" "P:Password" "M:PLAIN
# makemap -r hash client-info.db < client-info
#vi /etc/mail/access
Connect:your-ip RELAY
# m4 sendmail.mc > sendmail.cf
# service sendmail restart
# sendmail -v user@domain.com
AuthInfo:gmail.com "U:username" "P:Password" "M:PLAIN"
AuthInfo: "U:username" "P:Password" "M:PLAIN
# makemap -r hash client-info.db < client-info
#vi /etc/mail/access
Connect:your-ip RELAY
# m4 sendmail.mc > sendmail.cf
# service sendmail restart
# sendmail -v user@domain.com
NOTE: If you get any error message or you are unable to send mails even after following the above configuration kindly revert back with the log messages so that I can help you further for the same.

0 comments:
Post a Comment