• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
질문

Synology에서 NPM 도커 패키지 사용하여 SSL 발급 이후 사용

냥냥이 냥냥이 1301

0

7

요번에 새로나온 Web UI? 지원이 되는 헤놀로지 방식으로 설치를 해보았습니다. 과거에 PID.. 시리얼넘버.. 등등 귀찮은 일들이 싹다 사라졌더군요.. 놀라운 경험이였습니다.

 

그런데 문제가 있는것이 SSL인데요. 다른 오라클이나 AWS에서는 발생하지 않은 문제인데 NPM을 도커로 설치하고, 여기에서 duckdns 와일드카드 SSL을 발급까지는 성공하였습니다.

 

여기에서 proxy를 새로 발급한 와일드카드 SSL으로 걸어주면 죄다 보안에 문제가 있는 인증서라고 떠서 확인을 해보니 시놀로지 인증서가 적용되어있어서 발생하는 문제입니다.

 

그런데 보안 탭에서는 이 기본 시놀로지 인증서를 비활성화할수도 없고, 아무래도 내부적으로 우선순위에 있어서 이런 문제가 발생하는것같은데 어떻게들 해결하셨나요?

 

기본 시놀로지의 보안쪽에서는 lets encrypt 와일드카드를 duckdns로는 발급받기가 좀 까다로운것같아서 NPM으로 이 기능을 대체하려고 했거든요.

신고공유스크랩
7
1등
지즐 2022.07.28. 09:52

시놀로지 제어판 인증서 탭에서 인증서 파일 가져오기를 통해 npm으로 발급한 인증서를 이식시키고 기본 인증서로 설정해줬습니다.

갱신됐을 때를 대비해 작업 스케줄러에 차후에 갱신될 인증서를 시놀로지 기본 인증서 폴더에 복사해주는 스크립트를 넣어놨고요.

npm으로 생성된 인증서는 /config/letsencrypt/archive/npm-1 폴더에 저장이 되는데 처음 생성하면 cert1.pem 이런 식으로 1이라는 숫자가 붙고 갱신할 때마다 2, 3, 4... 이렇게 뒤에 숫자가 늘어난 인증서가 새로 생기는 방식인 것 같더라고요.

그래서 복사할 때 무작정 *을 사용하면 꼬일 것 같아서 이전 인증서를 지우는 스크립트를 끼워놔 먼저 실행되도록 했습니다.

 

 

# npm에서 인증서 갱신 후 이전 인증서 지우기

# (파일 시간 내림차순 정렬, 5번째 파일부터 옥록 출력 후 출력된 목록에 있는 파일 삭제.)

 

cd /volume1/docker/npm/config/letsencrypt/archive/npm-1

ls -td1 *.pem | tail -n +5 | xargs rm -f

 

 

# npm에서 생성·갱신된 인증서를 시놀로지 기본 인증서 폴더로 복사

# (/volume1/docker/npm/config/letsencrypt/archive/npm-1 에서 /usr/syno/etc/certificate/_archive/vSONk7 로 복사)

# 이후 nginx 리로드

 

cp /volume1/docker/npm/config/letsencrypt/archive/npm-1/cert*.pem /usr/syno/etc/certificate/_archive/vSONk7/cert.pem

cp /volume1/docker/npm/config/letsencrypt/archive/npm-1/chain*.pem /usr/syno/etc/certificate/_archive/vSONk7/chain.pem

cp /volume1/docker/npm/config/letsencrypt/archive/npm-1/fullchain*.pem /usr/syno/etc/certificate/_archive/vSONk7/fullchain.pem

cp /volume1/docker/npm/config/letsencrypt/archive/npm-1/privkey*.pem /usr/syno/etc/certificate/_archive/vSONk7/privkey.pem

synosystemctl reload nginx

 

복사될 폴더를 보면 vSONk7 라는 폴더가 있는데 이게 기본 인증서 폴더고 폴더명은 시스템별로 임의 생성이라 전부 다 다릅니다.

적용할 때 직접 찾아서 바꿔주셔야 합니다.

profile image
달소 2022.07.28. 10:26
지즐

간단하게 프록시를 https가 아닌 http로 태우시면됩니다.

 

외부에서 NPM으로 오는 도메인 https ssl인증서는 NPM에서 적용하고

NPM에서 시놀로지로는 :5000번과 같은 http 포트로 넘겨주시면 해결됩니다.

 

모든 응용프로그램도 마찬가지구요

profile image
jerry80 2022.07.28. 15:26
달소

항상 달소님의 좋은정보로 많은 도움을 받을 수 있음에 먼저 감사드립니다.

 

혅재 npm 을 ds920+ 호스트에 도커로 설치하고 sub domain 마다 인증서를 따로 발급받아서 사용중인데 점점 sub domain 이 많아지면서 불편해져서 와일드카드 인증서를 한번 적용해 보려고 합니다. 시작하기 전에 겁나서 ^^ 몇가지 질문 드리고자 합니다.

 

편의상 제 main duckdns domain 을 mydomain.duckdns.org 라고 하고 sub1.mydomain.duckdns.org, sub2.mydomain.duckdns.org 등을 사용한다고 가정하겠습니다.

 

1. *.mydomain.duckdns.org 인증서를 발급받으면 sub1, sub2 로 발급받은 인증서는 삭제 또는 무효화 되는지요 ?

(와일드카드 인증서를 발급받아도 기존의 sub1, sub2의 인증서가 유효하다면 부담없이 시도해볼수 있을듯 한데

무효화 되어 버린다면 꼬였을때 고난이 예상되기에... ^^)

 

2. 현재 크론탭에 docer exec -it npm /usr/bin/certbot renew 를 스크립트로 등록해두고 sub domain 인증서를 자동 리뉴하고

있는데 와일드 카드 인증서도 동일한 방법으로 renewal 이 가능한지 궁금합니다.

 

3. npm docker 컨테이너 내부에는 subdomain 인증서 밖에 없어서 2번방법으로 리뉴얼 할때, mydomain.duckdns.org

인증서는 자동 갱신이 되지 않아서 DSM에서 수동으로 갱신해주고 있는 중인데, 혹시 와일드 카드 인증서를 발급받으면

2번 실행할때 mydomain.duckdns.org 에 해당하는 인증서도 자동으로 갱신이 되는지요 ?

혹시 안된다면 와일드 카드 인증서와는 상관없지만, 자동으로 mydomain.duckdns.org를 자동으로 리뉴하는 방법이 있을까요 ?

(80포트와 443 포트가 npm 으로 포워딩되고 있어서, dsm에서 자동인증은 사용못하고, 수동 갱신할때도 80 포트를 시놀로지로

포워딩을 바꿔서 사용하느 불편도 있고요.)

 

 

장황한 질문 죄송합니다.

profile image
달소 2022.07.28. 15:40
jerry80

1. 무효화되지않습니다. 만료기간까지는 정상적으로 이용가능합니다.

2. 이전에 expbox님이 작성해주셨는데.. 아마 되긴했던걸로 기억합니다.

3. 서브도메인도 npm상에서 renew를 클릭하면 굳이 DSM에서 갱신할 필요는없지않나요..?

추가로 와일드카드인증서의경우 api를통해서 정보를 받아와서 갱신하는데 서브도메인의경우에도 안될이유는 없을것같긴한데.. 안되나요..?

 

 

profile image
jerry80 2022.07.28. 15:46
달소

일단 1번으로 기존 설정이 망가지지 않으니 시도해보겠습니다. ^^

 

그리고, 3, 4번 질문은 서브도메인 인증서가 아닌 메인도메인 (mydomain.duckdns.org) 인증서 갱신에 관한 질문이었습니다.

도커 컨네이너 내부에 sub1.mydomain.duckdns.org 정보는 있지만 mydomain.duckdns.org 정보는 없어서 갱신이 안되는

것으로 알았는데, 갱신이 되는지도 모르겠네요. 이 인증서를 시놀로지 DSM에 이동해주는 부분이 빠진 것일 수도 있겠습니다.

 

조금더 공부해 보도록 하겠습니다.

profile image
jerry80 2022.07.28. 15:54
달소

흠.. 일단 와일드카드 인증서 발급에 실패했습니다. ㅠㅠ

 

Error: Command failed: certbot certonly --config "/etc/letsencrypt.ini" --cert-name "npm-21" --agree-tos --email "sangju41@gmail.com" --domains "*.mydomain.duckdns.org" --authenticator dns-cloudflare --dns-cloudflare-credentials "/etc/letsencrypt/credentials/credentials-21"

Saving debug log to /var/log/letsencrypt/letsencrypt.log

Unable to determine zone_id for mydomain.duckdns.org using zone names: ['mydomain.duckdns.org', 'duckdns.org', 'org']. Please confirm that the domain name has been entered correctly and is already associated with the supplied Cloudflare account.

Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.

 

at ChildProcess.exithandler (node:child_process:399:12)

at ChildProcess.emit (node:events:526:28)

at maybeClose (node:internal/child_process:1092:16)

at Process.ChildProcess._handle.onexit (node:internal/child_process:302:5)

 

요렇게 나오네요. mydomain.duckdns.org 를 cloudflare 에 등록해야 하는 것 같은데...

https://it-svr.com/npm-nginx-proxy-manager-wildcard-certificate-cloudflare/

 

이글 보고 따라하고 있는 중입니다.

 

profile image
jerry80 2022.07.28. 16:59
달소

그것참... 다른 설정은 똑같이 하고 domain name 만 와일드카드가 아닌 sub3.mydomain.duckdns.org 로는 인증서 생성이 잘 되는군요. 이경우 Certificate Provier는 Let's Encrypt - Cloudflare 요렇게 나오고요.

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
번호 분류 제목 글쓴이 날짜 조회 추천
공지 정보 DSM 7.2v) Mshell로 헤놀로지 부트로더 빌드하기. 61 달소 23.05.29.01:57 24362 +23
공지 정보 DSM 7.2v) ARPL-i18n(rr)으로 헤놀로지 부트로더 빌드하기. 72 달소 23.05.23.23:58 25921 +23
잡담 헤놀로 넘어오고 가장 만족스러운 부분 (Hyper Backup) 2 N4100 11시간 전22:38 162 +1
잡담 RAID5(SHR)의 저장속도가 이렇게나 빠른거였네요.. (NVMe SSD삽질) 10 estel1 4일 전23:51 511 +2
가이드 시놀로지 도커로 Wireguard VPN + qBittorrent + tsharp(It's torr) 사용하기 11 펜타네스트 24.04.12.16:13 456 +4
5074 질문
image
햄뽁이아빠 10시간 전23:42 93 0
5073 잡담
image
N4100 11시간 전22:38 162 +1
5072 질문
normal
유기농밀크 20시간 전14:28 202 0
5071 질문
image
ezcamp 23시간 전11:15 203 0
5070 질문
image
두데 1일 전10:31 215 0
5069 질문
normal
서브어린이 1일 전20:33 135 0
5068 후기
image
추주비 1일 전12:21 266 0
5067 질문
image
서브어린이 2일 전19:59 474 0
5066 질문
normal
현이들아빠 2일 전15:02 186 0
5065 질문
image
서브어린이 2일 전12:18 434 0
5064 질문
image
지나가는_문과생 2일 전12:14 304 0
5063 질문
image
동도리군 3일 전07:16 111 0
5062 질문
normal
서브어린이 3일 전21:48 99 0
5061 질문
image
사십동 4일 전05:49 184 0
5060 질문
image
서브어린이 4일 전23:57 130 0
5059 잡담
image
estel1 4일 전23:51 511 +2
5058 질문
image
까칠한나그네 4일 전14:20 236 0
5057 질문
normal
라라라라데이 4일 전12:29 312 0
5056 질문
image
orange0909 4일 전12:20 313 0
5055 질문
image
금화 5일 전15:14 375 0