4

sender_email - email address that does not exist, but must be used as FROM address, because receiver host rejects emails from other emails.

receiver_email - email that is supposed to receive the sent message

local_smtp - SMTP server that is installed on another computer in the local network and forwards all received messages to external_smtp

external_smtp - SMTP server that is installed on a computer in another network and rejects all emails that do not come from sender_email

I have configured sendmail to send emails from sender_email and authenticate with user/password to local_smtp that is supposed to send the email message further to external_smtp that only accepts emails sent from a specific email, which is sender_email in this case. However, judging from the log files sendmail authenticates with external_smtp instead of local_smtp. I do not want to authenticate with external_smtp, because that is up to local_smtp.

logfile:

10745 <<< Subject: Terminal Email Send 10745 <<< 10745 <<< Email Content line 1 10745 <<< Email Content line 2 10745 <<< [EOF] 10759 === CONNECT local_smtp. 10759 <<< 220 **********************************************************************^M 10759 >>> EHLO mgmt-snmp 10759 <<< 250-local_smtp says hello^M 10759 <<< 250-AUTH LOGIN PLAIN^M 10759 <<< 250-VRFY^M 10759 <<< 250 8BITMIME^M 10759 >>> MAIL From:<sender_email> AUTH=sender_email 10759 <<< 530 authentication required^M 10759 >>> This is a MIME-encapsulated message 10759 >>> 10759 >>> --t8IEdmbX010759.1442587188/mgmt-snmp 10759 >>> 10759 >>> The original message was received at Fri, 18 Sep 2015 16:39:48 +0200 10759 >>> from root@localhost 10759 >>> 10759 >>> ----- The following addresses had permanent fatal errors ----- 10759 >>> receiver_email 10759 >>> (reason: 530 authentication required) 10759 >>> 

I guess it has something to do with AUTH=sender_email, but I do not know how to change it.

sendmail.mc:

divert(-1)dnl #----------------------------------------------------------------------------- # $Sendmail: debproto.mc,v 8.14.4 2014-02-11 13:02:08 cowboy Exp $ # # Copyright (c) 1998-2010 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.4 # # 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.4-4.1ubuntu1 2014-02-11 13:02:08 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')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 LOCAL_CONFIG dnl EXPOSED_USER(root uucp)dnl # users exempt from masquerading dnl LOCAL_USER(root)dnl dnl MASQUERADE_AS(`external_smtp')dnl dnl FEATURE(`allmasquerade')dnl dnl FEATURE(`masquerade_envelope')dnl dnl FEATURE(`nullclient', local_smtp)dnl LOCAL_CONFIG ## Custom configurations below (will be preserved) define(`SMART_HOST', `local_smtp')dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl FEATURE(`authinfo', `hash /etc/mail/authinfo')dnl define(`RELAY_MAILER_ARGS', `TCP $h 25')dnl dnl # dnl # Default Mailer setup MAILER_DEFINITIONS MAILER(`local')dnl MAILER(`smtp')dnl 

authinfo:

AuthInfo:local_smtp "U:root" "I:my_username" "P:my_password" 
4
  • 1
    Looks like whatever is connecting to local_smtp is not authenticating, as it did not issue an AUTH verb, and instead issued a MAIL FROM, which local_smtp then shot down. Is the MTA on whatever is connecting to local_smtp properly configured to authenticate as a client? Commented Sep 18, 2015 at 15:49
  • I use sendmail for authentication and it is configured in sendmail.mc file: FEATURE(``authinfo', ``hash /etc/mail/authinfo')dnl Commented Sep 18, 2015 at 16:24
  • But it did use AUTH for local_smtp: 10759 <<< 250-AUTH LOGIN PLAIN^M. Or is this not it? Commented Sep 21, 2015 at 7:43
  • 1
    That's the banner from the server. Had the client authenticated, I would expect to see a response >>> AUTH .... Instead, there is a >>> MAIL ... line. Commented Sep 21, 2015 at 14:27

1 Answer 1

0

As root send a test message with tracking map (authinfo) lookups.

#!/bin/sh # -d60.5 turn on traking map lookups /usr/sbin/sendmail -d60.5 -v -i -fsender_email -- receiver_email <<END subject: test test END 

Possible outcomes to define next tests:

  • no authinfo lookups
  • authinfo lookups with keys other than you expected
  • authinfo lookups returning "no match"
  • authinfo lookups returning correct values

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.