Your on the right track!, I'm not an expert at SMTP but I do have a couple hundred hours into it.
When using a mail server to relay a message to it's destination, your not really logging in to the mail server, your just passing a SMTP message through it as long as you meet the criteria of the mail server. The mail server will do the hard work of finding the destination mail server, and do it's work from there on.
Microsoft Exchange Mail Servers do require a windows login inside the network. I know many can argue that you have to login to pass a mail message, but that's another argument I'll save for a another day.
So if your not logging in, then what are you doing?
The mail server has a set of criteria to match your input from, such as
*Allowed IP Address range
*Port Numbers
*Domain Names
*SPT Record in your DNS Zone File
*SSL or TLS negotiation and request for keys
*Cipher negoiation
*Mail Server Black List
*Email Address Black list
*Connection or IP Address Black list
I use an Exchange Server, and the SMTP Mail server that is included in Windows Server 2003+, I think it's part of IIS Web Server. So on each web server we have, we have the SMTP Server setup on it. Our .Net Apps using the mail Client passes the mail message to the SMTP Server, which can relay to the exchange server, and then send the message out.
.Net --> SMTP Server in IIS --> Destination Mail Server
It took me a week to configure the whole thing, and to fix issues with sending to AOL, Time Warner and so on, and to rewrite my .net mail Client program.
You may want to consider changing your design, but I'm not sure how your infrastructure it setup.
/////////////////////////////////////////////////////////////////////////////////////
For what your trying to do,
.Net --> postfix server --> Destination Server
Looks like your going straight to your internal mail server from inside your network.
Fix the TLS negotiation, I think your postfix server is at issue here, and cannot settle on a protocol with the .Net mail Client. Check your port number to.
Below is an overview of how it works.
http://technet.microsoft.com/en-us/library/cc783349%28v=ws.10%29.aspx[
^]
This is the RFC 3207 for TLS Negociation, which describes your exit code of 554
If the SMTP client decides that the level of authentication or
privacy is not high enough for it to continue, it SHOULD issue an
SMTP QUIT command immediately after the TLS negotiation is complete.
If the SMTP server decides that the level of authentication or
privacy is not high enough for it to continue, it SHOULD reply to
every SMTP command from the client (other than a QUIT command) with
the 554 reply code (with a possible text string such as "Command
refused due to lack of security").
Complete Document
http://www.ietf.org/rfc/rfc3207.txt[
^]
I haven't worked with Linux in a while, never worked with postfix, but I know you can adjust the config file to change the level of security.
You connected on the first log entry, but was disconnected upon TLS negociation
Aug 15 17:13:55 mail postfix/smtpd[28870]: Anonymous TLS connection established from unknown[a.b.c.d]: TLSv1 with cipher AES128-SHA (128/128 bits)
Aug 15 17:13:56 mail postfix/smtpd[28870]: NOQUEUE: reject: RCPT from unknown[a.b.c.d]: 554 5.7.1 <dave@xxx.com>: Relay access denied; from=<administrator@xxx.com> to=<dave@xxx.com> proto=ESMTP helo=<AMSTERDAM>
Relay access denied;
I didn't see that, relay access denied, plain and simple, go back and set your config file back to that date of the log file, and add a relay premission, solved!