[Lightsail] AWS CLI를 이용한 _acme-challenge 갱신 스크립트

도메인 갱신만을 목적으로 간단하게 구성한 스크립트이다. 6달 동안 총 3번의 갱신에서 특이사항이 없어서 공개를 해본다. 구현 방식은 다음과 같다. ACME 토큰 값을 도메인이름(junklab.domain)의 파일에 저장해서 Plesk DNS와의 비교 데이터로 사용한다. Plesk DNS의 _acme-challenge 데이터(domaintarget)을 가져와서 junklab.domain 파일의 내용(domainsource)과 다른지 확인한다. 값이 다르면 domaintarget값으로 도메인을 갱신한다. AWS 액세스 키가 ubuntu 계정에 등록되어 있기 때문에, Cron도 ubuntu로 실행이 […]

Read More

 [Lightsail] AWS CLI를 이용한 DNS 수정

Plesk를 쓴 이후로 가장 스트레스를 받았던 것은 SSL 인증서 갱신이 실패하는 것이었다. Let’s Encrypt는 3개월만 인증이 유효하기 때문에, 2개월이 지나면 만료 전까지 하루에 한 번 자동 갱신을 시도한다. 이때 ACME 프로토콜을 사용하여 도메인의 유효성을 검사한다. 하지만, 매번 위와 같은 오류가 발생해서 갱신이 실패했다. Plesk의 Let’s Encrypt 플러그인은 Plesk DNS만 업데이트를 하는데, Lightsail DNS를 사용하니 DNS 업데이트가 안되어 인증이 되지 않기 때문이었다. […]

Read More

 [Lightsail] AWS CLI 설치

Let’s Encrypt에서 발급받은 SSL을 갱신하려면 매번 수동으로 DNS 변경을 해야 했다. 이것을 자동화할 수 있는 Shell Script를 만들어 테스트 하고 있는 중이다. 사전 작업으로 Shell에서 Domain Control을 하기 위해 일단 AWS CLI v2를 설치했다. apt를 이용하거나 python을 이용한 여러 설치 방식이 있는데, 모두 v1 버전의 설치 방법이었다. 그래서 AWS에서 제공하는 가이드대로 설치를 했다. 참조 : https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/install-cliv2-linux.html 1. […]

Read More