CSR 생성기

생성 CSR
다음

TLS 인증서를 받으려면 인증 기관(CA)에 인증서 서명 요청(CSR)을 제출해야 합니다: 도메인, 공개 키, 그리고 그에 대응하는 개인 키를 보유하고 있다는 증명입니다. 이 생성기는 지정한 필드와 키 크기로 PEM 형식의 CSR과 RSA 개인 키를 브라우저에서 생성합니다. 개인 키는 페이지를 벗어나지 않지만, 서버에는 아무것도 저장되지 않으므로 탭을 닫기 전에 반드시 다운로드하세요.

CSR 생성 방법

  1. 1

    common name(CN) 입력

    인증서가 보호할 기본 호스트 이름, 예: `www.example.com`. `*.example.com` 같은 와일드카드도 허용됩니다.

  2. 2

    조직 필드 입력(선택)

    O(조직), OU, L(도시), ST(주), C(국가 코드)와 선택적 이메일 주소. 도메인 검증 인증서는 대부분 무시하지만 OV/EV 인증서는 필요로 합니다.

  3. 3

    키 크기 선택

    RSA 2048(기본값, 범용 호환) 또는 더 강력한 RSA 3072와 RSA 4096.

  4. 4

    두 파일 모두 다운로드

    `.csr`은 CA에 제출하고 `.key`는 서버에 보관합니다. 키를 안전하게 보관하세요: 잃어버리면 처음부터 다시 해야 합니다.

생성되는 것

두 개의 PEM 파일:

example.csr(공개, CA에 제출):

-----BEGIN CERTIFICATE REQUEST-----
MIIC...
-----END CERTIFICATE REQUEST-----

example.key(비공개, 서버에 보관):

-----BEGIN PRIVATE KEY-----
MIIE...
-----END PRIVATE KEY-----

CSR은 소유 증명으로 개인 키로 서명됩니다. CA가 인증서를 발급하면 인증서의 공개 키는 CSR의 키와 일치하고, 그 키는 서버의 개인 키와 일치합니다.

이 생성기는 입력한 common name만 포함하고 SAN(주체 대체 이름) 확장이 없는 CSR을 만듭니다. 인증서가 여러 호스트 이름을 커버해야 한다면 CA의 도구를 사용하세요: Let’s Encrypt 같은 ACME 클라이언트가 요청을 만들어 주고, 대부분의 CA 웹 양식은 제출 시 추가 이름을 덧붙여 줍니다.

인증서 유형별 필드 요구 사항

필드 DV 인증서 필요? OV/EV 인증서 필요?
common name(CN)
조직(O) 아니요 예, 확인됨
조직 단위(OU) 선택 선택
지역(도시) 선택 예, 확인됨
주/도 선택 예, 확인됨
국가(2자리) 권장 예, 확인됨
이메일 주소 선택 선택

Let’s Encrypt와 대부분의 자동 DV 발급자는 common name만 확인합니다. OV/EV 인증서를 발급하는 기업용 CA는 조직 정보를 사업자 등록 정보와 대조해 확인합니다.

키 크기 선택

키 크기 장점 단점
RSA 2048 범용 호환, 빠름 보안 여유가 작음
RSA 3072 더 강력, 여전히 범용 생성과 핸드셰이크가 느림
RSA 4096 가장 강력, 여전히 범용 가장 느리고 가장 큼

공개 웹 서버에는 RSA 2048이 안전한 기본값입니다. 더 큰 보안 여유를 원하고 느린 키 생성, 핸드셰이크, 더 큰 인증서를 받아들일 수 있다면 3072 또는 4096비트를 선택하세요.

CSR이 틀리기 쉬운 부분

  • 인증서가 호스트 이름을 커버하지 않음: 인증서가 방문한 정확한 이름을 커버하지 않으면 브라우저에 “NET::ERR_CERT_COMMON_NAME_INVALID” 오류가 표시됩니다. common name은 www를 사용한다면 그것을 포함한 전체 호스트 이름과 일치해야 합니다. 이 생성기는 CN 하나만 담은 요청을 만들므로 추가 이름이 필요하면 CA의 도구를 사용하세요.
  • 와일드카드 제한: 와일드카드 *.example.com은 서브도메인 한 단계만 일치합니다. api.v2.example.com에는 일치하지 않습니다.
  • 에이펙스와 와일드카드는 다른 이름: *.example.comexample.com 자체를 커버하지 않습니다. 인증서에 둘을 별도의 이름으로 넣어야 합니다.
  • IP 주소: 대부분의 공개 CA는 더 이상 IP 주소용 인증서를 발급하지 않으므로 호스트 이름을 사용해야 합니다.

생성 후

  1. 개인 키를 안전하게 보관하세요. 권한 0600, 웹 서버 사용자 소유.
  2. CSR을 CA의 웹 양식이나 CLI 도구에 붙여넣으세요(ACME를 통한 Let’s Encrypt는 보통 자동으로 처리합니다).
  3. 서명된 인증서(및 중간 체인)를 받으세요.
  4. 인증서 체인과 개인 키를 모두 서버에 설치하세요.
  5. SSL 검사기로 확인하세요.

자주 묻는 질문

아니요. 키 생성은 전적으로 브라우저에서 이루어집니다. 페이지는 키를 서버에 저장하지 않습니다. 키 파일을 즉시 다운로드하세요. 탭을 닫으면 사라집니다.

대부분의 공개 웹사이트에는 RSA 2048이 안전한 범용 기본값이며 생성도 빠릅니다. 더 큰 보안 여유를 원하고 키 생성과 핸드셰이크가 느려져도 된다면 3072 또는 4096비트를 선택하세요.

네. common name에 *.example.com을 사용하세요. 와일드카드는 서브도메인 한 단계만 일치하며, 대부분의 DV 발급자는 와일드카드 인증서에 (HTTP가 아닌) DNS 검증을 요구한다는 점을 기억하세요.

CSR은 요청입니다. “이 호스트 이름들에 대해 이 공개 키에 서명해 주세요”라는 뜻입니다. 인증서는 서명 후 CA가 돌려주는 것입니다. CSR은 수명이 짧고 서버에 설치되지 않으며, 실제로 TLS를 제공하는 것은 인증서입니다.

관련 도구