신뢰 저장소에 수동으로 설치된 SSL/TLS 중간 CA 인증서를 덮어쓰나요?

신뢰 저장소에 수동으로 설치된 SSL/TLS 중간 CA 인증서를 덮어쓰나요?

해당 OS에 2개의 CA 인증서(루트 CA 1개와 관련 중간 CA 1개)를 추가했습니다.신탁 가게(/etc/ssl/certsSuSE 11에서는) OS의 신뢰 저장소에서 제공되지 않았기 때문입니다(그리고 리포지토리에 없기 때문에 아마도 결코 제공되지 않을 것입니다).

최근 이 두 인증서는 자동 업데이트 후에 사라졌으며, 이로 인해 클라이언트가 더 이상 TLS를 통해 연결할 수 없게 되었습니다.

돌이켜보면 우리가 항목을 평소대로 다시 해싱했는지 확실하지 않습니다. 즉,

    # c_rehash /etc/ssl/certs

재해시를 수행하지 않은 경우: 이것이 업데이트 중에 해당 인증서가 삭제된 이유였을까요?

아니면 인증서를 신뢰 저장소에 직접 추가하면 항상 인증서를 잃어버릴 위험이 있습니까(문제의 시스템에는 openssl 및 mozilla-nss라는 두 개의 SSL 라이브러리가 있습니다)?

답변1

트러스트 앵커 저장소에는 하위 CA를 추가하지 않습니다. 루트 CA(trust-anchor)만 명시적으로 신뢰하고 해당 루트 CA 또는 해당 루트의 하위 CA가 서명한 모든 인증서를 암시적으로 신뢰합니다.

최종 엔터티와 신뢰 앵커 사이에 체인을 구축할 수 없는 경우 최종 엔터티가 자신과 신뢰 앵커 사이에 모든 인증서를 제공하는지 확인하세요. 보다RFC 5256 섹션 7.4.2, 특히 certificate_list; 이는 모든 인증서(선택적으로 루트 포함)가 TLS 핸드셰이크에 제시되어야 함을 나타냅니다.

여담으로, 인증서에 대한 URL이 AIA 확장에 지정된 경우 Microsoft 클라이언트는 누락된 하위 CA 인증서를 다운로드할 수 있습니다. Mozilla Firefox와 같은 다른 회사는 사용자 개인 정보 보호를 정당화하면서 해당 확장을 사용하지 않습니다.

하위 CA를 명시적으로 신뢰하는 경우 클라이언트가 인증서 해지를 확인한다는 보장은 없습니다. 나중에 하위 CA가 손상되어 루트 CA에 의해 취소되더라도 클라이언트는 계속해서 이를 신뢰하게 될 것입니다. 구현에 따라 다릅니다.

관련 정보