The first thing to consider is that according to SMTP RFC a client that wants to send mail to a mail server should do it on port 587, port 25 should be used only for server to server communications.
Having said that by default in exchange there is already a connector that allows us to send email by authenticated SMTP, is the one you find as “Client HUBSERVERNAME”. With this connector we can contact the SMTP service on port 587 to send mail worldwide (relay) passing our own credentials.
Anyway if you want to create a new connector listening on another port (eg 25) and that allows you to send email through authentication then you should do it this way:
1) First you have to create a new receive connector (for example by emc), give it a name and set the ip or ip classes from which to receive connections.
2) Go in the connector properties, in the tab “Authentication” you have to put a check on “Basic authentication” and “Transport layer security” if you want the authentication to use tls protocol. In “Permission groups” you need to check “Exchange users” (leave other options unchecked).
3) Last step, open the powershell and run this command to enable the relay for authenticated users on the new connector:
Get-ReceiveConnector “Connector name” | Add-ADPermission -ExtendedRights:ms-Exch-SMTP-Accept-Any-Sender -user “NT AUTHORITYAuthenticated Users”
Got It! Now you can try to send mail using authentication and you will see that the emails will be delivered to addresses outside the exchange organization too.
At this link you will find instead the further command from having to perform to create an authenticated SMTP on exchange 2013: http://www.itxperience.net/come-creare-un-smtp-autenticato-in-exchange-2013/