Jestem nowy w konfiguracji SSL od zera i zrobiłem pierwsze kroki. Kupiłem certyfikat SSL od RapidSSL dla mojej domeny i wykonałem tam kroki, aby zainstalować certyfikat. Ogólnie certyfikat jest ważny i działa na moim serwerze internetowym (nginx v1.4.6 - Ubuntu 14.04.1 LTS), ale jeśli próbuję aktywować OCSP OCSP, pojawia się następujący błąd w moim błędzie nginx.log:
OCSP_basic_verify () nie powiodło się (SSL: błąd: 27069065: procedury OCSP: OCSP_basic_verify: błąd weryfikacji certyfikatu: błąd weryfikacji: nie można uzyskać certyfikatu lokalnego wystawcy) podczas żądania statusu certyfikatu, odpowiadający: gv.symcd.com
Próbowałem tego również z tego polecenia z wiersza poleceń:
openssl s_client -connect mydomain.tld: 443 2> & 1 </ dev / null
I dostałem „ten sam” błąd, jak w moim error.log:
[...] Sesja SSL: Protokół: TLSv1.2 Szyfr: ECDHE-RSA-AES256-GCM-SHA384 [...] Czas rozpoczęcia: 1411583991 Limit czasu: 300 (s) Sprawdź kod powrotu: 20 (nie można uzyskać lokalnego certyfikat wystawcy)
Ale jeśli pobierz GeoTrust Root Certificat i wypróbuj go za pomocą tego polecenia:
openssl s_client -connect mydomain.tld: 443 -CAfile GeoTrust_Global_CA.pem 2> i 1 </ dev / null
Weryfikacja jest w porządku:
[...] Sesja SSL: Protokół: TLSv1.2 Szyfr: ECDHE-RSA-AES256-GCM-SHA384 [...] Czas rozpoczęcia: 1411583262 Limit czasu: 300 (s) Sprawdź kod powrotu: 0 (ok)
Więc jakoś nie znaleziono / dostarczono certyfikatu głównego GeoTrust.
Konfiguracja mojej strony nginx:
server {
listen 443;
server_name mydomain.tld;
ssl on;
ssl_certificate /etc/ssl/certs/ssl.crt;
ssl_certificate_key /etc/ssl/private/ssl.key;
# Resumption
ssl_session_cache shared:SSL:20m;
# Timeout
ssl_session_timeout 10m;
# Security options
ssl_prefer_server_ciphers on;
ssl_ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RSA+AES:RSA+3DES:!aNULL:!MD5:!DSS;
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
# OCSP Stapling
# It means that you sent status info about your certificate along with the request,
# instead of making the browser check the certificate with the Certificate Authority.
# This removes a large portion of the SSL overhead, the CloudFlare post above explains it in more detail.
ssl_stapling on;
ssl_stapling_verify on;
#ssl_trusted_certificate /etc/ssl/certs/ssl.pem;
#resolver 8.8.8.8 8.8.4.4 valid=300s;
#resolver_timeout 10s;
# This forces every request after this one to be over HTTPS
add_header Strict-Transport-Security "max-age=31536000";[...]};
RapidSSL napisał w swojej dokumentacji, że powinienem dodać następujące certyfikaty do pliku ssl.crt w następującej kolejności:
- myserver.crt
- Pośredni pakiet CA (RapidSSL SHA256 CA - G3)
- Pośredni pakiet CA (GeoTrust Global CA)
Więc zrobiłem...
W tej chwili nie mam pojęcia, co robię źle ... mam nadzieję, że ktoś tutaj może mi pomóc.
Dziękuję Ci!
źródło
Mogę odpowiedzieć tylko na część tego.
openssl s_client -connect mydomain.tld: 443 2> & 1 </ dev / null
będzie potrzebował certyfikatu głównego Globalsign w / etc / ssl / certs. Istnieje pakiet certyfikatów ca. Czy masz już zainstalowany?
źródło