certbot — 인증서 발급·갱신
Linux / 웹 서버 운영 / certbot.html
💬 "certbot 명령어"
certbot은 무료 인증서를 발급·갱신합니다. 실무에서는 갱신 자동화 상태 확인이 핵심입니다.
renew --dry-run으로 갱신이 실제로 성공할지 미리 검증합니다.
- 개념: ACME 프로토콜로 인증서를 발급/갱신합니다.
- renew: 만료 임박 인증서를 갱신합니다.
- timer: systemd 타이머로 자동 갱신이 돌아갑니다.
- dry-run: 실제 갱신 없이 성공 가능성만 검증합니다.
자주 쓰는 옵션
| 옵션 | 설명 |
|---|---|
renew | 만료 임박 인증서 갱신 |
--dry-run | 실제 발급 없이 갱신 테스트 |
certificates | 관리 중인 인증서와 만료일 목록 |
--nginx / --webroot | 검증 방식(플러그인) 지정 |
필수 명령어 조합 3가지
certbot certificates— 인증서 목록과 만료일 확인certbot renew --dry-run— 자동 갱신이 성공하는지 검증systemctl list-timers | grep certbot— 자동 갱신 타이머 확인
💬 "이걸 알림 자동화에 연결하는 예시 알려줘"
실제 운영 중인 서버에서 자주 만나는 상황을 순서대로 정리했습니다.
1단계 · 인증서 현황
만료일과 대상 도메인을 확인합니다.
certbot certificates
2단계 · 갱신 테스트
실제 갱신 전에 성공 가능성을 검증합니다.
certbot renew --dry-run
3단계 · 타이머 확인
자동 갱신이 예약되어 있는지 봅니다.
systemctl list-timers certbot.timer --no-pager
실무에서는 이렇게 씁니다
1. 자동 갱신 실패 대비
상황 — 갱신이 조용히 실패해 만료될 위험이 있습니다.
certbot renew --dry-run
결과 — 검증 실패 시 원인(웹루트 경로, 방화벽, DNS)이 출력됩니다.
포인트 — 월 1회 dry-run을 점검 루틴에 넣습니다.
2. 인증서 목록 점검
상황 — 여러 도메인 인증서 만료일을 한 번에 봐야 합니다.
certbot certificates | grep -E 'Certificate Name|Expiry'
결과 — 이름과 만료일이 함께 출력되어 위험한 인증서를 찾습니다.
포인트 — 만료 30일 이내 인증서는 갱신 로그를 함께 확인합니다.
주의할 점
- dry-run도 Let's Encrypt 서버에 요청을 보내므로 과도한 반복은 제한될 수 있습니다.
- 웹루트 검증은 실제 도메인 접근이 가능해야 성공합니다.
- 인증서를 강제로 재발급하면 주간 발급 한도에 걸릴 수 있습니다.
실제 실행 화면
인증서 만료일과 자동 갱신 성공 가능성을 확인한 결과입니다.

실제 운영 중인 서버
이 문서는 화면 표시용 가상 디렉터리의 항목입니다. 실제 서버 파일시스템과 연결되지 않으며, 파일 실행이나 시스템 명령을 수행하지 않습니다.