[Security] Certificate Signing Request (CSR)?

간단 요약)

인증서(certificate)를 만드려면 이 인증서를 발급 하고자 하는 주체가 있어야 한다.
이 주체에 대한 정보를 적어 인증서 발급 요청(상위로)을 하는 것을 CSR이라 한다.


* CSR 내용에 대해서는 아래 참조.
Common Name (CN)
(e.g. *.example.com
www.example.com
mail.example.com)

The fully qualified domain name (FQDN) of your server.

Organization (O)

The legal name of your organization. Do not abbreviate and include any suffixes, such as Inc., Corp., or LLC.
For EV and OV SSL Certificates, this information is verified by the CA and included in the certificate.
Organizational Unit (OU)

The division of your organization handling the certificate.
City/Locality (L)

The city where your organization is located. This shouldn’t be abbreviated.
State/County/Region (S)

The state/region where your organization is located. This shouldn't be abbreviated.
Country (C) The two-letter code for the country where your organization is located.
Email Address An email address used to contact your organization.

이 중에서도 CN에 대해 말하고자 한다.
크롬이나 파이어폭스에서 아래와 같은 에러를 본적이 있는가? (없음말고...)

* 크롬 : ERR_CERT_COMMON_NAME_INVALID
* 파폭 : ssl_error_bad_cert_domain

https 요청시 host 이름이 예를 들어 this.is.example.com 이라고 하자.
이때 이 host 이름과 CN의 이름이 정확히 일치하지 안아(ex: is.example.com) 생기는 오류이다. CN을 host에 맞추든 url 주소 CN에 맞추든 두 개가 정확히 맞으면 정상 동작하게 된다.

그러면 내가 산 domain example.com으로 subdomain 여러 개를 운영하고자 하면 인증서도 갯수대로 있어야 하나?

아니~~이를 위해 Subject Altinative Name(SAN) 이란게 있다. SAN에 *.example.com, *.is.example.com 등과 같이 wildcard로 domain을 추가하면 해당 domain도 CN과 같은 역할을 하게 된다.

참고로 AWS의 ACM을 사용중인데 인증서를 만들때 additional domain으로 추가해 주면 여러 subdomain에서 하나의 cert로 이용이 가능하다.


댓글

이 블로그의 인기 게시물

[Protocol] WIEGAND 통신

Orange for Oracle에서 한글 깨짐 해결책

[URL] 대소문자를 구분하나?