Cannot send via smtp.office365.com on TCP port 587
Hi All,
I just added a second Office 365 account to my Thunderbird Profile. That broke the ability to send messages from either account. Thunderbird never sends an SMTP response after the server replies. I removed the second account, deleted both SMTP servers and then restarted Thunderbird and I was able to send again from the first account. I added the second account back, and once again, neither account is able to send. This time, I left the first account at smtp.office365.com and the second one at what it auto-discovered, smtp-mail.outlook.com. I tested this with 52.5.0 and with 58.0b2 (64-bit).
I think this is a bug of some kind, but maybe I'm missing something. Attached are a screenshot of the mail settings, and the packet capture.
Cheers,
Wšykne wótegrona (8)
Here's the response from the Office 365 server, and then nothing...
When you added the second account, did you make sure it was sending on the smtp server with the second account's User name and password, not on the smtp server of the first account? Open Preferences/Account Settings, select an account in the left pane, then check the Outgoing Server (SMTP) entry in the lower right pane to make sure each account is sending on its own server.
Yes, though it should not matter. I can set it to send through Gmail’s smtp server and it works fine. It’s just that Thunderbird seems like it never sends a command to the server at all. I also put a hard coded entry in my hosts file pinning smtp.office365.com specifically to one of their servers so that we it doesn’t hop around, but no difference at all either way. I use different names to reference them in the outbound smtp server list, and tried different names and different hostnames. It very odd, like the Data in the reply is throwing it off. Otherwise, I’d expect it to send a HELO or AUTH or something.
Matching the incoming account with the outgoing server is important if the service requires it, such as Gmail. You can, of course, add an account to your gmail account so that the former can send through gmail. The smtp.office365.com server works fine here with a Hotmail account. If it stopped working, I might try clearing the DNS cache (ipconfig.exe /flushdns), but I don't know the OSX equivalent.
Yes, when I use Gmail for the SMTP server for "account1", it works fine, but then with "account2", still using smtp-mail.outlook.com, it hangs on "Connected to smtp-mail.outlook.com..." and then fails with message
Send Message Error Sending of the message failed. The message could not be sent because the connection to Outgoing server (SMTP) smtp-mail.outlook.com timed out. Try again.
I ran a packet capture on the successful connection on Gmail as the SMTP server, and the Thunderbird client sends a EHLO. With the dual Office 365 accounts, even when using different SMTP server hostnames, it never sends the EHLO. The only thing that I can think of is that maybe Thunderbrd is looking at the response and getting confused because both responses are from *.outlook.office365.com?
Thanks, sly-
Wót slyride
Have you checked the sender address when you send your outlook messages via Gmail smtp? I think you'll find the associated Gmail address is substituted for you. But you can add a non-gmail address to your Gmail account which will allow such an account to be sent unmolested.
I don't think there is any fundamental problem in Thunderbird. I'm using a hotmail account and an office365 account together in Thunderbird.
Hi Zenos, yes, it is definitely the correct sender address. I have it set up in my "Send mail as:" accounts in Gmail already. As you can see in my original post, the packet capture shows that it makes the connection to smtp.office365.com, and that it received the 220 reply, but an ACK is never sent back. So this isn't an issue with it resolving the name.
Here's what I just tried.
- Removed the 2nd account, but not the 2nd outbound SMTP server.
- Send a message from the original O365 account, it times out after two minutes, same things as has been happening.
- Removed the 2nd outbound SMTP server, leave one Office 365 outbound SMTP server and multiple others for Gmail, and other accounts.
- Send a message from the original O365 account, it times out after two minutes, same things as has been happening.
- Restart Thunderbird.
- Send a message from the original O365 account, it sends no problem.
Here is a packet capture from that showing the immediate ACK after the 220, and then the rest of the communication. Compare that to the capture shown in the original post, and you can see that the ACK is never sent.
Here's what I've tried next.
- I still have the 2nd O365 account removed.
- I add a 2nd O365 SMTP server.
- I send a test message with the original O365 account. It goes through no problem.
- I add the 2nd O365 account, but do a manual config of the server settings, selecting the new O365 SMTP server.
- I try to send fro the original O365 account...and timeout.
- I removed the 2nd O365 account, but not the 2nd O356 SMTP server.
- I try to send fro the original O365 account...and timeout.
- Restart Thunderbird.
- I try to send fro the original O365 account, it succeeds.