LinuxQuestions.org
Review your favorite Linux distribution.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 04-19-2010, 05:03 AM   #1
narke
Member
 
Registered: Apr 2010
Posts: 197

Rep: Reputation: 5
How to configure sendmail to use Gmail as SMTP server?


Hi,

It seems my sendmail (running in slackware 13.0) cannot send out emails correctly. I guess I need to tell it what is the smtp server to use. And, I heard, gmail's smtp server is available to use for this purpose. Can anyone please help me to configure my sendmail this way?

Thanks in advance.

-
narke
 
Old 04-19-2010, 05:10 AM   #2
ripp3r
Member
 
Registered: Feb 2010
Location: Switzerland
Distribution: Slackware 13.0 x64
Posts: 71

Rep: Reputation: 15
Quote:
Originally Posted by narke View Post
Hi,

It seems my sendmail (running in slackware 13.0) cannot send out emails correctly. I guess I need to tell it what is the smtp server to use. And, I heard, gmail's smtp server is available to use for this purpose. Can anyone please help me to configure my sendmail this way?

Thanks in advance.

-
narke
well the server address is smtp.gmail.com
And if you use the SSL the port will be 465

hope this help
 
Old 04-19-2010, 09:29 AM   #3
narke
Member
 
Registered: Apr 2010
Posts: 197

Original Poster
Rep: Reputation: 5
Quote:
Originally Posted by ripp3r View Post
well the server address is smtp.gmail.com
And if you use the SSL the port will be 465
but ... how to set it with sendmail? and, how do i decide if i will use SSL or not?

thanks.


-
narke
 
Old 04-19-2010, 12:43 PM   #4
Richard Cranium
Senior Member
 
Registered: Apr 2009
Location: McKinney, Texas
Distribution: Slackware64 15.0
Posts: 3,858

Rep: Reputation: 2225Reputation: 2225Reputation: 2225Reputation: 2225Reputation: 2225Reputation: 2225Reputation: 2225Reputation: 2225Reputation: 2225Reputation: 2225Reputation: 2225
You should read the files
Code:
/usr/share/sendmail/cf/cf/sendmail-slackware.mc
and
Code:
/usr/share/sendmail/cf/README
You would uncomment the
Code:
dnl define(`SMART_HOST',`mailserver.example.com')
line as well as setting the DAEMON_OPTIONS for the outbound portion.
 
Old 04-20-2010, 09:02 AM   #5
ripp3r
Member
 
Registered: Feb 2010
Location: Switzerland
Distribution: Slackware 13.0 x64
Posts: 71

Rep: Reputation: 15
And maybe this can help you a bit:

http://www.linuxhomenetworking.com/w...x_Mail_Servers
 
1 members found this post helpful.
Old 04-20-2010, 09:29 AM   #6
narke
Member
 
Registered: Apr 2010
Posts: 197

Original Poster
Rep: Reputation: 5
hey! thank you for all your replies. i will dive to study to see if i can work it out. Thanks again!
 
Old 04-21-2010, 07:46 PM   #7
narke
Member
 
Registered: Apr 2010
Posts: 197

Original Poster
Rep: Reputation: 5
Quote:
Originally Posted by narke View Post
hey! thank you for all your replies. i will dive to study to see if i can work it out. Thanks again!
hi, experts

after read some documents i now come back with a feeling that it is really not an easy thing to learn. on the other hand, my purpose is only to let my sendmail use gmail's smtp relay service, so i think i need a minimum example that show the points. learning from an example is easier than go through the very long sendmail manuals.

it will be highly appreciated if you can help.


P.S. my smtp host does not has a DNS MX record and gets a private IP address, it is behind a firewall, but i can access internet.


-
narke
 
Old 04-21-2010, 08:00 PM   #8
T3slider
Senior Member
 
Registered: Jul 2007
Distribution: Slackware64-14.1
Posts: 2,367

Rep: Reputation: 843Reputation: 843Reputation: 843Reputation: 843Reputation: 843Reputation: 843Reputation: 843
If you want the easy way out, get msmtp. It is an smtp *client* and does what you want without fuss. sendmail is by default an smtp *server*, but can be strong-armed into acting as an smtp client -- but as you have seen it is not simple.
 
Old 04-21-2010, 09:16 PM   #9
dive
Senior Member
 
Registered: Aug 2003
Location: UK
Distribution: Slackware
Posts: 3,467

Rep: Reputation: Disabled
I did write a howto on using sendmail relay to the virginmedia server (link in sig). The vm server uses gmail so should be almost the same. The problem I found is that I had to use stunnel to create an ssl tunnel for sendmail to relay through.

So yes, msmtp is a much easier solution to it, and it's on slackbuilds.org.
 
Old 04-21-2010, 11:26 PM   #10
dugan
LQ Guru
 
Registered: Nov 2003
Location: Canada
Distribution: distro hopper
Posts: 11,225

Rep: Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320Reputation: 5320
Quote:
Originally Posted by T3slider View Post
sendmail is by default an smtp *server*
My thoughts exactly.

Why would you use sendmail to send email to another smtp server? I don't know what setup you have, but it sounds as if anything would be simpler.

If you're simply trying to send emails with Mutt, then I third the suggestion for msmtp.

Last edited by dugan; 04-21-2010 at 11:33 PM.
 
Old 04-22-2010, 01:21 AM   #11
narke
Member
 
Registered: Apr 2010
Posts: 197

Original Poster
Rep: Reputation: 5
Quote:
Originally Posted by dugan View Post
My thoughts exactly.

Why would you use sendmail to send email to another smtp server? I don't know what setup you have, but it sounds as if anything would be simpler.

If you're simply trying to send emails with Mutt, then I third the suggestion for msmtp.
It's because my host is running some web services such wiki and a forum, their abilities of sending out email to users is based on the fact that the host gets smtp.
 
Old 04-22-2010, 05:50 PM   #12
fancylad
Member
 
Registered: Mar 2008
Distribution: slackware
Posts: 175

Rep: Reputation: 19
i don't think that gmail wants smtp servers to be using them as a mail relay. google's smtp server is intended for emails destined for their users (ie users with a @gmail.com account). i doubt they would allow you to relay email through them. even if they did you would have to authenticate to their smtp server first and this is something that smtp servers normally do not do. usually if you want an smtp server to be able to relay email through another smtp server they would have to permit their ip in order to do this. i am not saying that what you want to do is impossible; however it is something that smtp servers generally do not do nor need to do. if you need to relay email through an smtp server you should probably be using your ISP's smtp server.
 
Old 04-22-2010, 06:11 PM   #13
granth
Member
 
Registered: Jul 2004
Location: USA
Distribution: Slackware64
Posts: 212

Rep: Reputation: 55
Lightbulb

Simple...


1. Obvious
Code:
su - root
2. Create your SSL certs
Code:
mkdir /etc/mail/certs
chmod 700 /etc/mail/certs
cd /etc/mail/certs
openssl req -new -x509 -keyout mykey.pem -out mycert.pem -days 3650
3. Create your auth credentials
Code:
mkdir /etc/mail/auth
chmod 700 /etc/mail/auth
cd /etc/mail/auth
echo 'AuthInfo:smtp.gmail.com "U:root" "I:youraddress@gmail.com" "P:yourpassword' > client-info
makemap -r hash client-info.db < client-info
chmod 600 client-info*
4. Modify the default sendmail configuration
Code:
cd /etc/mail
mv sendmail.cf sendmail.cf.orig
cp /usr/share/sendmail/cf/cf/sendmail-slackware.mc ./sendmail-gmail.mc
Edit /etc/mail/sendmail-gmail.mc so the following lines are after "OSTYPE(`linux')dnl":

Code:
define(`SMART_HOST',`smtp.gmail.com')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash /etc/mail/auth/client-info')dnl
define(`CERT_DIR', `MAIL_SETTINGS_DIR`'certs')
define(`confCACERT_PATH', `CERT_DIR')
define(`confCACERT', `CERT_DIR/mycert.pem')
define(`confSERVER_CERT', `CERT_DIR/mycert.pem')
define(`confSERVER_KEY', `CERT_DIR/mykey.pem')
define(`confCLIENT_CERT', `CERT_DIR/mycert.pem')
define(`confCLIENT_KEY', `CERT_DIR/mykey.pem')
5. Compile your cf
Code:
m4 sendmail-gmail.mc > sendmail.cf
6. Restart sendmail
Code:
/etc/rc.d/rc.sendmail restart
7. Test it
Code:
echo "tester" | mailx -s "test email" sample@isp.com
8. Have a beer

EXTRA:
I believe gmail rewrites relayed message headers. However, some ISP-provided SMTP relays do not do this. Therefore, if your sendmail server does not have a FQDN, some spam filters will block your message.
This problem can be avoided by spoofing your headers. Using mutt, just add this line to your .muttrc :
Quote:
set envelope_from=yes
set from="My Name <my.address@isp.net>"
Let me know if you need any more help. Sendmail is an MTA. Most people don't understand this concept...
You are now on the road to enlightenment.


EDIT: If your ISP is blocking port 25, add this following line to your sendmail.mc to change the port to 587:
Code:
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl

Last edited by granth; 01-26-2011 at 01:13 PM. Reason: additional content
 
9 members found this post helpful.
Old 04-22-2010, 07:37 PM   #14
thatquietboy
LQ Newbie
 
Registered: May 2008
Posts: 26

Rep: Reputation: 17
mailertable

too much work, i use mailertable. just remember to
Code:
makemap hash /etc/mail/mailertable.db < /etc/mail/mailertable
after you edit it.
 
Old 04-22-2010, 10:11 PM   #15
narke
Member
 
Registered: Apr 2010
Posts: 197

Original Poster
Rep: Reputation: 5
It's very strange! Before I post the first message in the thread, I thought that my host should not have ability to send out email without really a try, because the host only have a private IP addres (10.x.x.x) and sit behind a firewall.

But, today after I really tried it, I found the story is actually a little different. It can send out message (via mutt) to my company email address, but it just can not send out message to external email adress (such as my gmail account). And, I have totally no idea how this can happen!

Here are mail log when I sent email to my company email adress:

---------------
Apr 23 10:27:10 svr21 sendmail[14162]: o3N2RAUo014162: from=woody, size=307, cla
ss=0, nrcpts=1, msgid=<20100423022710.GA14159@svr21.ap.foo.net>, relay=woody@localhost

Apr 23 10:27:10 svr21 sm-mta[14163]: o3N2RAvk014163: from=<woody@svr21.foocompany.com>, size=466, class=0, nrcpts=1, msgid=<20100423022710.GA14159@svr21.ap.foo.net>, proto=ESMTP, daemon=MTA, relay=cnzuhsv23.foocompany.com [127.0.0.1]

Apr 23 10:27:10 svr21 sendmail[14162]: o3N2RAUo014162: to=woody.wu@foocompany.com, ctladdr=woody (1000/100), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=3
0307, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (o3N2RAvk014163 Message accepted for delivery)

Apr 23 10:27:12 svr21 sm-mta[14165]: STARTTLS=client, relay=mail.global.frontbridge.com., version=TLSv1/SSLv3, verify=FAIL, cipher=AES128-SHA, bits=128/128

Apr 23 10:27:15 svr21 sm-mta[14165]: o3N2RAvk014163: to=<woody.wu@foocompany.com>, ctladdr=<woody@svr21.foocompany.com> (1000/100), delay=00:00:05, xdelay=00:00:05, mailer=esmtp, pri=120466, relay=mail.global.frontbridge.com. [65.55.88.22], dsn=2.0.0, stat=Sent (<20100423022710.GA14159@svr21.ap.foo.net> Queued mail for delivery)
--------------------

And, here are mail log when I sent email to outside email address:

-------------------
Apr 23 10:52:07 svr21 sendmail[15765]: o3N2q716015765: from=woody, size=301, class=0, nrcpts=1, msgid=<20100423025207.GA15762@svr21.ap.foo.net>, relay=woody@localhost

Apr 23 10:52:12 svr21 sm-mta[15766]: o3N2q7Lv015766: from=<woody@svr21.foocompany.com>, size=458, class=0, nrcpts=1, msgid=<20100423025207.GA15762@svr21.ap.foo.net>, proto=ESMTP, daemon=MTA, relay=cnzuhsv23.foocompany.com [127.0.0.1]

Apr 23 10:52:12 svr21 sendmail[15765]: o3N2q716015765: to=narkewoody@gmail.com,ctladdr=woody (1000/100), delay=00:00:05, xdelay=00:00:05, mailer=relay, pri=30301, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (o3N2q7Lv015766 Messageaccepted for delivery)

Apr 23 10:52:15 svr21 sm-mta[15768]: o3N2q7Lv015766: to=<narkewoody@gmail.com>,ctladdr=<woody@svr21.foocompany.com> (1000/100), delay=00:00:03, xdelay=00:00:03, mailer=esmtp, pri=120458, relay=gmail-smtp-in.l.google.com. [72.14.213.27], dsn=2.0.0, stat=Sent (OK 1271991225 c19si1082758wam.6)
----------------------------

And, here is my /etc/resolve.conf
---------------------------
search ap.foo.net
nameserver 10.86.10.27
nameserver 10.86.10.21
----------------------------

Here is my /etc/hosts
-----------------------
127.0.0.1 cnzuhsv23.foocompany.com localhost
255.255.255.255 all-ones
10.86.12.26 svr21.foocompany.com svr21 es2.0 office
10.86.12.26 cnzuhsv23.foocompany.com
10.86.12.1 gateway
10.86.12.21 svr40
10.86.12.33 es2.1
10.86.12.64 lmt
218.104.197.115 ext-me
10.41.1.60 chzugsv1004
10.41.4.5 cnzuhnb639.ap.foo.net
----------------------


Could anyone please help me to do an analysis? Thanks a lot!

-
narke
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Configure sendmail as gmail relay mexx20 Slackware 1 02-14-2009 10:01 AM
How to configure sendmail with gmail? athanatos Slackware 1 07-18-2006 04:37 PM
Can one configure sendmail to use an SMTP server? laggerific Linux - Software 1 02-16-2006 10:49 AM
configure sendmail to use a specific smtp server TheOneAndOnlySM Linux - Software 4 06-20-2004 05:15 AM
How to configure sendmail to use other smtp server? josealexandre Linux - Newbie 2 10-12-2003 05:09 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 06:22 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration