Let’s Encrypt SSL 인증서: 2026년에도 무료가 최고다
HTTPS는 2026년에 더 이상 선택이 아닙니다. Chrome은 SSL이 없는 사이트에 “안전하지 않음” 경고를 띄우고, Google 검색 순위에서도 HTTPS가 랭킹 요소로 작동합니다. 과거에는 연간 수만 원짜리 유료 인증서가 필요했지만, Let’s Encrypt가 등장한 이후 누구나 무료로 영구 SSL을 발급받을 수 있습니다.
이 튜토리얼에서는 Nginx와 Apache를 사용하는 VPS에서 Let’s Encrypt 인증서를 발급받고, 자동갱신까지 10분 만에 설정하는 방법을 단계별로 설명합니다. Vultr, DigitalOcean, Hetzner 어떤 VPS에서도 동일하게 적용됩니다.
필수 조건: 도메인 1개, 도메인을 가리키는 VPS 1대, 웹서버(Nginx/Apache). 아직 VPS가 없다면 Vultr 또는 Hetzner로 시작하세요.
1단계: 도메인을 VPS에 연결하기
SSL 발급 전, 도메인이 VPS의 공인 IP를 정확히 가리켜야 합니다. DNS 설정에서 A 레코드를 추가하세요.
| 유형 | 이름 | 값 |
|---|---|---|
| A | @ | 203.0.113.10 (VPS IP) |
| A | www | 203.0.113.10 |
전파까지 최대 수십 분이 걸립니다. 확인:
dig +short yourdomain.com
출력이 VPS IP와 일치하면 다음 단계로.
2단계: Certbot 설치하기
Certbot은 Let’s Encrypt 인증서 발급·갱신을 자동화하는 공식 클라이언트입니다.
Ubuntu / Debian
sudo apt update
sudo apt install certbot python3-certbot-nginx -y # Nginx용
# Apache라면: sudo apt install certbot python3-certbot-apache -y
CentOS / RHEL / Rocky
sudo dnf install epel-release -y
sudo dnf install certbot python3-certbot-nginx -y
3단계: 인증서 발급받기 (Nginx)
Certbot의 Nginx 플러그인을 쓰면 서버 설정까지 자동으로 처리됩니다. Nginx가 실행 중이어야 합니다.
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
첫 실행 시 두 가지를 물어봅니다:
- 이메일 입력: 만료 알림용 (중요)
- 이용약관 동의: Y
- HTTP를 HTTPS로 강제 리다이렉트? → 2번(리다이렉트) 추천
성공하면 다음과 같은 메시지가 나옵니다:
Successfully deployed certificate for yourdomain.com
Congratulations! You have successfully enabled HTTPS
이제 사이트에 HTTPS로 접속되고 자동으로 리다이렉트됩니다.
Apache의 경우
sudo certbot --apache -d yourdomain.com -d www.yourdomain.com
4단계: 인증서 파일 위치 확인
발급된 인증서는 /etc/letsencrypt/live/yourdomain.com/에 저장됩니다.
| 파일 | 용도 |
|---|---|
fullchain.pem |
인증서 + 체인 (웹서버에서 사용) |
privkey.pem |
개인키 (절대 노출 금지) |
chain.pem |
중간 인증서 |
5단계: 자동갱신 설정하기 (가장 중요)
Let’s Encrypt 인증서는 90일마다 만료됩니다. 매번 수동으로 갱신할 필요 없이 Cron/시스템 타이머가 자동 처리하게 설정합니다.
Certbot이 자동으로 설치한 타이머 확인
sudo systemctl status certbot.timer
보통 Certbot 설치 시 자동으로 활성화됩니다. active (waiting)이면 정상입니다.
갱신 테스트 (dry-run)
sudo certbot renew --dry-run
Congratulations, all renewals succeeded가 나오면 자동갱신이 정상 동작합니다. 실제 갱신은 만료 30일 전에 자동 실행됩니다.
갱신 후 웹서버 재시작 자동화
인증서가 갱신돼도 Nginx가 새 파일을 로드하지 않으면 예전 인증서를 계속 씁니다. 이를 방지하려면 deploy-hook을 설정합니다.
sudo systemctl reload nginx
자동화:
echo '0 0,12 * * * root /usr/bin/certbot renew --quiet --deploy-hook "systemctl reload nginx"' | sudo tee /etc/cron.d/certbot
SSL 성능 최적화: A+ 등급 받기
발급받았다고 끝이 아닙니다. Nginx 설정을 튜닝하면 SSL Labs에서 A+ 등급을 받아 보안과 SEO를 동시에 올릴 수 있습니다. Nginx 서버 블록에 추가:
server {
listen 443 ssl http2;
server_name yourdomain.com;
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
# 최신 보안 설정
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 1d;
# HSTS (1년 적용)
add_header Strict-Transport-Security "max-age=31536000" always;
}
설정 적용: sudo nginx -t && sudo systemctl reload nginx
속도 최적화까지 포함한 전체 가이드는 워드프레스 속도 최적화 가이드를 참고하세요.
여러 도메인/서브도메인 한 번에 발급하기
한 인증서로 여러 도메인을 커버하려면 -d를 여러 번 씁니다.
sudo certbot --nginx \
-d yourdomain.com \
-d www.yourdomain.com \
-d api.yourdomain.com \
-d app.yourdomain.com
와일드카드 인증서(*.yourdomain.com)는 DNS 인증이 필요하므로 조금 더 복잡합니다:
sudo certbot certonly --manual --preferred-challenges dns \
-d *.yourdomain.com -d yourdomain.com
DNS TXT 레코드를 추가하라는 지시가 나오면 도메인 제공업체에 추가하면 됩니다.
Let’s Encrypt vs 유료 인증서 (2026년 비교)
| 항목 | Let’s Encrypt | 유료 DV | EV (기업 인증) |
|---|---|---|---|
| 비용 | 무료 | 연 $50~150 | 연 $200~500 |
| 암호화 강도 | 동일 (TLS 1.3) | 동일 | 동일 |
| 발급 속도 | 10초 | 수 분~수 시간 | 수 일 (심사) |
| 유효기간 | 90일 (자동갱신) | 1년 | 1년 |
| Warranty | 없음 | $10,000~ | $1M~ |
| 브라우저 표시 | 자물쇠 아이콘 | 자물쇠 아이콘 | 회사명 (Chrome 제거) |
결론: 개인 블로그, 소규모 비즈니스, 개발 프로젝트라면 Let’s Encrypt가 압도적으로 최적입니다. 암호화 보안 수준은 동일하면서 비용은 0원입니다. EV 인증서의 회사명 표시는 2026년 Chrome에서 사라졌으므로 굳이 비싼 돈을 쓸 이유가 없습니다.
자주 묻는 질문 (FAQ)
Q. Let’s Encrypt 인증서는 신뢰할 만한가요?
네. ISRG가 운영하고 Mozilla·Google·Cisco·EFF 등이 후원하는 공인 인증기관입니다. 모든 주요 브라우저와 기기에 루트 인증서가 내장돼 있어 유료 인증서와 동일하게 신뢰됩니다. 2023년 기준 전 세계 3억 개 이상의 인증서를 발급했습니다.
Q. 90일마다 만료하는데 귀찮지 않나요?
아닙니다. Certbot이 만료 30일 전에 자동갱신하므로 한 번 설정하면 잊어도 됩니다. 오히려 짧은 주기가 키 회전을 빠르게 해 보안에 유리합니다.
Q. Cloudflare를 이미 쓰고 있는데 SSL을 또 발급해야 하나요?
Cloudflare의 Full(Strict) 모드를 쓰면 Origin 서버(VPS)에도 유효한 인증서가 필요합니다. 이때 Let’s Encrypt를 Origin 인증서로 쓰면 됩니다. Cloudflare 설정법은 Cloudflare CDN 설정 가이드를 참고하세요.
Q. 발급 한도(Rate Limit)가 있나요?
있습니다. 도메인당 주 5개 인증서(중복 세트) 한도가 있고, 실패 5회당 1시간 정지 등이 있습니다. 실서비스에서는 --dry-run으로 테스트한 뒤 실제 발급하세요.
Q. 갱신이 실패하면 어떻게 하나요?
Certbot이 등록한 이메일로 만료 경고가 옵니다. sudo certbot renew --force-renewal로 수동 갱신하고, 원인(포트 80 차단, DNS 불일치, 디스크 부족)을 점검하세요. 로그는 /var/log/letsencrypt/에 있습니다.
마무리: 무료 SSL로 사이트 신뢰와 SEO 동시 확보
Let’s Encrypt는 VPS 운영에서 가장 가성비 높은 설정 중 하나입니다. 10분만 투자하면 영구적으로 HTTPS를 유지하면서 유료 인증서와 동일한 보안 수준을 확보합니다. 자동갱신까지 설정하면 관리 부담도 사실상 0입니다.
VPS + Let’s Encrypt 조합으로 웹사이트를 운영하려면 아래 링크에서 가성비 좋은 VPS를 찾아보세요.
관련 가이드: VPS 보안 완벽 가이드 | WordPress용 최고 VPS
관련 글
- Nginx 리버스 프록시 + Let's Encrypt SSL 완벽 가이드: VPS 한 대로 다중 서비스 (2026)
- VPS 보안 완벽 가이드 2026: UFW 방화벽·SSH hardening·SSL 설정부터 무료 취약점 점검까지
- Vultr에 워드프레스 배포하기: 2026년 완벽 튜토리얼 (LEMP + SSL)



















