Jak zainstalować certyfikaty pośrednie (w AWS)?

22

Zainstalowałem klucz prywatny (kodowany pem) i certyfikat klucza publicznego (kodowany pem) na Amazon Load Balancer. Jednak po sprawdzeniu protokołu SSL za pomocą narzędzia do testowania witryn pojawia się następujący błąd:

Błąd podczas sprawdzania certyfikatu SSL !! Nie można uzyskać lokalnego wystawcy certyfikatu. Nie można znaleźć wystawcy certyfikatu sprawdzonego lokalnie. Zwykle oznacza to, że nie wszystkie certyfikaty pośrednie są zainstalowane na serwerze.

Przekształciłem plik CRT na PEM za pomocą tych poleceń z tego samouczka :

openssl x509 -in input.crt -out input.der -outform DER
openssl x509 -in input.der -inform DER -out output.pem -outform PEM

Podczas konfiguracji usługi Amazon Load Balancer jedyną opcją, którą pominąłem, był łańcuch certyfikatów. (kodowanie pem) Jednak było to opcjonalne. Czy to może być przyczyną mojego problemu? A jeśli tak; Jak utworzyć łańcuch certyfikatów?

AKTUALIZACJA

Jeśli zwrócisz się do VeriSign, otrzymasz łańcuch certyfikatów. Łańcuch ten obejmuje publiczne crt, pośrednie crt i root crt. Pamiętaj, aby usunąć publiczny CRT z łańcucha certyfikatów (który jest najwyższym certyfikatem) przed dodaniem go do pola łańcucha certyfikacji usługi Amazon Load Balancer.

Jeśli wysyłasz żądania HTTPS z aplikacji na Androida, powyższe instrukcje mogą nie działać w starszych systemach operacyjnych Android, takich jak 2.1 i 2.2. Aby działało na starszym systemie Android:

  • Przejdź tutaj
  • kliknij zakładkę „Retail ssl”, a następnie kliknij „bezpieczna strona”> „Pakiet CA dla serwera Apache”
  • skopiuj i wklej te pośrednie certyfikaty do pola łańcucha certyfikatów. po prostu dodaj, jeśli nie znalazłeś tutaj, to bezpośredni link .

Jeśli korzystasz z certyfikatów zaufania geograficznego, rozwiązanie jest takie samo dla urządzeń z Androidem, jednak musisz skopiować i wkleić ich pośrednie certyfikaty dla Androida.

getmizanur
źródło
Certyfikat pośredni == Certyfikat łańcuchowy
Chris S
dzięki @chris, czy możesz mi powiedzieć, jak mogę utworzyć certyfikat łańcuchowy. Próbowałem google, ale naprawdę jestem zdezorientowany, jak utworzyć ten certyfikat łańcucha. wszelkie sugestie lub linki do samouczka są bardzo mile widziane
getmizanur
@getmizanur Skąd pochodzi ten certyfikat? Dostawca CA powinien być w stanie dostarczyć Ci łańcuch zakodowany w PEM.
Shane Madden

Odpowiedzi:

21

połącz dostarczone pliki w następującej kolejności:

  • site.com.crt
  • intermed.crt (jeden lub więcej, ich kolejność nie ma znaczenia)
  • ROOT.crt

możesz to zrobić z powłoki za pomocą catpolecenia

cat site.com intermediate.crt ROOT.crt > site.chain.pem

lub skopiuj / wklej je, bez spacji, upewnij się, że certyfikaty znajdują się w różnych wierszach

-----BEGIN CERTIFICATE-----
site cert
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
intermediate cert
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
root cert
-----END CERTIFICATE-----
Eric Fortis
źródło
dzięki @eric, mam tylko dwa pliki podpisane .crt i .key. czy możesz mi powiedzieć, jak mogę uzyskać pośrednie i główne pliki CRT?
getmizanur
3
połączyć certyfikat witryny z tymi produktami pośrednimi, bez certyfikatu root.
Eric Fortis
@EricFortis Jeśli moduł równoważenia obciążenia AWS chce osobnego pliku certyfikatu i pliku łańcuchowego, może po prostu potrzebować półproduktów i katalogu głównego bez certyfikatu podmiotu - nie jestem pewien!
Shane Madden
7

Miałem problemy z moim szybkim certyfikatem SSL; zgodnie z

https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=SO21856&actp=search&viewlocale=en_US&searchid=1368427636740

Mogę to naprawić, odwracając certyfikaty w pakiecie urzędu certyfikacji:

Problem

Podczas instalowania certyfikatu SSL w usłudze Amazon Web Service (AWS) - urządzeniu Amazon EC2 może pojawić się następujący komunikat o błędzie.

Błąd: nieprawidłowy certyfikat klucza publicznego. Przyczyna Ten problem może wystąpić w usłudze Amazon Web Service (AWS) - urządzeniu Amazon EC2, gdy spełniony jest jeden z poniższych warunków.

RapidSSL Intermediate CA bundle certificate is not installed on Amazon Web Service (AWS) - > Amazon EC2 device
RapidSSL Intermediate CA bundle certificate is installed on Amazon Web Service (AWS) - Amazon > EC2 device but the CA bundle required needs to be installed in reversed order

Rozkład

Aby rozwiązać problem z instalacją certyfikatu RapidSSL za pomocą usługi Amazon Web Service (AWS) - urządzenie Amazon EC2, wykonaj następujące czynności.

Krok 1: Pobierz certyfikat pakietu pośredniego urzędu certyfikacji

Aby pobrać certyfikat pakietu pośredniego urzędu certyfikacji, zapoznaj się z artykułem AR1548

Podczas przeglądania pakietu CA zobaczysz dwa certyfikaty ułożone jeden na drugim. Te dwa certyfikaty będą musiały zostać przełączone. Górny certyfikat należy umieścić na dole, a dolny certyfikat - na górze.

...

notalifeform
źródło
cofanie certyfikatów w moim pliku ca-bunle działało jak urok. dzięki!
Mehmet Fatih Yıldız
To. To jest poprawna odpowiedź. Bardzo mi pomogłeś.
Andrey
5

Musiałem przejść przez ten sam problem. Wydaje się, że samo przesłanie pliku pem z poniższymi rozwiązaniami rozwiązuje problem. U góry nie podobało się to

-----BEGIN CERTIFICATE-----
intermediate cert
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
root cert
-----END CERTIFICATE-----
STHAL
źródło
2
Twoja odpowiedź nie jest bardzo jasna, ale wygląda bardzo podobnie do już udzielonej i zaakceptowanej. Czy to naprawdę kolejna odpowiedź na pytanie?
Tonin,
ta odpowiedź zadziałała dla mnie. Postępowałem zgodnie z przyjętą odpowiedzią, podając certyfikat witryny, ale to nie zadziałało. Już samo umieszczenie certyfikatu pośredniego i certyfikatu głównego, jak wspomniano w tej odpowiedzi, działało świetnie!
użytkownik1258600
4

Dla wydanych certyfikatów Comodo

    Private Key: private_key.text
    Public Key Certificate: yourdomain.crt
    Certificate Chain: combine these 2
    cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt > certchain.txt
    (or paste in COMODORSADomainValidationSecureServerCA.crt first followd by COMODORSAAddTrustCA.crt) 
appsmatics
źródło
0

Ja również kupiłem certyfikat RapidSSL i walczę z błędem „Nieprawidłowy certyfikat klucza publicznego”. Próbowałem wszystkiego wymienionego tutaj, w tym cofania certyfikatów łańcuchowych, wypisywania ich, dołączania do certyfikatu głównego serwera itp.

W końcu nie udało mi się odejść od błędu. Znalazłem więc inny sposób na przesłanie certyfikatu do Amazon w celu użycia z Load Balancer (Elastic Beanstalk): W rzeczywistości istnieje GUI, które pozwala na przesyłanie certyfikatów!

Znajduje się w EC2 -> Load Balancers -> Wybierz moduł równoważenia obciążenia -> Listnerers (karta) -> Wybierz HTTPS w menu rozwijanym -> Kliknij Wybierz w zakładce Certyfikat SSL i pojawi się formularz, który pozwala na przesłanie certyfikatu!

GUI

Kiedy wkleiłem tam pliki, działało to jak urok!

Elad Nava
źródło
Upewnij się również, że próbujesz przesłać „Klucz prywatny RSA”. stackoverflow.com/questions/17733536/...
Elad Nava