← 가이드

인증서 발급 공통 가이드 (CSR·Let’s Encrypt·파일 포맷)

신규 도메인 인증서 설치의 첫 단계 — 발급 경로 선택, CSR 생성, 받은 파일 정리까지. 서버별 설치는 각 서버 가이드로 이어진다.

신규 도메인에 인증서를 붙이는 작업은 두 단계다: 발급(이 문서) → 서버별 설치. 발급이 끝나면 Nginx · Apache · Tomcat · IIS · WebtoB 각 가이드의 “신규 도메인 인증서 설치” 절로 이어진다.

발급 경로 선택

경로 비용 적합한 경우
Let’s Encrypt (무료) 0원, 90일 주기 자동갱신 대부분의 웹 서비스. 자동갱신 구성 가능하면 1순위
구매 (DV/OV/EV) 연 단위 계약 (인증서 1장은 최대 200일 — 계약 기간 중 재발급) 자동갱신이 불가능한 환경(WebtoB 수동 운영 등), OV/EV 요구

A. Let’s Encrypt — certbot

# 웹서버가 이미 80 포트로 서비스 중이면 (webroot 방식)
sudo certbot certonly --webroot -w /var/www/html -d 새도메인 -d www.새도메인

# 와일드카드가 필요하면 DNS-01 (DNS 제공자 플러그인 필요)
sudo certbot certonly --dns-cloudflare -d '*.새도메인' -d 새도메인

발급 결과는 /etc/letsencrypt/live/새도메인/:

파일 용도
fullchain.pem 서버 인증서 + 중간 인증서 — 대부분의 서버 설정은 이 파일
privkey.pem 개인키
cert.pem / chain.pem leaf 단독 / 체인 단독 — 구버전 Apache 등 분리 지정용

B. 구매 인증서 — CSR 생성

# 개인키 + CSR 생성 (RSA 2048)
openssl req -new -newkey rsa:2048 -nodes \
  -keyout 새도메인.key -out 새도메인.csr \
  -subj "/C=KR/ST=Seoul/O=회사명/CN=새도메인"

# CSR 내용 확인 후 발급 기관에 제출
openssl req -in 새도메인.csr -noout -text | head -20

발급 기관이 주는 파일은 보통 서버 인증서 + 중간(체인) 인증서 + 루트다. 서버에는 서버 인증서와 중간 인증서가 필요하고, 루트는 배포하지 않는 것이 정상이다 (왜인지는 체인 구조 글 참조).

파일 포맷 정리 (받은 파일이 제각각일 때)

# PEM 인지 확인 (-----BEGIN 으로 시작하면 PEM)
head -1 받은파일.crt

# DER → PEM
openssl x509 -inform der -in 받은파일.cer -out 도메인.crt.pem

# fullchain 만들기 (서버 인증서 + 중간 순서)
cat 도메인.crt.pem 중간.crt.pem > fullchain.pem

# IIS 용 PFX (개인키 포함)
openssl pkcs12 -export -out 도메인.pfx -inkey 도메인.key -in fullchain.pem

# 개인키-인증서 짝 확인 (해시 일치해야 함)
openssl x509 -in 도메인.crt.pem -noout -pubkey | openssl sha256
openssl pkey -in 도메인.key -pubout | openssl sha256

다음 단계 — 서버별 설치