A solução disso para mim era três vezes.
Em primeiro lugar, você precisa remover o registro MX existente do WHM ou pode escolher o E-mail Routing Remote Mail Exchanger, o que significa que ele ignora o correio local e sempre usa a opção externa. Por algum motivo, definir o MX atual como 1 e o Office 365 não funcionou para mim e estava sempre tentando usar o local.
Além disso, quando você adiciona um usuário ao Office 365, precisa fazer o logon on-line (por exemplo, navegador) antes de tentar adicioná-lo ao Outlook. Se você não fizer isso e tentar configurar a conta no Outlook usando a senha temporária, ela falhará.
Embora a Microsoft não esteja ciente disso ou por que, você DEVE incluir um ponto final / período após a maioria das entradas de DNS para WHM. Por exemplo, para o registro mx, você é informado a entrar:
MX 0 @ YOURDOMAIN.mail.protection.outlook.com 1 Hour
Para obter este trabalho no WHM, você precisa usar:
MX 0 YOURDOMAIN.COM. YOURDOMAIN.mail.protection.outlook.com. 3600
Observe o período após YOURDOMAIN.COM e também após YOURDOMAIN.mail.protection.outlook.com - finalmente, você precisa inserir 3600 e não 1, pois WHM usa segundos para TTL. @ não funcionaria para mim também, mas YOURDOMAIN.COM. funcionou bem.
Finalmente, o valor TXT precisa ser inserido dentro de aspas - mais uma vez a Microsoft tentou me remover, mas isso só funciona quando elas são citadas
v=spf1 include:spf.protection.outlook.com -all
deve ser inserido como
"v=spf1 include:spf.protection.outlook.com -all"
para o valor TXT.
Espero que isso ajude alguém!