Co jest nie tak z moim łańcuchem zaufania SSL?

10

Certyfikat SSL dla mojej witryny, https://www.snipsalonsoftware.com/ , nie działa na Androidzie. Podczas rozwiązywania tego problemu podłączyłem moją witrynę do narzędzia testowego Qualys SSL Labs:

https://www.ssllabs.com/ssltest/analyze.html?d=www.snipsalonsoftware.com&s=50.57.181.104

Wydaje się, że ten raport mówi mi, że mam „problemy z łańcuchem”. Coś jest „niekompletne”. Ale mam problem ze zrozumieniem, co jest niekompletne.

W następnej sekcji, w „Ścieżkach certyfikacji”, widzę na pomarańczowo (i przypuszczam, że pomarańczowy oznacza „trochę źle”) „Dodatkowe pobieranie”. Nie mam pojęcia, co to znaczy ani jak to naprawić. Znalazłem ten wątek , ale nie umiem przetłumaczyć, co mówią, na rozwiązanie dla mnie.

Co powinienem zrobić?

Jason Swett
źródło

Odpowiedzi:

5

Skonfigurowałeś serwer tak, aby wysyłał certyfikat tylko do przeglądarek. W przypadku większości przeglądarek stacjonarnych jest to w porządku, ponieważ zawierają one już wiele pośrednich i głównych danych CA, dzięki czemu mogą łatwo zbudować łańcuch zaufania. W przypadku większości przeglądarek mobilnych ogólnie konieczne jest zapewnienie całego łańcucha certyfikatów, tj. Własnego certyfikatu, certyfikatu wystawiającego CA oraz wszelkich pośredników, które mogą istnieć między tym a ostatecznym głównym CA. Urządzenie mobilne prawdopodobnie będzie zawierało dane głównego urzędu certyfikacji tylko w tym scenariuszu.

Dla konkretnego certyfikatu możesz przeczytać ten artykuł pomocy Comodo: Baza wiedzy: Urząd certyfikacji Comodo> Certyfikaty> SSL> Instalacja certyfikatu

ThatGraemeGuy
źródło
1
Dzięki. Okazało się, że ta strona doprowadziła do odpowiedzi, która brzmi: „SSLCertificateChainFile /etc/ssl/ssl.crt/yourDomainName.ca-bundle ***”
Jason Swett
4

Certyfikat może zawierać specjalne rozszerzenie dostępu do informacji o urzędach ( RFC-3280 ) z adresem URL do certyfikatu wystawcy. Większość przeglądarek może użyć rozszerzenia AIA do pobrania brakującego certyfikatu pośredniego w celu uzupełnienia łańcucha certyfikatów. Ale niektórzy klienci (przeglądarki mobilne, OpenSSL) nie obsługują tego rozszerzenia, więc zgłaszają taki certyfikat jako niezaufany.

Możesz rozwiązać problem niepełnego łańcucha certyfikatów ręcznie, łącząc wszystkie certyfikaty z certyfikatu z zaufanym certyfikatem głównym (wyłącznie, w tej kolejności), aby zapobiec takim problemom. Uwaga: zaufany certyfikat główny nie powinien tam być, ponieważ jest już zawarty w głównej bazie certyfikatów systemu.

Powinieneś być w stanie pobrać certyfikaty pośrednie od emitenta i złączyć je razem. Napisałem skrypt, który automatyzuje procedurę, zapętla się nad rozszerzeniem AIA, aby generować dane wyjściowe poprawnie połączonych certyfikatów. https://github.com/zakjan/cert-chain-resolver

zakjan
źródło
Świetna odpowiedź, to jedyna rzecz, która mi pomogła. Dałem skryptowi mój certyfikat (tylko mój pojedynczy certyfikat, a nie pakiet) i stworzył pełen stos certyfikatów niezbędnych dla serwera WWW.
tylko
Istnieje również usługa internetowa: certificatechain.io
rcoup
github.com/spatie/ssl-certificate-chain-resolver - pakiet php do tego, jeśli nie maszGo
shukshin.ivan