Exchange Connector Won't Send to External Domains

Solution 1:

You should set up a receive connector operating on a non-standard port (maybe 2525) and restrict it to only accept IP addresses of servers that you know are allowed to send out. Create the connector with nothing ticked in Authentication and Anonymous users ticked for permissions groups.

After that you'll need to run the following command in PS as Exchange by default blocks anonymous relaying on any receive connector.

Get-ReceiveConnector “Receive Connector Name” | Add-ADPermission -User “NT AUTHORITY\ANONYMOUS LOGON” -ExtendedRights “Ms-Exch-SMTP-Accept-Any-Recipient”

I just tested this on my own exchange server and managed to send to both gmail and my own domain, sending from the exchange domain as well as a fake domain.

Also add the -port 2525 argument onto your PS script.