Sending Email through Office 365

Permalink
One of our clients has their email set up through Office 365 and are attempting to send email using the following SMTP settings:

Mail Server
smtp.office365.com

Encryption
TLS

Port
587

When sending a test email in the Dashboard, we get the following error:

The following error was found while trying to send the test email:<br />stream_socket_enable_crypto(): Peer certificate CN=`subdomain.hostdomain.com` did not match expected CN=`smtp.office365.com`


I tried adding the following configuration settings in /application/config/app.php:

return [
   'http_client' => [
      'sslverifypeer' => false,
      'sslverifypeername' => false,
      'sslallowselfsigned' => true,
   ],
];


This didn't seem to have any effect.

The peer certificate is being automatically detected on the server. Is this an issue on the hosting provider end or is this something that needs to be configured in the client's Office 365 settings?

Any insight would be helpful.

concrete5 Version 8.3.2

shoutmediaca
 
studio4graphics replied on at Permalink Reply
Hi, I have the same problem.

Did you find an solution?
shoutmediaca replied on at Permalink Reply
shoutmediaca
Hi studio4graphics,

I've tried a few times on different servers and I've never been able to send mail through concrete5 using smtp.office365.com.

You'll probably have better luck using an email delivery service with the Mail Service Integration add-on (https://www.concrete5.org/marketplace/addons/mail-service-integration).

Cheers.
Nicholaus replied on at Permalink Reply
This is the correct response--it's exactly what we're doing. You basically authorize yourself to use MS's SMTP server for any SMTP traffic from your IP address, no authentication required.

I did have to work with MS support to get their relay to send mail to addresses outside of our domain, but it all works now with no authhttp://www.upsers.online/