> Java > java지도 시간 > SSL 인증서 서버 이름 확인은 어떻게 작동합니까?

SSL 인증서 서버 이름 확인은 어떻게 작동합니까?

Linda Hamilton
풀어 주다: 2024-12-14 12:13:20
원래의
944명이 탐색했습니다.

How Does SSL Certificate Server Name Resolution Work?

SSL 인증서 서버 이름 확인 디코딩

SSL 인증서 확인을 이해하는 것은 보안 통신을 설정하는 데 중요합니다. 귀하의 질문을 탐색하고 포괄적인 답변을 제공해 드리겠습니다.

SSL 인증서에 대한 서버 이름 확인

RFC 2818 및 RFC 6125는 SSL 인증서에 대한 호스트 이름 확인을 정의합니다. "dNSName" SAN(주체 대체 이름)이 없으면 CN(일반 이름) 필드가 사용됩니다. 그러나 CN 사용은 더 이상 사용되지 않으며 SAN이 선호됩니다.

브라우저 동작과 Java의 메커니즘

브라우저는 종종 CN 기반 서버 이름을 다르게 처리하여 다음과 같은 경우에도 연결을 허용합니다. CN이 도메인과 일치하지 않습니다. 반면 Java는 RFC를 엄격하게 준수하여 SAN 또는 일치하는 CN만 허용합니다.

Keytool을 사용하여 대체 이름 추가

Java의 keytool에는 이제 "- ext" 옵션을 사용하여 인증서에 SAN을 추가할 수 있습니다. 원하는 대체 이름을 포함하려면 "-ext san=dns:www.example.com" 또는 "-ext san=ip:10.0.0.1"을 사용하세요.

대안으로 OpenSSL

keytool을 사용하지 않으려면 OpenSSL을 사용하면 됩니다. openssl.cnf를 수정하거나 "OPENSSL_CONF" 환경 변수를 설정하면 인증서에서 SAN을 요청하도록 OpenSSL을 구성할 수 있습니다.

OpenSSL 구성 예시

openssl에서. cnf에서 "[req]" 및 "[v3_req]" 아래에 다음을 추가합니다. 섹션:

[req]
req_extensions = v3_req

[ v3_req ]
subjectAltName=IP:10.0.0.1
# or subjectAltName=DNS:www.example.com
로그인 후 복사

대체 환경 변수 트릭

또는 환경 변수를 설정하여 SAN을 지정할 수 있습니다. 자세한 내용은 http://www.crsr.net/Notes/SSL.html을 참조하세요.

위 내용은 SSL 인증서 서버 이름 확인은 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿