Seguindo a resposta de zakjan, tive um problema ao tentar usar o jquery para fazer uma solicitação AJAX no meu servidor recém-seguro, em uma visualização na web do Android. Funcionou no navegador, mas não no meu aplicativo.
Eu usei este site: https://certificatechain.io/
Eu colei o texto do meu arquivo .crt assinado que voltei do Comodo (positiveSSL), e ele me devolveu uma concatinação de tudo o que eu precisava. Salvei como meu domínio + "chain.crt" (veja abaixo)
Então, nas minhas configurações do apache, digitei algo como esse para esse host virtual específico:
SSLEngine On
SSLCertificateFile /etc/ssl/localcerts/example_com.crt
SSLCertificateKeyFile /etc/ssl/localcerts/example.com.key
SSLCACertificateFile /etc/ssl/localcerts/example.com.chain.crt
Depois disso, a visualização na web do meu aplicativo Android não teve problemas ao usar o ajax para POST no meu servidor. Eu tentei em 2 dispositivos do mundo real, um executando 2.3.4, outro executando 4. algo. E no emulador executando 2.3. Tudo funcionou.
Eu espero que isso ajude.
SSLCACertificateFile
diretiva e apontá-la para o arquivo CA que minha autoridade me forneceu. Não funcionaria se eu simplesmente concatenasse os outros certificados no meu arquivo de certificado.SSLCACertificateFile
foi a linha que eu perdi. Inicialmente, presumi que minha CA era muito nova porque o SSL funcionava quando solicitado em alguns navegadores / SOs, mas não em outros. O uso de decoder.link/sslchecker ajudou a esclarecer que minha configuração estava errada e essa resposta teve a correção. Obrigado!!A cadeia estava no arquivo crt, com o SSL original funcionando.
Para o GoDaddy, existe um segundo certificado - gd_bundle.crt
Copie essas informações e adicione-a à CRT instalada no servidor.
Portanto, o crt original no servidor tinha 1 certificado e depois terá 3 no mesmo arquivo. Essa é a corrente.
Eu ainda recebi contém âncora em problemas de cadeia no ssllabs.com, mas isso não é um problema, apenas uma opção para sair ou sair - de acordo com - /security/24561/ssltest-chain-issues para contenção de âncoras / 24566 # 24566
fonte
Você pode resolver o problema incompleto da cadeia de certificados manualmente, concatenando todos os certificados do certificado para o certificado raiz confiável (exclusivo, nesta ordem), para evitar esses problemas. Observe que o certificado raiz confiável não deve estar lá, pois já está incluído no armazenamento de certificados raiz do sistema.
Você deve conseguir certificados intermediários do emissor e concatená-los por si mesmo. Btw, eu escrevi um script para automatizar o procedimento, é preciso um certificado para produzir a saída de certificados encadeados corretamente. https://github.com/zakjan/cert-chain-resolver
fonte