서버 운영
Nginx 인증서 갱신 뒤 443이 열리지 않았을 때 먼저 확인한 경로
인증서 갱신 성공 뒤 HTTPS가 열리지 않아 실제 경로를 대조한 기록.
성공 메시지와 서비스 상태는 달랐다
만료 알림 뒤 certbot renew를 실행했을 때 출력은 성공이었다. 그런데 브라우저는 HTTPS 연결을 거부했다. 방화벽을 먼저 건드릴 뻔했지만 nginx -t에서 설정이 예전에 복사한 다른 인증서 경로를 참조한다는 것을 확인했다. 발급, 파일 경로, 웹 서버 반영은 따로 점검해야 한다.
Nginx가 읽는 파일 확인
sudo nginx -t
sudo nginx -T | grep -E 'ssl_certificate(_key)?'
sudo certbot certificates
nginx -T의 ssl_certificate와 certbot의 Certificate Path가 같은 쌍인지 비교했다. 내 서버에서는 새 인증서가 turin.my-0001에 있었는데 설정은 이전 디렉터리를 가리켰다. 경로를 고친 뒤에는 반드시 문법 검사부터 한다.
sudo nginx -t && sudo systemctl reload nginx
curl -Iv https://blog.turin.my
처음에는 restart를 하려 했지만, reload 전에 검사를 붙이면 오타로 실행 중인 서버를 끊을 위험이 작다.
다음 갱신 전 체크
certbot renew --dry-run을 한 번 실행한다.- 인증서 별칭과 Nginx 경로를 같이 기록한다.
- reload 뒤 실제 도메인 TLS 연결을 확인한다.
- 만료 알림은 일주일 이상 앞서 받는다.
인증서 문제를 certbot 하나의 문제로 보지 않으니 확인 순서가 명확해졌다.