AWS EC2 에서 Certbot 인증서 주기적 갱신을 위한 Crontab 설정 가이드

TaeWoo·2024년 10월 17일
0

AWS

목록 보기
7/8
post-thumbnail

웹 서비스 운영에 있어 SSL 인증서의 유효성을 유지하는 것은 매우 중요합니다. 인증서가 만료되면 서비스에 심각한 문제가 발생할 수 있습니다. 이를 방지하기 위해, Certbot을 사용하여 인증서를 자동으로 갱신하는 작업을 설정하는 방법을 소개합니다.

  1. Crontab 접근
    먼저, 루트 권한으로 Crontab 설정을 위해 다음 명령어를 입력합니다.
sudo crontab -e

그러나 아래와 같은 에러가 발생할 수 있습니다.

no crontab for root - using an empty one
/tmp/crontab.r558L1/crontab: No space left on device

이 에러는 /tmp 디렉토리의 용량이 부족하기 때문에 발생합니다.


  1. 디스크 사용량 확인
    df -h 명령어를 통해 현재 디스크 사용량을 확인할 수 있습니다.
df -h

결과:

Filesystem       Size  Used Avail Use% Mounted on
tmpfs            10M   10M     0 100% /tmp

위의 결과에서 보듯이 /tmp의 용량이 10M로 설정되어 있으며, 이미 100% 사용 중입니다.


  1. 용량 증설
    /tmp의 용량을 50M로 늘리기 위해 다음 명령어를 사용합니다.
sudo mount -o remount,size=50M /tmp

  1. Crontab 재설정
    다시 Crontab을 열어 설정을 진행합니다.
sudo crontab -e

이제 Crontab 설정이 가능합니다.


  1. 인증서 갱신 작업 추가
    다음과 같은 내용을 Crontab에 추가하여 매월 1일 정오에 인증서를 갱신하도록 설정합니다.
0 12 1 * * sudo certbot renew --renew-hook="sudo service restart nginx"

  1. Crontab 서비스 활성화 확인
    설정이 완료된 후, Crontab 서비스가 정상적으로 실행되고 있는지 확인합니다.
sudo systemctl status cron

상태가 active (running)이면 모든 설정이 정상적으로 완료된 것입니다.

profile
코드와 아이디어의 소통, 기록하는 개발자. 🚀✨

0개의 댓글

관련 채용 정보