Quais são os erros no log de 10: 06: 40.691 a 10: 06: 40.723?
Linha
10:06:40.691 5 SMTPI-011473([69.197.220.11]) inp: 210:06:51.165 5 SMTPI-011474([69.197.220.11]) inp: STARTTLS
310:06:40.691 5 SMTPI-011473([69.197.220.11]) inp: 210:06:51.165 5 SMTPI-011474([69.197.220.11]) inp: STARTTLS
3%pre%1
1
fazia parte do handshake SSL.
- Byte 0 = 022 significa tipo de registro SSL = 22 (SSL3_RT_HANDSHAKE)
- Byte 1-2 = 0301 foi significa versão SSL = TLS1_VERSION
Consulte esta página para referência.
Mas infelizmente o servidor na porta 587 não fala com SSL (SMTPS), mas com STARTTLS . O servidor com STARTTLS espera que a conexão inicial permaneça no canal não criptografado e, em seguida, passe para o canal criptografado.
Portanto, na inicial , o IOS tentou se conectar ao SMTPS (SMTP no protocolo SSL superior). Mas o servidor não entende, então ele avisa Unknown command
até alguns limites e então desconecta o cliente.
Como a conexão inicial é rejeitada, o IOS faz uma ação de fallback e se conecta novamente ao servidor com STARTTLS.
%pre%Nesse caso, o iOS se conecta ao servidor com sucesso.
Qual é o endereço listado no horário 10: 06: 51.067 (10.33.64.161)?
O endereço IP 10.33.64.161 parece ser o endereço IP do provedor de Internet. Normalmente o cliente irá anunciar HELO <something>
com <something>
é o endereço IP / hostname do computador / handphone
Comportamento do iOS
Como nunca usei o IOS, não posso dizer qual configuração do iOS causou esse comportamento (ou talvez esse seja o comportamento padrão do iOS). No seu caso, o comportamento pretendido é diretamente conectado via STARTSSL, ignorando a tentativa de SMTPS para que ele não seja rejeitado e colocado na lista negra novamente.
No comentário, BillThor confirmou que o comportamento acima era o comportamento padrão do iOS.
IOS defaults to SSL (secure connection) and then offers to connect insecurely if that fails. After the SSL connection fails the user is given the option to connect insecurely. If STARTTLS is available, it is used. The activities involved in the connection discovery are being logged by the server.
Solução
A solução óbvia é configurar o servidor de e-mail - CommuniGate Pro -, portanto, não colocará na lista negra o cliente que se comporta assim. O comportamento não deve ser considerado uma falha e não deve colocar o dispositivo na lista negra.
Solução alternativa do OP
As configurações para o limite de erros de protocolo e para a inclusão na lista negra estão em Configurações- > Mail - > SMTP - > Recebimento - > Limites . O padrão é Disconnect after 20 errors
e Deny access for 15 minutes
. Eu mudei o meu para Disconnect after 100 errors
e Deny access for 0 seconds
. Não tenho certeza sobre os 0 segundos, mas resolveu os problemas com a configuração inicial de contas IMAP em dispositivos iOS com o nosso servidor CommuniGate Pro.