도메인 이름이 아닌 IP 주소에 대한 SSL 인증서를 가질 수 있습니까?


282

내 사이트가 요청시 불필요한 쿠키를 피하고 추가 DNS 요청을 피하기 위해 정적 콘텐츠 http://192.0.2.2/...와 같은 URL을 사용하기를 원합니다 https://192.0.2.2/....

이 목적으로 SSL 인증서를 얻는 방법이 있습니까?


3
이 질문 은 흥미로울 수 있습니다. IP 주소는 주제 DN의 CN이 아닌 IP 주소 유형의 SAN 항목에 있어야합니다.
Bruno

14
LetsEncrypt는 그렇게하지 않습니다. "" ""xxxx는 IP 주소입니다. Let 's Encrypt 인증 기관은 베어 IP 주소에 대한 인증서를 발급하지 않습니다. "" "
kommradHomer

1
C / A 브라우저 포럼은 일련의 발급 정책을 제공합니다. 분명히 브라우저가 뒤 따릅니다. CA / B는 더 이상 IP 주소를 허용하지 않습니다. 또 다른 발행 정책 세트는 IETF에 의해 유지 보수됩니다. IETF의 PKI를 PKIX라고합니다. PKIX는 IP 주소를 허용합니다. PKIX는 cURL 및 Wget과 같은 대부분의 [무료?] 소프트웨어가 뒤 따릅니다. 1.1.1.1에 대한 인증서를 알 수 없습니다 . CA / B 정책에 따라 금지되어야합니다. CA / B가 정책을 변경했을 수 있습니다.
jww

답변:


170

이 답변 에 따르면 가능하지만 거의 사용되지 않습니다.

그것을 얻는 방법에 관해서는 : 나는 단순히 당신이 선택한 공급자와 하나를 주문하고 주문하는 동안 도메인 대신 IP 주소를 입력하는 경향이 있습니다.

그러나 DNS 조회를 피하기 위해 IP 주소로 사이트를 운영하는 것은 나에게 불필요한 미세 최적화처럼 들리지 않습니다. 당신은 최고의에서 몇 밀리 초를 저장하며, 즉 방문당 DNS 결과는 여러 수준에서 캐시로.

귀하의 아이디어가 최적화 관점에서 의미가 있다고 생각하지 않습니다.


9
AFAIK, 분당 1 회 (Firefox DNS 캐시), IE의 경우 30 분당 1 회. 이것은 DNS 레코드의 TTL과 다릅니다. 또한 도메인 및 NS 서버 (첫 번째로 해결 해야하는 속도)에 따라 약 20ms가 걸립니다. 또한 각 정적 요청에 대해 긴 쿠키 (내 인증 + Google Analytics 쿠키)를 피하고 싶습니다. 따라서 별도의 도메인을 구매하는 대신 IP를 사용하는 것이 좋습니다. BTW, stackoverflow, basecamphq는 정적 콘텐츠에 별도의 도메인을 사용합니다. 대신 IP를 사용하면 불필요한 DNS 요청도 제거됩니다.
Evgenyt

12
나는 쿠키에 대한 당신의 요점을 절대적으로 봅니다, 당신은 완전히 옳습니다. 그러나 SSL IP로 전환하여 몇 ms의 DNS 조회 사운드를 저장하는 것보다 더 번거 롭습니다. 또한 공급자를 변경해야하는 경우 IP를 가져 오는 데 문제가있을 수 있습니다. 가능하지 않을 수도 있습니다. 도메인을 이동하는 것이 훨씬 쉬우 며 인증서를 반으로 쉽게 이동할 수 있어야합니다.
Pekka

2
Google의 Page Speed ​​도구는 항상 "기본 문서 (xxxx.com)와 동일한 호스트에서 다음 JavaScript 리소스를 제공하거나 가능한 경우 이러한 리소스의로드를 연기합니다"라고 제안합니다. 나는 Page Speed ​​도구를 성경으로 평가하지 않지만 어쨌든 DNS 최적화가 발명되지 않았다는 것을 의미합니다. 가능한 경우 Page Speed ​​체크리스트를 녹색으로 만들려고합니다.
Evgenyt

11
@Evgenyt : DNS 조회 때문이라고 생각하지 않습니다. 이것은 언급 된 것처럼 성능 문제가 될 수없는 많은 수준에서 캐시됩니다. 브라우저가 요청을 파이프 라인 할 수있게하는 것 같습니다. 호스트에 대한 연결을 열린 상태로 유지하여 추가 연결 설정을 피하십시오.
vdstw

5
답변에 동의합니다. 또한 이러한 구성에 문제가 있음을 발견했습니다. IP 주소가 인증서 대상으로 사용되는 경우 Android OS (4.4,5.0; 4.0,4에서 작동)의 Chrome 브라우저 (39.0.2171.93)는 오디오 파일을 재생하지 않습니다. 우리는 테스트 환경에서 이러한 구성을 사용했지만 도메인 이름을 사용하기 시작합니다.
ENargit

58

대답은 공개 IP 주소 인 한 가능합니다.

예약 된 IP 주소로 인증서를 발급 할 수 없으며, 예약 된 IP 주소로 이전에 발급 된 모든 인증서는 2016 년 10 월 1 일부터 해지되었습니다.

CA Browser 포럼에 따르면 IP 주소가 commonNamesubjectAltName필드 에 모두 있지 않으면 IP 주소 인증서와의 호환성 문제가있을 수 있습니다 . 이는 Windows 10 이전의 Windows OS, 특히 RFC 5280과 일치하지 않는 레거시 SSL 구현 때문입니다.


출처 :

  1. 인증서 CA 브라우저 포럼의 IP 주소에 대한 지침
  2. 기준 요구 사항 1.4.1 CA 브라우저 포럼
  3. 언젠가는 일반적인 이름 unmitigatedrisk.com
  4. RFC 5280 IETF

참고 :이 답변의 이전 버전에서는 2016 년 10 월 1 일에 모든 IP 주소 인증서가 해지 될 것이라고 명시했습니다. 오류를 지적한 Navin에게 감사합니다.


5
사실은 아니지만 globalsign은 여전히 ​​IP 인증서를 발급합니다. 인증 기관 / 브라우저 포럼은 인증서에서 개인 IP를 보는 것을 좋아하지 않지만 공개 IP에 대해서는 아무 것도 없습니다.
Navin

1
내 정보가 최신 정보가 아닌 것 같습니다. 더 자세히 살펴보고 정확하다면 편집하겠습니다.
regdoug

사실은 아닙니다, 1.1.1.1을 보십시오 2019 년에 ip 용 SSL 인증서를 받고 DigiCert로부터 2021 년까지 유효합니다.
청동 남자

@bronzeman은 공개 IP 주소이므로 인증서를 얻을 수 있습니다. 인증서를 발급 할 수없는 유일한 주소는 en.wikipedia.org/wiki/Reserved_IP_addresses
regdoug

RFC 5280에 따라 @DustWolf, "subjectAltName 확장자에 iPAddress가 포함 된 경우 [RFC791]에 지정된대로 주소를"네트워크 바이트 순서 "로 옥텟 문자열에 저장해야합니다. ... IP 버전 4의 경우 ..., 8 진수 문자열은 정확히 4 개의 8 진수를 포함해야합니다. " 요컨대, subjectAltName 필드에서 서브넷을 사용할 수 없습니다
regdoug

31

내가 생각하는 대답은 '예'입니다. 예를 들어이 링크 를 확인하십시오 .

퍼블릭 IP 주소에 SSL 인증서 발급

SSL 인증서는 일반적으로 " https://www.domain.com " 과 같은 FQDN (정규화 된 도메인 이름)에 발급됩니다 . 그러나 일부 조직에서는 공개 IP 주소로 발급 된 SSL 인증서가 필요합니다. 이 옵션을 사용하면 CSR (Certificate Signing Request)에서 공용 IP 주소를 공통 이름으로 지정할 수 있습니다. 그런 다음 발급 된 인증서를 사용하여 공개 IP 주소 (예 : https://123.456.78.99 ) 와 직접 연결을 보호 할 수 있습니다 .


5
정적 개인 IP에서도 작동합니까? LAN을 좋아하세요?
Mr Bonjour

@Klaus Byskov Pedersen이 작업을 수행하는 방법에 대한 리소스를 제공해 주시겠습니까?
reyhane

2
@ShivSingh 어떤 소스? 잘 알려진 CA가 개인 IP 주소로 인증서를 발급한다고 생각하지 않습니다.
Franklin Yu

22

네. Cloudflare는이를 DNS 지침 홈페이지 ( https://1.1.1.1)로 사용합니다.


8
이것은 보이는 것이 아닙니다. 인증서를 검사 할 경우이 Common Name필드는 cloudflare-dns.com1.1.1.1아래에만 표시됩니다 Certificate Subject Alt Name.
bitinerant

3
@bitinerant 주제 대체 이름이 있으면 공통 이름이 무시됩니다 . 실제로 공통 이름은 더 이상 사용되지 않으며 SAN 만 실제로 관련됩니다.
Yogu

3

C / A 브라우저 포럼은 인증서에서 유효하지 않은 것과 유효하지 않은 것과 CA가 거부해야 할 것을 설정합니다.

그들에 따르면 공개적으로-신뢰할 수있는 인증서의 발급 및 관리를위한 기본 요구 사항 문서 CA는 2015 년부터 일반 이름 또는 일반 대체 이름 필드에 예약 된 IP 또는 내부 이름이 포함 된 인증서를 발급하지 않아야합니다. 여기서 예약 된 IP 주소는 IP입니다. IANA가 모든 NAT IP를 포함하여 예약 된 것으로 표시하고 내부 이름은 퍼블릭 DNS에서 확인되지 않는 이름입니다.

공용 IP 주소를 사용할 수 있습니다 (그리고 기본 요구 사항 문서는 신청자가 IP를 소유하도록 CA가 수행해야하는 검사 종류를 지정합니다).


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.