붉은거위 노트 (redgoose note)

letsencrypt 와일드 카드 도메인 ssl 추가/갱신

Nest
Development
Category
Server
Hit
2101
Star
0

0xCybSHXPFzfl3L1pI.png

와일드 카드 도메인은 서브 도메인 추가나 삭제에 대한 부담이 없어서 좋지만 자동으로 갱신하기 힘들어 보인다.
인증서 추가나 연장의 방식은 대략적으로 휴대폰 SMS 문자 보내기 방식과 비슷하다.

이 방법의 좋은점은 서버 설정을 바꾸게 되면서 서버를 내릴일이 없어 보인다.

인증서 확인

certbot프로그램은 설치된 상태에서 시작한다. 그리고 인증서 갱신을 기준으로 설명한다.
먼저 다음 명령을 실행하여 인증서의 상태를 확인한다. 만료날짜, 인증서 이름, 도메인 주소, pem파일 위치 등등 표기된다.

sudo letsencrypt certificates

인증서 추가/갱신

확인이 끝나면 다음 명령을 실행한다. {HOSTNAME}부분은 도메인 주소로 고친다.

certbot certonly --manual --preferred-challenges dns-01 --server https://acme-v02.api.letsencrypt.org/directory -d {HOSTNAME} -d *.{HOSTNAME}

실행하면 NOTE: The IP of this machine will be publicly logged as having requested this certificate. If you're running certbot in manual mode on a machine that is not your server, please ensure you're okay with that.관련 메지지로 IP관련해서 물어보는데 Y로 넘어가야 진행된다.

그 다음 과정은 Please deploy a DNS TXT record under the name 부분이 나온다면 가장 어렵고 중요한 부분이다.
여러번 재시도 하게 되는 과정이므로 여러번 보는 과정이다.


_acme-challenge.domain.com이런 형식으로 도메인 설명 텍스트를 바꾸고 엔터를 치고 진행해야하는 부분이다.
서브도메인으로 _acme-challenge으로 붙이고 설명 텍스트를 관리하는 서비스는 서비스마다 각각 다르기 때문에 알아서 찾아봐야한다.

메시지들중에 _acme-challenge.xxx.co.kr with the following value: 다음줄에 랜덤문자를 볼 수 있는데 그걸로 바꾸고 엔터를 누르고 확인작업에 들어간다.
중요한점은 도메인 설명을 변경하고 바로 엔터눌러 다음 과정으로 넘어가는것보다 몇분 기다려서 도메인에 적용되는것을 기다리는것을 추천한다.

다음 사이트에서 변경된 랜덤문자가 적용되어있는지 확인할 수 있다.

터비널에서 다음과같이 TXT가 업데이트 되었는지 확인할 수 있다.

nslookup -q=TXT _acme-challenge.redgoose.me

만약 인증에 실패한다면 다음 그림과 같은 메시지를 볼 수 있을것이다.

screen-capturex2020-04-08xAMx4x36x52.png

하지만 성공한다면 다음 그림과 같은 메시지를 볼 수 있다.
하지만 여러번 실패한다면 밴먹으니 주의해야한다!

screen-capturex2020-04-08xAMx4x35x55.png


인증에 성공했으면 sudo letsencrypt certificates 커멘드를 실행하여 만료기간이 바뀌었는지 확인해본다.
참고로 브라우저에서 만료날짜는 늦게 변한다는것을 확인할 수 있었다.

이 과정은 인증서 추가와 갱신이 별 차이가 없을것이다.

https://velog.io/@ilcm96/2019-08-31-lets-encrypt-wildcard 링크는 갱신 명령을 실행하고 텍스트 인증을 하는 과정에서 참고할만하다.

Comments