HTTPS는 모던 웹의 필수 — 사용자 데이터 암호화 + 검색 순위 가산점 + 브라우저 경고 회피.
옛날엔 SSL 인증서가 비쌌지만 Let's Encrypt가 「무료 + 자동」으로 만듦.
Let's Encrypt.
2014년 시작된 비영리 인증 기관(CA).
90일 만료의 짧은 인증서를 자동 갱신.
「전 세계 모든 사이트 HTTPS화」가 목표 — 거의 실현됨(2024 현재 80%+).
Certbot.
Let's Encrypt의 표준 클라이언트.
apt install certbot python3-certbot-nginx.
sudo certbot --nginx -d example.com — nginx 자동 설정 + 인증서 발급 + redirect 추가까지 한 명령에.
동작.
1) Certbot이 「내가 example.com 소유자」 증명(HTTP 또는 DNS 검증).
2) Let's Encrypt가 90일짜리 인증서 발급.
3) /etc/letsencrypt/에 저장.
4) nginx 설정에 ssl_certificate 자동 추가.
5) cron 또는 systemd timer로 자동 갱신.
활용.
sudo certbot renew — 수동 갱신(보통 자동).
sudo certbot certificates — 발급된 인증서 목록.
와일드카드 인증서(*.example.com)는 DNS 검증 필요 — sudo certbot --manual --preferred-challenges dns.
거의 모든 모던 웹 사이트의 첫 단계가 「Let's Encrypt 적용」.
한 줄 요약
Let's Encrypt는 무료·자동 SSL 인증서.
Certbot으로 nginx 자동 설정 한 명령.
90일 만료, 자동 갱신.
HTTPS 표준화의 결정적 도구.
더 알아볼 것
- DNS-01 challenge — 와일드카드
- ACME 프로토콜
- Caddy — 자동 HTTPS 더 쉬움