시놀로지

[synology] nginx-proxy-manager 도메인 연결 ssl 인증서 발급 with cloudflare

devy1540 2024. 6. 21. 18:49

이번 글에서는 nginx-proxy-manager (이하 npm)에 도메인 연결해서 ssl 인증서까지 발급받는 방법을 알아보도록 하겠다.

 

이번 글의 선행조건은 갖고있는 도메인이 cloudflare로 관리되고 있다는 전제조건하에 진행이 된다.

 

먼저 Cloudflare에서 DNS 에 대한 접근할 수 있는 토큰을 발급받을 수 있도록 한다.

 

1. 로그인한 cloudflare에서 우측 상단에 my profile 접근

2. 좌측에 API Tokens 선택

3. Create Token 클릭

 

 

4. Edit zone DNS 에 있는 Use template 사용

5. Zone Resources 에서 All zones 선택

6. Create Token 선택

 

7. 발급받은 토큰을 복사(토큰은 이후에 다시 보여주지 않기 때문에 rolling 하는거 아닌 이상 다시 볼 수 없기때문에 어딘가에 저장해놓는것을 추천)

 

 

 

복사한 토큰을 가지고 npm 에 가지고 간다.

 

1. SSL Certificates 접근

2. 우측 상단에 Add SSL Certificate 클릭

3. Let's Encrypt 선택

 

1. Use a DNS Challenge 선택

2. 하단의 DNS Provider에서 Cloudflare를 선택

3. Credentials File Content에서 위에서 복사한 토큰값을 dns_cloudflare_api_token = 뒤에 붙여준다

ex) dns_cloudflare_api_token = 12jeroiqefjdslkv

 

4. 하단에 동의 해주고 저장

 

정상적으로 진행되었을 경우 SSL Certificates에 인증서 목록이 생성된것을 볼 수 있다.

 

주인장의 경우 *.domain.com, *.service.domain.com 이렇게 2개가 필요하기 때문에 인증서를 총 2개 만들어줬다.

 

다음 시간에는 reverse proxy를 만들어 연결할 수 있도록 한다.