developer tip

SSLCACertificateFile과 SSLCertificateChainFile의 차이점

copycodes 2020. 10. 30. 08:15
반응형

SSLCACertificateFile과 SSLCertificateChainFile의 차이점


내 웹 서버에 SSL 페이지를 제공하는데 질문이 있습니다. SSLCACertificateFile과 SSLCertificateChainFile의 차이점은 무엇입니까?

SSLCertificateChainFile을 사용할 때 일본 휴대폰 브라우저에서 경고를 받았는데, PC 브라우저 (예 : IE, FF)를 사용하면 문제가 없었습니다. 반면에 SSLCACertificateFile은 두 브라우저 모두에서 문제를 일으키지 않았습니다.

브라우저가 Apache에 연결할 때 차이가 있습니까?


SSLCertificateChainFile은 올바른 선택 옵션 이었지만이 지시문은 Apache 2.4.8부터 폐기되었습니다 . 이 지시문은 연결된 모든 클라이언트에 인증서와 함께 나열된 파일을 전송하도록했습니다.

SSLCACertificateFile (이하 "CACert")은 SSLCertificateChainFile (이하 "Chain")을 대체하며 추가로 문제의 인증서를 사용하여 클라이언트 인증서 에 서명하는 것을 허용합니다 . 이러한 종류의 인증은 매우 드물며 (적어도 현재로서는) 사용하지 않는 경우 IMHO가 Chain 대신 CACert를 사용하여 기능을 강화할 이유가 없습니다. 반대로 추가 기능에 해가 없다고 주장 할 수 있으며 CACert는 모든 경우를 처리합니다. 두 인수가 모두 유효합니다.

말할 필요도없이, 인증서 공급 업체에 요청하면 그들은 항상 CACert over Chain을 강요 할 것입니다. 그 이유는 그들이 잠재적으로 당신을 판매 할 수있는 또 다른 것을 제공하기 때문입니다 (클라이언트 인증서). ;)


실제로 둘 다 유효한 옵션 일 수 있습니다.

SSLCertificateChainFile을 사용하여 공용 인증 기관 (VeriSign, RapidSSL 등)에서 서명 한 인증서를 게시합니다.

SSLCACertificateFile을 사용하여 일부 선택된 사용자에게 배포 할 수있는 클라이언트 인증서를 발급 할 수있는 '개인'CA를 제공합니다. 이러한 client인증서는 실제로 인증에 유용하며 (기본 암호 인증과 비교할 때) 일반적으로 공용 CA에서 배포 할 필요가 없습니다 (따라서 비용을 절약 할 수 있음).

따라서 웹 사이트의 일부에 보안 인증을 추가하려면 다음을 수행하십시오.

<Directory /var/www/html/authorized>
  SSLVerifyClient require
  SSLVerifyDepth  5

  SSLOptions +StrictRequire
  SSLUserName SSL_CLIENT_S_DN_CN
  SSLRequireSSL
</Directory>

간단히 설명하기 위해 SSLUserName SSL_CLIENT_S_DN_CN인증 된 사용자 이름을 인증서의 CommonName으로 설정하고 전체 x509 '/ OU = Foo / CN = ...'제목을 설정합니다.

참고 URL : https://stackoverflow.com/questions/1899983/difference-between-sslcacertificatefile-and-sslcertificatechainfile

반응형