3

I am using sendmail for my website, my email address is also using the same server name. So, www.zedsaid.com and nic@zedsaid.com. Sendmail seems to not want to actual deliver the mail to my inbox, but rather wants to deliver it locally on the server, which I don't want.

Here is what I get when I try to send a test:

zedsaid:/etc# echo "Subject: test" | /usr/lib/sendmail -v nic@zedsaid.com
nic@zedsaid.com... Connecting to [127.0.0.1] via relay...
220 zedsaid.com ESMTP Sendmail 8.14.3/8.14.3/Debian-5+lenny1; Thu, 12 May 2011 15:34:11 -0700; (No UCE/UBE) logging access from: zedsaid.com(OK)-zedsaid.com [127.0.0.1]
>>> EHLO zedsaid.com
250-zedsaid.com Hello zedsaid.com [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-DELIVERBY
250 HELP
>>> VERB
250 2.0.0 Verbose mode
>>> MAIL From:<root@zedsaid.com> SIZE=14
250 2.1.0 <root@zedsaid.com>... Sender ok
>>> RCPT To:<nic@zedsaid.com>
>>> DATA
550 5.1.1 <nic@zedsaid.com>... User unknown
503 5.0.0 Need RCPT (recipient)
>>> RSET
250 2.0.0 Reset state
>>> RSET
250 2.0.0 Reset state
root... Using cached ESMTP connection to [127.0.0.1] via relay...
>>> MAIL From:<> SIZE=1038
250 2.1.0 <>... Sender ok
>>> RCPT To:<root@zedsaid.com>
>>> DATA
050 <root@zedsaid.com>... aliased to nnhubbard
250 2.1.5 <root@zedsaid.com>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .
050 nnhubbard... Connecting to local...
050 nnhubbard... Sent
250 2.0.0 p4CMYBLv009705 Message accepted for delivery
root... Sent (p4CMYBLv009705 Message accepted for delivery)
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 zedsaid.com closing connection

sendmail.mc:

divert(-1)dnl
#-----------------------------------------------------------------------------
# $Sendmail: debproto.mc,v 8.14.3 2010-01-29 14:02:50 cowboy Exp $
#
# Copyright (c) 1998-2008 Richard Nelson.  All Rights Reserved.
#
# cf/debian/sendmail.mc.  Generated from sendmail.mc.in by configure.
#
# sendmail.mc prototype config file for building Sendmail 8.14.3
#
# Note: the .in file supports 8.7.6 - 9.0.0, but the generated
#   file is customized to the version noted above.
#
# This file is used to configure Sendmail for use with Debian systems.
#
# If you modify this file, you will have to regenerate /etc/mail/sendmail.cf
# by running this file through the m4 preprocessor via one of the following:
#   * make   (or make -C /etc/mail)
#   * sendmailconfig 
#   * m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
# The first two options are preferred as they will also update other files
# that depend upon the contents of this file.
#
# The best documentation for this .mc file is:
# /usr/share/doc/sendmail-doc/cf.README.gz
#
#-----------------------------------------------------------------------------
divert(0)dnl
#
#   Copyright (c) 1998-2005 Richard Nelson.  All Rights Reserved.
#
#  This file is used to configure Sendmail for use with Debian systems.
#
define(`_USE_ETC_MAIL_')dnl
include(`/usr/share/sendmail/cf/m4/cf.m4')dnl
VERSIONID(`$Id: sendmail.mc, v 8.14.3-5+lenny1 2010-01-29 14:02:50 cowboy Exp $')
OSTYPE(`debian')dnl
DOMAIN(`debian-mta')dnl
dnl # Items controlled by /etc/mail/sendmail.conf - DO NOT TOUCH HERE
undefine(`confHOST_STATUS_DIRECTORY')dnl        #DAEMON_HOSTSTATS=
dnl # Items controlled by /etc/mail/sendmail.conf - DO NOT TOUCH HERE
dnl #
dnl # General defines
dnl #
dnl # SAFE_FILE_ENV: [undefined] If set, sendmail will do a chroot()
dnl #   into this directory before writing files.
dnl #   If *all* your user accounts are under /home then use that
dnl #   instead - it will prevent any writes outside of /home !
dnl #   define(`confSAFE_FILE_ENV',             `')dnl
dnl #
dnl # Daemon options - restrict to servicing LOCALHOST ONLY !!!
dnl # Remove `, Addr=' clauses to receive from any interface
dnl # If you want to support IPv6, switch the commented/uncommentd lines
dnl #
FEATURE(`no_default_msa')dnl
dnl DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp, Addr=::1')dnl
DAEMON_OPTIONS(`Family=inet,  Name=MTA-v4, Port=smtp, Addr=127.0.0.1')dnl
dnl DAEMON_OPTIONS(`Family=inet6, Name=MSP-v6, Port=submission, M=Ea, Addr=::1')dnl
DAEMON_OPTIONS(`Family=inet,  Name=MSP-v4, Port=submission, M=Ea, Addr=127.0.0.1')dnl
dnl #
dnl # Be somewhat anal in what we allow
define(`confPRIVACY_FLAGS',dnl
`needmailhelo,needexpnhelo,needvrfyhelo,restrictqrun,restrictexpand,nobodyreturn,authwarnings')dnl
dnl #
dnl # Define connection throttling and window length
define(`confCONNECTION_RATE_THROTTLE', `15')dnl
define(`confCONNECTION_RATE_WINDOW_SIZE',`10m')dnl
dnl #
dnl # Features
dnl #
dnl # use /etc/mail/local-host-names
FEATURE(`use_cw_file')dnl
dnl #
dnl # The access db is the basis for most of sendmail's checking
FEATURE(`access_db', , `skip')dnl
dnl #
dnl # The greet_pause feature stops some automail bots - but check the
dnl # provided access db for details on excluding localhosts...
FEATURE(`greet_pause', `1000')dnl 1 seconds
dnl #
dnl # Delay_checks allows sender<->recipient checking
FEATURE(`delay_checks', `friend', `n')dnl
dnl #
dnl # If we get too many bad recipients, slow things down...
define(`confBAD_RCPT_THROTTLE',`3')dnl
dnl #
dnl # Stop connections that overflow our concurrent and time connection rates
FEATURE(`conncontrol', `nodelay', `terminate')dnl
FEATURE(`ratecontrol', `nodelay', `terminate')dnl
dnl #
dnl # If you're on a dialup link, you should enable this - so sendmail
dnl # will not bring up the link (it will queue mail for later)
dnl define(`confCON_EXPENSIVE',`True')dnl
dnl #
dnl # Dialup/LAN connection overrides
dnl #
include(`/etc/mail/m4/dialup.m4')dnl
include(`/etc/mail/m4/provider.m4')dnl
dnl #
dnl # Default Mailer setup
MAILER_DEFINITIONS
MAILER(`local')dnl
MAILER(`smtp')dnl

dnl # Masquerading options
FEATURE(`always_add_domain')dnl
MASQUERADE_AS(`zedsaid.com')dnl
FEATURE(`allmasquerade')dnl
FEATURE(`masquerade_envelope')dn

l

Does this mean that it is sitting in the user nic's mail folder on the server? I want this email to be sent over smtp and go to my actual inbox.

Help?

Zed Said
  • 717
  • 6
  • 14
  • 25

2 Answers2

0

A common issue if your server believes it provides your mail.

Usually there are options for the mail server, if you run local DNS on the server, but external DNS is actually used (ie. NS are not pointing to the web server) and the MX record is set locally, then it'll deliver locally, also exim/sendmail may well be configured to accept for the machines domain automatically. Particularly if you are using a standard hosting environment like cPanel.

cPanel has an option to tell the server what setup the email is to take, local/backup/remote. You need to work out what is happening with your sendmail configuration and tell it not to accept local mail and forward it as it would with any other mail.

Orbling
  • 298
  • 5
  • 8
  • I am not using cPanel. It is my home Debian server. So, I am not sure what you are saying I need to do... – Zed Said May 12 '11 at 22:58
  • I just gave cPanel as an example. In which case, investigate your local sendmail configuration. It most likely is setup to accept mail for your domain locally. – Orbling May 12 '11 at 23:00
  • Zed Said: Look at the routing bit, might be helpful: http://tech.jonathangardner.net/wiki/Sendmail#Don.27t_Accept_Incoming_Email – Orbling May 12 '11 at 23:13
  • So I should add LOCAL_DOMAIN(`localhost.localdomain')dnl to my sendmail.mc file? Doing that gave me an error when restarting sendmail – Zed Said May 12 '11 at 23:25
  • Zed Said: It's probably already in `sendmail.mc` (never edit `sendmail.cf` directly, there is an intermediate language and a utility, `sendmailconfig` that converts). I'm not 100%, but I think you might need to comment it out, as opposed to adding it. You can comment a line by putting `dnl_` in front of it, `_ = space`. – Orbling May 12 '11 at 23:29
  • There is nothing in my .mc file about local_domain. – Zed Said May 12 '11 at 23:43
  • @Zed Said: Well, I'm no sendmail guru - but it might be worth posting your `sendmail.mc` to the question. – Orbling May 12 '11 at 23:46
  • Ok, added my .mc file. – Zed Said May 13 '11 at 00:08
  • Zed Said: Isn't the first non-comment, non-divert line the one in question? Or did you add that in? – Orbling May 13 '11 at 00:11
  • Sorry, I had added that to test it. But it didn't seem to help. I think I am just going to have to use a different email address at a different domain. – Zed Said May 13 '11 at 00:18
  • @Zed Said: Well that is a drastic solution, it's most likely a very simple change. Hopefully I've pointed you in the right direction, just needs a careful bit of Googling I would imagine. Learn the sendmail config. – Orbling May 13 '11 at 08:02
0

You need to remove your domain name from local-host-names. Otherwise sendmail thinks its the final destination for that domain.

You should not need to modify sendmail.mc to fix this.

Joe Sniderman
  • 2,809
  • 1
  • 22
  • 26