SW/ 개발팁 / 추천프로그램, 꿀팁 공유
  • 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글
정보

[Web station에 대한 고찰 4부] 와일드 카드 인증서 발급받기

keiminem keiminem 715

1

9

오랜만에 짬을내어 글을 다시 써봅니다.

오늘의 주제는 시놀로지에서 와일드카드 인증서 발급받기입니다.]

NPM은 lets encrypt 인증서를 발급받을수 있지만 API모드만 지원하고 DNS모드를 지원하지않아서

도메인서버를 직접운영하는경우에는 와일드카드인증서를 자동으로 발급받을수 있다라는 NPM의 장점을 누릴수가 없습니다.

본 내용은 DNS모드를 이용한 인증서 발급받기 입니다.

우선 시작하기전에 시놀로지의 SSH를 활성화 해주시길 바랍니다.

그 이후에 윈도우의 처맨드창을 실행시켜주시면 됩니다.

주의 : 본 가이드를 따라하실때는 root계정으로 하시게되면 여러모로 피곤해집니다.

ssh [사용자계정]@NAS IP 를 입력합니다.

SSH에 접속하기전에 확인절차가 있을수도 있는데 YES를 입력하시면 위와같은 화면이 나옵니다.

인증서를 발급받는 방법은 여러가지가 있으나 저는 acme.sh를 유용하게 사용하므로 이를 예로 들도록 하겠습니다.

acme.sh 를 wget명령어로 다운로드 해줍니다.

$ wget https://raw.githubusercontent.com/acmesh-official/acme.sh/master/acme.sh

주의 : 별도의 다운로드 경로를 설정하지 않고 현재 위치에 다운받는 방식이므로 미리 본인이 사용할 폴더까지 cd명령어를 사용하여 이동후에 명렁어를 실행하시길 바랍니다.

다운받은 acme.sh는 권한설정을 해줍니다.

$ sudo chmod a+x acme.sh

let’s encrypt인증서는 3개월마다 갱신을 해야하므로 인증시점 도래 알림을 받을 계정(메일주소)를 등록해야합니다.

$ /var/services/homes/사용자 이름/acme.sh --register-account -m [이메일 주소] --server zerossl

계정이 등록되면 계정파일이 .acme.sh폴더에 생성되므로? 지우시면 안됩니다.

인증서를 발급받을 서버(lets encrypt)를 설정해줍니다.

$ /var/services/homes/사용자 이름/acme.sh --set-default-ca  --server letsencrypt

여기까지가 준비과정입니다.

사실 인증서 발급은 너무나도 간단하기에 코드 한줄이면 해결되거든요 하하;

$ /var/services/homes/사용자 이름/acme.sh --issue --dns --force -d 내 도메인 -d *.내 도메인 --yes-I-know-dns-manual-mode-enough-go-ahead-please --server letsencrypt

이렇게 코드한줄로 인증서가 생성되고 경로를 알려줍니다.

5부에서는 시놀로지의 인증서 관리방법 으로 돌아오겠습니다.

코드 정리

$ wget https://raw.githubusercontent.com/acmesh-official/acme.sh/master/acme.sh
$ sudo chmod a+x acme.sh
$ /var/services/homes/사용자 이름/acme.sh --register-account -m [이메일 주소] --server zerossl
$ /var/services/homes/사용자 이름/acme.sh --set-default-ca  --server letsencrypt
$ /var/services/homes/사용자 이름/acme.sh --issue --dns --force -d 내 도메인 -d *.내 도메인 --yes-I-know-dns-manual-mode-enough-go-ahead-please --server letsencrypt

 

신고공유스크랩
9
1등
siane 2023.03.08. 09:12
npm이 nginx proxy manager를 말씀하시는거라면.. DNS방식 인증도 지원 되는데요;
profile image
keiminem 글쓴이 2023.03.08. 11:41
siane
클라우드플레어 api이외의 다른방식이있다니 저도 몰랐던 부분이네요 어떻게하는지 알려주실 수 있나요 ???
siane 2023.03.08. 13:04
keiminem
아 자체 DNS서버 인증서 말씀하시는거군요 ㄷㄷ API를 이용한 다른 DNS서비스 인증을 말함이 맞습니다.
profile image
keiminem 글쓴이 2023.03.08. 14:25
siane
그렇군요 다른 방법이 또 있는줄알고 내심 설랬네요 (소재고갈....)
2등
드림캐쳐 2023.06.19. 16:39
안녕하세요. 좋은 정보 감사합니다. 얼마전까지 사실 1년여지나게 3개월마다 수동갱신해오고 있었는데요. 제때 갱신안해서 만료되고 나서, 새로이 이 절차대로 하니 오류가 계속 생깁니다. 원인이 뭔지 알수있을까요?
Please refer to https://curl.haxx.se/libcurl/c/libcurl-errors.html for error code: 60
Can not init api for: https://acme-v02.api.letsencrypt.org/directory.
Sleep 10 and retry.
profile image
keiminem 글쓴이 2023.06.21. 19:00
드림캐쳐
만료가 된뒤에 재갱신의 경우에는 도메인 소유주를 다시확인하기때문입니다.
로그확인하시면 다시 코드를 입력하라는 메시지가 올라와있을거에요
네임서버에 코드수정하시고 renew하시면 진행됩니다.
랜섬 2023.12.22. 14:24
keiminem
renew를 어떻게 하는 것인지 조금만 상세히 부탁드립니다. 기한 만료후라서 저도 갱신이 안되고 있어서요.
3등
드림캐쳐 2023.06.19. 17:41
에구 어찌하다. 윈도우 linux에서 제대로 발급이 되었는데요. 인증서탭에서 만료된 것을 "인증서교체" 후 ssl포트로나 http로나 dsm은 물론 웹서버도 접속이 안됩니다. nginx가 시작이 안되더군요.
콘솔에서 nginx conf어떤 부분을 보면 될까요
profile image
keiminem 글쓴이 2023.06.21. 19:00
드림캐쳐
실행이 안되는 경우는 잘 모르겠네요 reload를 했을때 안될경우에는 그냥 restart 로 하시면 단박에 적용됩니다.

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

취소 댓글 등록

cmt alert

신고

"님의 댓글"

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

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story