Después de actualizar mi iPhone 6+ de iOS 8 a iOS 9, mi cuenta de correo electrónico IMAP dejó de funcionar. Cuando la aplicación Mail intenta conectarse al servidor, falla y muestra una alerta con el título "No se puede obtener el correo" y el mensaje "El servidor de correo xyz no responde. Verifique que haya ingresado la información correcta de la cuenta en la configuración del correo. ".
Verifiqué la información de la cuenta, y de hecho es correcta. Curiosamente, no no recibo ningún mensaje de error de la aplicación de configuración cuando intento guardar la cuenta. Intenté ingresar información incorrecta a propósito (nombre de usuario incorrecto, contraseña incorrecta, puerto TCP incorrecto), y cada vez que hago eso y trato de guardar la cuenta, la aplicación de configuración muestra una alerta "El servidor IMAP x.y.z no responde". Así que estoy realmente seguro de que la información que he ingresado es correcta.
Además, tengo otros dos dispositivos iOS en el hogar (un iPad 2 y un iPhone 4S) que están configurados para usar la misma cuenta y que todavía están en iOS 8; desde estos dispositivos, la cuenta funciona correctamente, así que también Sepa que el problema no es algo básico, ya que el servidor IMAP no funciona.
He intentado varias cosas (ver más abajo), pero sin éxito. Lo único que sé con certeza es que el problema está de alguna manera conectado a TLS y / o certificados. Teniendo en cuenta la información de esta pregunta de AskDifferent sospecho que es un problema con el certificado CAcert, pero no estoy seguro .
¿Sabe algo sobre los cambios en iOS 9 relacionados con el manejo de certificados (no fiables o de otro tipo)? ¿O tienes otras pistas que podrían ayudarme a resolver este problema?
Información sobre el servidor:
- El servidor IMAP se ejecuta en una máquina Debian sobre la que tengo control total
- El servidor IMAP es Courier IMAP
- El servidor IMAP acepta conexiones en el puerto IMAP estándar 143
- El servidor IMAP requiere STARTTLS para exigir que todo el tráfico esté cifrado a través de TLS
- El servidor IMAP utiliza un certificado comodín
- El servidor IMAP proporciona toda la cadena de certificados al cliente
- La CA raíz es CAcert.org ( enlace a certificados de CA raíz e intermedios )
- Debido a que CAcert.org no está, de forma predeterminada, en el almacén de CA confiable de iOS 9, instalé manualmente los certificados de CA raíz e intermedios en el iPhone 6+
- Versión de mensajería = 0.73.1 (
/usr/bin/imapd --version
) - versión de OpenSSL = 1.0.2d (
/usr/bin/openssl version
)
¿Qué he probado?
- Lo primero que hice fue eliminar la configuración completa de la cuenta en la aplicación de configuración del iPhone, luego creé una nueva cuenta y volví a ingresar los detalles de la configuración. No hay éxito.
- Actualicé varios paquetes en la máquina Debian, incluyendo Courier y OpenSSL, para asegurarme de que el servidor tenga las capacidades de seguridad "más recientes y mejores". No hay éxito.
- I lee en alguna parte que iOS 9 podría requerir TLS 1.2 en el lado del servidor, por lo que verifiqué dos veces que el servidor IMAP ofrece esa versión de TLS a sus clientes. Lo hace. Este es el comando que usé para la verificación:
openssl s_client -connect mail.herzbube.ch:143 -starttls imap
. Si ejecuta esto, verá un bloque con información sobre la sesión SSL hacia el final, este bloque contiene una línea que muestra la versión TLS que se usa (Protocol : TLSv1.2
). Tenga en cuenta que para obtener TLS v1.2, la versión de OpenSSL del lado del cliente también debe admitir esto. Por ejemplo, OpenSSL en mi computadora portátil Mac OS X Yosemite (10.10.3) es demasiado antigua, es decir, solo es la versión 0.9.8.zd y no parece entender el TLS 1.2, así que obtengoProtocol : TLSv1
. - Eliminé la raíz CAcert y los certificados intermedios en el iPhone, luego los reinstalé. No, no ayudó.
- Deshabilité temporalmente el requisito de TLS en el lado del servidor, y esto resuelve el problema, es decir, ahora la aplicación de Correo puede conectarse, iniciar sesión y recibir correos electrónicos del servidor. Obviamente, esta no es una solución real, ya que no quiero que el tráfico al servidor IMAP sea en texto sin cifrar, pero al menos ahora sé que el problema está de alguna manera conectado a TLS (y / o certificados).
- Actualicé el iPhone a iOS 9.0.1. No hay éxito.