사전 조건
- 도메인 A 레코드가 서버 IP를 가리키고 있어야 함
- 포트 80, 443 열려 있어야 함
Certbot 설치
Bash
sudo apt install -y certbot python3-certbot-nginx인증서 발급
Bash
sudo certbot --nginx -d example.com -d www.example.comcertbot이 자동으로 Nginx 설정에 SSL 블록과 HTTP → HTTPS 리다이렉트를 추가합니다.
수동 Nginx 설정
Bash
sudo certbot certonly --nginx -d example.comNginx
server {
listen 443 ssl http2;
server_name example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
ssl_prefer_server_ciphers off;
ssl_session_cache shared:SSL:10m;
ssl_stapling on;
ssl_stapling_verify on;
location / {
proxy_pass http://127.0.0.1:3000;
}
}
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}자동 갱신 (90일 유효기간)
Bash
systemctl status certbot.timer
sudo certbot renew --dry-run와일드카드 인증서
Bash
sudo certbot certonly \
--manual \
--preferred-challenges dns \
-d "*.example.com" \
-d example.com편집 안내 · Editorial Note
AI 도구가 초안 작성에 사용될 수 있습니다. 명령어의 실행 여부와 검증 환경은 각 가이드에 기재된 근거를 확인하세요. 적용 전 사용 중인 버전의 공식 문서를 확인하고, 오류는 이메일로 알려주세요. 이메일로 제보
질문 & 답변 (Q&A)
이 가이드에 대해 궁금한 점을 질문해보세요. 확인 후 답변드립니다.