SMTP Relay Issue


We have an issue where we have a business application that sends emails via a SMTP relay (Microsoft IIS) .
Authentication is set to "Anonymous Access", Relay Restrictions set to a list of servers that is allowed to Relay From.

So two things, one, we now want to deploy this app to all users thick clients, which means we either need to lift the restriction or find another authentication mechanism. I personally dont want to open up all internal subnets to be able to relay, especially if a malware begins spamming.
What are my other options? Ideally, I would like to allow all internal subnects to relay but place a service account username and password in the app (which we can do as the app is internally developed) which only that account has rights to relay. Can I do this?

I don't want to use Integrated AD authentication or Exchange Authentication as an malware can just pass the user credentials the user has already logged into their thick clients with.

Or is there a better solution that I should look at? What is the best practice around this?

Thanks in advance.
Daniel GarciaAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Writing in an authentication method into your application would be a good choice.  The default permisisons of Exchange is to allow any users to relay, provided they authenticate - no additional relay connector needs to be created to use this.  The issue you may run into is that the user may attempt to send mail on behalf of somebody other than himself, in which case you do require an anonymous relay. If your solution permits, try the following:

  • Set up a standard exchange user with a generic name, like "No Reply", and set their e-mail address to "noreply@yourcompany.domain".  Note the username and password for authentication
  • Make your application connect to the Exchange server on SMTP Port (usually 25)
  • Make your application negotiate TLS encryption
  • Make your application log in as the No Reply user
  • Send the e-mail from noreply@yourcompany.domain to whomever you want

If you are not able to build TLS into your application, then you can change your "Client Frontend" connector, and uncheck the box "Offer basic authentication only after starting TLS"
Daniel GarciaAuthor Commented:
Hi Lester,

Thanks for your response. So instead of using a IIS SMTP virtual server you are suggesting that we create a new SMTP Receive connector on Exchange and setup Authentication as TLS only? In permission group, do I set up "Exchange users"?

Should I add a different IP to the receiver to minimise the chance of other exchange users being able to authenticate on this receiver? ( I am assuming that this setup also allow any exchange user to use this reciever to relay should they know the DNS/IP of the receiver?)
You don't create a new SMTP receive connector - just use the Client Frontend one :)  It's already set to accept basic authentication with TLS.  No additional IP's needed either.  You won't conflict with Outlook or anything else, you're just using what Exchange has provided to you out of the box.  I've highlighted the one I would refer to (this is of course on one of my Exchange Servers).

Client Frontend Connector
NOTE: This is port 587 - not 25 as I originally said.
IT Pros Agree: AI and Machine Learning Key

We’d all like to think our company’s data is well protected, but when you ask IT professionals they admit the data probably is not as safe as it could be.

MASEE Solution Guide - Technical Dept HeadCommented:
Hi Daniel,
If it is internal to your network of Exchange no need additional settings to relay.
Please mention the Exchange version.

Daniel GarciaAuthor Commented:
Exchange 2013
Daniel GarciaAuthor Commented:
thanks lester. But is it better in terms of security to have another receiver with a different IP? I am concerned about a SMTP auth attack using this receiver. I want my configuration to be apart from current config for if any future SMTP Auth attack occurs, my configuration won't be a factor in the investigation as traffic is diverted to a separate receiver with a different address. Or am I being to pendantic?
MASEE Solution Guide - Technical Dept HeadCommented:
Please run these command from a telnet client or Putty from your apps server and post the result.
Telnet <Exchange2013IP> 25
MAIL FROM: <email-configured-in-ur-apps>
250 2.1.0 Sender OK

Open in new window

Having it on a different IP won't prevent that one - or the original one - from being SMTP auth attacked :)

You can of course set up a new receive connector on a different IP - this would also be just fine.  Multiple IP's on an exchange server can lead to other troubles though (like if DNS updates with the new IP, clients might be tempted to use it).  Perhaps a safer solution is to create a new receive connector on a different port.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Daniel GarciaAuthor Commented:

220 Microsoft ESMTP MAIL Service ready at
Mon, 22 Aug 2016 13:35:01 +1000
EHLO Hello []
250 2.1.0 Sender OK
250 2.1.5 Recipient OK
Daniel GarciaAuthor Commented:
Thanks Lester. It appears there is no ideal solution that secures SMTP then.
MASEE Solution Guide - Technical Dept HeadCommented:
H Daniel,
Did you create additional receive connector?

As of now Exchange server is accepting emails from IP,  Assuming is your application server IP.

Did you test it now? If it is still not working please check the eventviewer for related error.
It should be working as per the results posted.

Daniel GarciaAuthor Commented:
THanks guys you have cleared up for me what was an ambigious solution
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Email Protocols

From novice to tech pro — start learning today.