it-swarm.dev

SSL-Zertifikat "err_cert_authority_invalid" nur für Handys chrome

Domain: https://www.amz2btc.com

Analyse von SSL Labs: https://www.ssllabs.com/ssltest/analyze.html?d=amz2btc.com

Alle meine Desktop-Browser öffnen diese gut. Mobile Firefox öffnet diese gut. Erst als ich es mit Handy versuchte Chrome habe ich den Fehler bekommen: err_cert_authority_invalid

Ich weiß sehr wenig über SSL, daher kann ich den SSL-Bericht nicht wirklich verstehen oder warum dieser Fehler auftritt. Wenn jemand ELI5 könnte, wäre das ideal. :)

58
S. J.

Ich habe gerade den Morgen damit verbracht. Das Problem war nicht, dass mir ein Zertifikat fehlte. Es war, dass ich ein Extra hatte.

Ich habe mit meiner ssl.conf begonnen, die meinen Serverschlüssel und drei von meiner SSL-Zertifizierungsstelle bereitgestellte Dateien enthält:

#   Server Certificate:
SSLCertificateFile /etc/pki/tls/certs/myserver.cer

#   Server Private Key:
SSLCertificateKeyFile /etc/pki/tls/private/myserver.key

#   Server Certificate Chain:
SSLCertificateChainFile /etc/pki/tls/certs/AddTrustExternalCARoot.pem

#   Certificate Authority (CA):
SSLCACertificateFile /etc/pki/tls/certs/InCommonServerCA.pem

Es funktionierte gut auf Desktops, aber Chrome on Android hat mir err_cert_authority_invalid

Viele Kopfschmerzen, Suche und schlechte Dokumentation später stellte ich fest, dass es sich um die Serverzertifikatskette handelte:

SSLCertificateChainFile /etc/pki/tls/certs/AddTrustExternalCARoot.pem

Dadurch wurde eine zweite Zertifikatskette erstellt, die unvollständig war. Ich habe diese Zeile auskommentiert und dabei belassen

#   Server Certificate:
SSLCertificateFile /etc/pki/tls/certs/myserver.cer

#   Server Private Key:
SSLCertificateKeyFile /etc/pki/tls/private/myserver.key

#   Certificate Authority (CA):
SSLCACertificateFile /etc/pki/tls/certs/InCommonServerCA.pem

und jetzt arbeitet es wieder an Android. Dies war unter Linux mit Apache 2.2.

28
Mike A

Ich hatte das gleiche Problem beim Hosten einer Website über Parse und Verwenden eines von NameCheap weiterverkauften Comodo-SSL-Zertifikats.

Sie erhalten zwei Zertifikatsdateien in einem Zip-Ordner: www_Ihre_Domäne_com.ca-Bundle www_Ihre_Domäne_com.crt

Sie können nur eine Datei zu Parse hochladen: Parse SSL Cert Input Box

Im Terminal kombinieren Sie die beiden Dateien mit:

cat www_yourdomain_com.crt www_yourdomain_com.ca-bundle > www_yourdomain_com_combine.crt

Dann auf Parse hochladen. Dies sollte das Problem mit den Browsern Android Chrome und Firefox) beheben. Sie können überprüfen, ob es funktioniert hat, indem Sie es unter https: // www. sslchecker.com/sslchecker

18
Jasper

Für diejenigen, die dieses Problem auf IIS Servern haben.

Erklärung : Manchmal enthalten Zertifikate eine [~ # ~] url [~ # ~] eines Zwischenzeugnisses anstelle des eigentlichen Zeugnisses. Desktop-Browser können unter Verwendung dieser URL das fehlende Zwischenzertifikat [~ # ~] herunterladen (~ # ~] . Ältere mobile Browser sind dazu jedoch nicht in der Lage. Also werfen sie diese Warnung.

Du brauchst

1) Stellen Sie sicher, dass alle Zwischenzertifikate vom Server bereitgestellt werden

2) Deaktivieren Sie nicht benötigte Zertifizierungspfade in IIS - Unter "Vertrauenswürdige Stammzertifizierungsstellen" müssen Sie "alle Zwecke deaktivieren" für das Zertifikat, das den Download auslöst.

PS. Mein Kollege hat einen Blog-Beitrag mit detaillierteren Schritten geschrieben: https://www.jitbit.com/maxblog/21-errcertauthorityinvalid-on-Android-and-iis/

9
Alex

Der Bericht von SSLabs sagt:

  This server's certificate chain is incomplete. Grade capped to B.
  ....
  Chain Issues                  Incomplete

Bei Desktop-Browsern werden häufig Kettenzertifikate aus früheren Verbindungen zwischengespeichert oder von der im Zertifikat angegebenen URL heruntergeladen. Mobile Browser und andere Anwendungen tun dies normalerweise nicht.

Korrigieren Sie Ihre Kette, indem Sie die fehlenden Zertifikate einbeziehen, und alles sollte stimmen.

7
Steffen Ullrich

Ich hoffe, ich bin nicht zu spät, diese Lösung hier hat für mich funktioniert, ich verwende COMODO SSL, die oben genannten Lösungen scheinen im Laufe der Zeit ungültig zu sein, meine Website lifetanstic.co.ke

Anstatt sich an den Comodo-Support zu wenden und eine CA-Bundle-Datei zu erhalten, können Sie Folgendes tun:

Wenn Sie Ihr neues SSL-Zertifikat von Comodo erhalten (per E-Mail), wird eine Zip-Datei angehängt. Sie müssen die Zip-Datei entpacken und die folgenden Dateien in einem Texteditor wie Notepad öffnen:

AddTrustExternalCARoot.crt
COMODORSAAddTrustCA.crt
COMODORSADomainValidationSecureServerCA.crt

Kopieren Sie dann den Text jeder ".crt" -Datei und fügen Sie die Texte übereinander in das Feld "Certificate Authority Bundle (optional)" ein.

Danach fügen Sie einfach das SSL-Zertifikat wie gewohnt in das Feld "Zertifikat" ein, klicken auf "Nach Zertifikat automatisch filmen" und klicken auf "Installieren".

Inspiriert von diesem Gist: https://Gist.github.com/ipedrazas/6d6c31144636d586dcc

5
user4237179

Ich hatte auch ein Problem mit der Kette und konnte es mithilfe dieser Anleitung lösen https://Gist.github.com/bradmontgomery/6487319

4
Ricardo Torres

wenn Sie wie ich sind, der AWS und CloudFront verwendet, finden Sie hier eine Anleitung zur Behebung des Problems. Es ähnelt dem, was andere geteilt haben, außer dass Sie die CRT-Datei Ihrer Domain nicht verwenden, sondern nur das, was Comodo Ihnen per E-Mail geschickt hat.

cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > ssl-bundle.crt

das hat bei mir geklappt und auf meiner seite wird die ssl warnung auf chrome in android nicht mehr angezeigt.

4
w1n78

Ein guter Weg, um zu überprüfen, ob ein Problem in Ihrer Zertifikatskette vorliegt, ist die Nutzung dieser Website:

https://www.digicert.com/help/

Geben Sie Ihre Test-URL ein und erfahren Sie, was möglicherweise falsch ist. Wir hatten ein Problem mit dem gleichen Symptom wie Sie und es wurde festgestellt, dass das Problem auf Zwischenzertifikate zurückzuführen ist.

SSL-Zertifikat ist nicht vertrauenswürdig

Das Zertifikat ist nicht von einer vertrauenswürdigen Stelle signiert (Prüfung anhand des Mozilla-Stammspeichers). Wenn Sie das Zertifikat von einer vertrauenswürdigen Stelle gekauft haben, müssen Sie wahrscheinlich nur ein oder mehrere Zwischenzertifikate installieren. Wenden Sie sich an Ihren Zertifikatanbieter, um Unterstützung für Ihre Serverplattform zu erhalten.

3
Knossos

Ich habe mein Problem mit folgenden Befehlen gelöst:

cat __mydomain_com.crt __mydomain_com.ca-bundle > __mydomain_com_combine.crt

und danach:

cat __mydomain_com_combine.crt COMODORSADomainValidationSecureServerCA.crt 
COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > mydomain.pem

Und in meiner Domain nginx .conf habe ich auf den Server 443 gestellt:

ssl_certificate          ssl/mydomain.pem;
ssl_certificate_key      ssl/mydomain.private.key;

Ich vergesse nicht, Ihren "Nginx" neu zu starten

service nginx restart
3

Ich denke, Sie sollten das CA-Zertifikat von einer Instanz installieren.

ssl_trusted_certificate ssl/SSL_CA_Bundle.pem;

0
Michael de Oz

Ich hatte das gleiche Problem, aber die Antwort von Mike A half mir dabei, es herauszufinden: Ich hatte ein Zertifikat, ein Zwischenzertifikat (Gandi), ein anderes Zwischenzertifikat (UserTrustRSA) und schließlich das RootCA-Zertifikat (AddTrust).

Also habe ich zuerst eine Chain-Datei mit Gandi + UserTrustRSA + AddTrust erstellt und diese mit SSLCertificateChainFile spezifiziert. Aber es hat nicht funktioniert.

Also habe ich MikeA answer ausprobiert, indem ich AddTruct cert in eine Datei geschrieben und mit SSLCACertificateFile angegeben und SSLCertificateChainFile entfernt habe. Aber es hat nicht funktioniert.

Also habe ich finnaly eine Chain-Datei mit nur Gandi + UserTrustRSA spezifiziert durch SSLCertificateChainFile und die andere Datei nur mit dem RootCA angegeben durch SSLCACertificateFile und es hat funktioniert.

#   Server Certificate:
SSLCertificateFile /etc/ssl/Apache/myserver.cer

#   Server Private Key:
SSLCertificateKeyFile /etc/ssl/Apache/myserver.key

#   Server Certificate Chain:
SSLCertificateChainFile /etc/ssl/Apache/Gandi+UserTrustRSA.pem

#   Certificate Authority (CA):
SSLCACertificateFile /etc/ssl/Apache/AddTrust.pem

Scheint logisch, wenn Sie lesen, aber ich hoffe, es hilft.

0
zeraDev