2017-10-31 19 views
4

불완전한 TLS 인증서 체인이있는 URL에 대해 https 요청을하려고합니다. 여기 누락 된 인증서 체인을 보여줍니다 Qualys test tool에서 관련 부분의 "시만텍 3 급 보안 서버 CA는 - G4" :불완전한 TLS 인증서에 대해 https 요청을 수행하는 방법은 무엇입니까?

SSL report screengrab

대부분의 브라우저들은 시만텍이 아마도 때문에,이 대처 않는다 인증서가 미리로드 되었습니까? 간단한 golang 예는, 그러나, 오류 나는 문제의 사이트를 통지 한 x509: certificate signed by unknown authority

package main 

import (
"log" 
"net/http" 
) 

func main() { 

    _, err := http.Get("https://www.example.com/") 
    if err != nil { 
     log.Fatal(err) 
    } else { 
     log.Println("Success!") 
    } 
} 

실패하지만 이는을 사용하고 내가 인증서 저장소의 이동에 누락 된 인증서를 삽입 할 수있는 방법이 있나요?

+2

서버를 수정했습니다. – EJP

답변

3

이 문제를 해결하기 위해 방금 누락 된 중간 인증서를 포함하도록 클라이언트의 시스템 인증서 저장소를 업데이트했습니다.

클라이언트는 우분투 기반 서버에서 실행중인

, 그래서 이것은 문제 해결 :

#download certificate 
cd /usr/local/share/ca-certificates 
curl -O https://symantec.tbs-certificats.com/SymantecSSG4.crt 

#dump the fingerprint 
openssl x509 -noout -fingerprint -sha256 -inform pem -in SymantecSSG4.crt 

I 출력 테스트 툴 내가 없어진보고 된 지문과 일치 확인 : 다음

SHA256 Fingerprint=EA:E7:2E:B4:54:BF:6C:39:77:EB:D2:89:E9:70:B2:F5:28:29:49:19:00:93:D0:D2:6F:98:D0:F0:D6:A9:CF:17 

을 인증서 저장소를 다음과 같이 업데이트했습니다.

update-ca-certificates 
+1

위험이 증가합니다. 중간체의 핵심은 CA가 해킹당한 경우 CA가 해지 할 수 있지만이 호스트는 계속해서이를 신뢰합니다 (여기서는 시만텍과 관련하여 거의있을 법하지도 않음). 서버를 수정하거나 직접 할 수없는 경우 체인이 고장 났음을 관리자에게 알려야합니다. – Peter

+0

좋은 지적입니다 - 이것은 원격 서버가 고정되어있는 동안 클라이언트 측에서 단기 수정이 필요했던 상황이었습니다 (이것은 우리의 통제에서 벗어났습니다) –