OS X 10.11 CardDAV con certificado autofirmado

0

El servidor CardDAV al que estoy intentando conectar usa un certificado autofirmado. Lamentablemente no puedo hacer nada al respecto.

En versiones anteriores de OS X, al conectarse a este servidor, el sistema me preguntó si quería conectarme utilizando este certificado inseguro. Podría aceptar y continuar.

Al intentar lo mismo en la versión actual de OS X, esto no funciona. Contacts.app solo muestra un problema de conexión.

Al mirar los registros en la Consola, podría encontrar este error:

02/12/15 00:55:39,637 Contacts[39186]: [CardDAVPlugin-ERROR] -getPrincipalInfo:[_controller discoverServer https://user@host:port(null)] 
    Error Domain=NSURLErrorDomain
    Code=-1200
    "An SSL error has occurred and a secure connection to the server cannot be made."
    UserInfo={
        _kCFStreamErrorCodeKey=-9801,
        NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?
    }

No hay alerta, no hay que solicitar el procedimiento de todos modos.

Ahora pensé que podría descargar el certificado, agregarlo al llavero y establecer la confianza predeterminada en "Confiar siempre".

echo -n | openssl s_client -connect host:port | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > carddav.cer

Obtuvo el certificado, lo agregó al llavero, configuró la confianza y lo intentó de nuevo - bummer: El mismo error otra vez y todavía no aparece el diálogo de confirmación.

Ahora mi pregunta es: ¿hay alguna manera de permitir que Contacts.app se conecte a mi servidor o que vuelva a aparecer el diálogo de confirmación?

EDIT

Según lo solicitado, aquí están los detalles de mi conexión SSL:

CONNECTED(00000003)
depth=0 CN = , O = , OU = , ST = , C = , L = , emailAddress = 
verify error:num=18:self signed certificate
verify return:1
depth=0 CN = , O = , OU = , ST = , C = , L = , emailAddress = 
verify return:1
---
Certificate chain
 0 s:/CN=/O=/OU=/ST=/C=/L=/emailAddress=
   i:/CN=/O=/OU=/ST=/C=/L=/emailAddress=
---
Server certificate
-----BEGIN CERTIFICATE-----
-----END CERTIFICATE-----
subject=/CN=/O=/OU=/ST=/C=/L=/emailAddress=
issuer=/CN=/O=/OU=/ST=/C=/L=/emailAddress=
---
No client certificate CA names sent
---
SSL handshake has read 1198 bytes and written 658 bytes
---
New, TLSv1/SSLv3, Cipher is AES256-SHA
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : SSLv3
    Cipher    : AES256-SHA
    Session-ID: 
    Session-ID-ctx: 
    Master-Key: 
    Key-Arg   : None
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1449069604
    Timeout   : 300 (sec)
    Verify return code: 18 (self signed certificate)
---
DONE
    
pregunta Julian F. Weinert 02.12.2015 - 01:27

1 respuesta

1

De acuerdo con la sección de mejoras de seguridad de las notas preliminares de OS X 10.11 en sitio web de desarrolladores de Apple

  

Seguridad de transporte de aplicaciones (ATS)

     

La Seguridad de transporte de aplicaciones (ATS) aplica las mejores prácticas en las conexiones seguras entre una aplicación y su back-end. ATS evita la divulgación accidental, proporciona un comportamiento predeterminado seguro y es fácil de adoptar; también está activado de forma predeterminada en OS X v10.11 y iOS 9. Debería adoptar ATS lo antes posible, independientemente de si está creando una nueva aplicación o actualizando una existente.

     

Si está desarrollando una nueva aplicación, debe usar HTTPS exclusivamente. Si tiene una aplicación existente, debe usar HTTPS todo lo que pueda en este momento y crear un plan para migrar el resto de su aplicación lo antes posible. Además, su comunicación a través de API de nivel superior debe cifrarse utilizando la versión 1.2 de TLS con secreto de reenvío. Si intenta realizar una conexión que no cumple con este requisito, se produce un error. Si su aplicación necesita realizar una solicitud a un dominio no seguro, debe especificar este dominio en el archivo Info.plist de su aplicación.

    
respondido por el Khürt Williams 02.12.2015 - 16:24

Lea otras preguntas en las etiquetas