면책조항: 저는 SSL을 처음 사용하는 사람으로서 다소 혼란스럽고 빠른 답변이 필요합니다.
내 "키 저장소"가 손상될 위험이 있다는 말을 듣고 이를 조사하고 이해하려고 노력하고 있습니다. 저는 아치 리눅스를 사용하고 있습니다.
여기에서 재미있는 내용을 많이 볼 수 있지만 /etc/ssl/certs
(질문 #1은 "이것이 '키 저장소'입니까?"라고 생각합니다)) 모든 항목을 통과 readlink -f
하고 중복 항목을 제거했을 때 그 목록이 훨씬 더 합리적이 되었습니다. 내 인증서가 모두 에서 가져온 것 같습니다 /usr/share/ca-certificates/
. 대부분은 mozilla/
하위 디렉터리에 있지만 다음과 같은 다른 하위 디렉터리도 있습니다.
brazil.gov.br/
cacert.org/
debconf.org/
gouv.fr/
signet.pl/
spi-inc.org/
나의 가장 큰 문제는 의심스러운 인증서를 발견하는 방법을 모른다는 것입니다. 단순히 이러한 사이트로 이동하는 것은 직관적이지 않은 것 같습니다(즉, 처음에 내 키 저장소를 잠재적으로 손상시킬 수 있는 동일한 악성 코드가 있을 수 있음).
ca-certificates
내 패키지 관리자가 설치한 패키지입니다. 그냥 제거한 다음 다시 설치할 수 있나요? 그렇게 해도 안전한가요?
업데이트:
이 조사를 촉발한 문제는 인식할 수 없는 VeriSign 인증서였습니다. 특히, 나는 내가 갖고 있지도 않고 신뢰하지도 않는(그러나 아마도 그래야만 할) 인증서로 서명을 받았습니다.
VeriSign 사이트에서 다양한 인증서가 나열된 페이지를 찾았습니다. http://www.verisign.com/support/roots.html ...그래서 저는 사이트에 있는 인증서와 비교하여 제가 설치한 인증서의 지문을 확인하기 시작했습니다.
for cert in /etc/ssl/certs/Veri[Ss]ign*; do
printf "%s: " $cert
openssl x509 -noout -in $cert -fingerprint
done
결과: 하나가 일치하지 않습니다. "VeriSign Class 1 Public Primary CA"도 중요한 것 같습니다.
합병증: 내 패키지 관리자가 기존 인증서 체크섬이 괜찮다고 알려줍니다. 게다가 내가 갖고 있어야 할 증명서의 지문도 일치한다.어느 것도 아니다내가 갖고 있는 것도 아니고 VeriSign 사이트에 나열된 것도 아닙니다.
답변1
CA가 최종 엔터티(예: 웹 서버)에 발급한 인증서는 일반적으로 중간(체인) CA를 통해 발급됩니다. 여기에는 몇 가지 이유가 있습니다. CA가 처음 이런 방식으로 인증서 발급을 시작할 때 서버 운영자가 중간 CA 설치에 실패하여 루트 인증서가 모두 있는 상황에서 체인 인증서의 캐시된(또는 설치) 사본이 없는 사용자를 방문하는 것은 매우 일반적이었습니다. 및 EE 인증서가 있지만 연결할 방법이 없습니다. 오늘날에는 이러한 문제가 훨씬 덜 일반적이지만 귀하가 직면하고 있는 문제일 수 있습니다. 공용 서버를 방문하여 발생하는 문제라면 제가 직접 찾아보겠습니다. 언제든지 확인할 수 없는 EE 인증서의 issuerName을 살펴보고 VeriSign 사이트에서 일치하는 '중간 CA' 인증서를 찾을 수 있는지 확인할 수 있습니다. 그렇다면 중간 및 루트가 있는 중간입니다. 이 문제를 수동으로 진행하는 경우 인증서 유효성 검사도 수행하는 것이 좋습니다. OCSP는 모든 CA에서 VeriSign에 의해 지원됩니다... 대부분의 (모두?) 프리미엄 CA는 이러한 실시간/거의 실제 형식을 통해 지원됩니다. 시간 유효성 검사... 그렇지 않으면 다음으로 가장 좋은 것은 CRL입니다.