Назад | Перейти на главную страницу

sendmail: веб-сайт и электронная почта на одном домене / сервере

Я использую sendmail для своего веб-сайта, мой адрес электронной почты также использует то же имя сервера. Итак, www.zedsaid.com и nic@zedsaid.com. Похоже, что Sendmail не хочет доставлять почту в мой почтовый ящик, а скорее хочет доставлять ее локально на сервере, чего я не хочу.

Вот что я получаю, когда пытаюсь отправить тест:

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

л

Означает ли это, что он находится в почтовой папке пользователя nic на сервере? Я хочу, чтобы это письмо было отправлено по протоколу smtp и попало в мой фактический почтовый ящик.

Помогите?

Вам необходимо удалить свое доменное имя из имен локальных хостов. В противном случае sendmail считает, что это конечный пункт назначения для этого домена.

Чтобы исправить это, вам не нужно изменять sendmail.mc.

Распространенная проблема, если ваш сервер считает, что предоставляет вашу почту.

Обычно существуют параметры для почтового сервера, если вы запускаете локальный DNS на сервере, но фактически используется внешний DNS (т.е. NS не указывает на веб-сервер), а запись MX установлена ​​локально, тогда она будет доставлена ​​локально. , также exim / sendmail может быть настроен на автоматический прием домена машины. В частности, если вы используете стандартную среду хостинга, например cPanel.

В cPanel есть возможность указать серверу, какую настройку будет выполнять электронная почта: локальная / резервная / удаленная. Вам нужно выяснить, что происходит с вашей конфигурацией sendmail, и сказать ему, чтобы он не принимал локальную почту и не пересылал ее, как это было бы с любой другой почтой.