오늘

cloudflare DNS 사용시 Certbot 인증서 발급방법 본문

cloudflare

cloudflare DNS 사용시 Certbot 인증서 발급방법

jhw715 2023. 3. 19. 22:38

certbot 을 통해 let's encrypt 인증서 발급하는 방법.

 

1. certbot 플러그인 설치

sudo apt-get install certbot
sudo apt-get install python3-certbot-dns-cloudflare

사용중인 도메인을 Cloudflare에 등록해놓았을경우에는 python3-certbot-dns-cloudflare 를 추가로 설치해야 한다.

 

 

2. /.secrets/certbot/cloudflare.ini 파일 작성

dns_cloudflare_api_token = "<cloudflare_api_token>"

++ api key 를 사용하려면 아래처럼 ini 파일 내용을 작성하면 될 듯 하다.

dns_cloudflare_email = <cloudflare_mail>
dns_cloudflare_api_key = <cloudflare_api_key>

 

++ cloudflare_api_token 발급 관련

더보기

cloudflare > myprofile > api token >create token 

 

api token 생성을 위해서는 우선 cloudflare 에 이메일 인증이 되어 있어야 한다.

api token  생성할때  아래와 같은 권한을 부여했을때는 certbot 인증서 발급에 문제가 없었다. ( 정확하게 어떤 권한이 필요한지는 확실하지 않음.)

 

3. 인증서 발급

sudo certbot certonly \
--server https://acme-v02.api.letsencrypt.org/directory \
--preferred-challenges dns-01 \
--dns-cloudflare --dns-cloudflare-credentials /root/.secrets/cloudflare.ini \
-d "<도메인>, <도메인>, ...."

발급 도중 ini 파일의 퍼미션 에러가 발생할 때에는 /.secrets/certbot/cloudflare.ini 파일의 권한을 600으로 설정. 

sudo chmod 600 /.secrets/certbot/cloudflare.ini

 

4. 인증서 확인

인증서 발급이 정상적으로 완료되었다면 아래의 경로에 저장이 된다.

/etc/letsencrypt/live/<도메인>/

 

Comments