11.Nas_1


새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사


● 시놀로지 인증서 acme.sh DNS 방식(자동갱신 X) 생성 자동 생성 안되는 문제 대응

♨ 카랜더 일정 : 2024년09월05일
  • 링크

  • 첨부

  • 컨텐츠 정보

    본문

    ● 시놀로지 인증서 acme.sh  DNS 방식(자동갱신 X) 생성 자동 생성 안되는 문제 대응

    이전 작업 진행 정보

    https://11q.kr/www/bbs/board.php?bo_table=s11&wr_id=12742



    1) txt 가 3개월간 유지 1개월 전 부터 변경 작업 필요

    3232235521_1725526463.5736.png

    정보 출처

    https://github.com/acmesh-official/acme.sh/wiki/dns-manual-mode


    설치 작업 ( 초기 작업)

    https://github.com/acmesh-official/acme.sh

    3232235521_1725524036.7582.png

    다운로드 (github의 email로 한다)

    wget -O -  https://get.acme.sh | sh -s email=my@example.com

    wget -O -  https://get.acme.sh | sh -s email=ss1145@mail.com


    cd /root/.acme.sh
    ./root/.acme.sh/acme.sh --install -m ss1145@mail.com

    업데이트 작업후  파일 변경 확인

    3232235521_1725524272.5598.png

    txt 생성 (매번)후 인증서 생성 메뉴얼

    1. 첫 번째 단계:
    acme.sh --issue -d example.com --dns \
     --yes-I-know-dns-manual-mode-enough-go-ahead-please
    
    1. DNS 기록에 TXT 기록을 추가하세요. 이 단계는 주목받을 때마다 필요합니다. DNS API 모드를 사용하면 이 단계를 자동화할 수 있습니다.

    2. 이제 --renew키보드를 입력해 다시 시작하세요.

    acme.sh --renew -d example.com \
      --yes-I-know-dns-manual-mode-enough-go-ahead-please


    123q.me 인증서 생성  업데이트 진행

    .acme.sh 폴더로 이동

    저는 cd /root/.acme.sh


    dns서버에서 txt 확인 >> 하기 재생성 불가시 acme.sh 재생성후 변경 > txt 확인 작업

    저의 서버는

    https://app.netlify.com/teams/homepc11qkr/dns/11q.kr

    또하나의 서버

    https://account.squarespace.com/domains/managed/123q.me/dns/dns-settings

    3232235521_1725525702.4722.png

    DNS Settings
    DNS records point to services your domain uses, like forwarding your domain or setting up an email service. Learn more about DNS settings

    Add Preset
    Custom records
    Add record
    Host
    Type
    Priority
    Data
    @
    A

    221.140.111.151


    _acme-challenge
    TXT

    ID6CgU7vEhl0teCFxDR24y8-RFe9FIt4PEvg9araA-U


    _acme-challenge
    TXT

    OkKns-OLEGJ3uLYcJj5fRqTEvv9km6l3vWUTOn2mkp4


    www
    CNAME

    123q.me

    =======================

    nslookup 으로 txt 확인


    #ssh txt 적용 확인

    #nslookup

    #> set type=txt

    #> _acme-challenge.123q.me

    3232235521_1725525883.1145.png

    --------------


    root@www11q:~/.acme.sh#
    acme.sh --renew -d 123q.me -d *.123q.me \
       --yes-I-know-dns-manual-mode-enough-go-ahead-please --force
    3232235521_1725526037.8088.png



    txt 생성

    acme.sh --issue -d 123q.me -d *.123q.me --dns \
    --yes-I-know-dns-manual-mode-enough-go-ahead-please 

    3232235521_1725526246.4296.png

    3232235521_1725526476.0543.png


    1차 11q.kr의 저의 대표 ddns의 인증서 적용을 완료후

    2차 다른 123q,me의 ddns의 인증서 적용 테스트 진행

    ==================진행중지 ================================

    다음 일정 9/23일 에 작업 진행 예정

    1차 확인 >  txt 변동 없이  인증서 재생성 진행 예정


    acme.sh --renew -d 123q.me -d *.123q.me \
       --yes-I-know-dns-manual-mode-enough-go-ahead-please

    안되면 2차 확인
    acme.sh --renew -d 123q.me -d *.123q.me \
       --yes-I-know-dns-manual-mode-enough-go-ahead-please --force


    ==================

    안되면  txt 생성후 인증서 생성 적용 방법

    ==============

    1) txt 생성

    acme.sh --issue  -d 123q.me -d *.123q.me  --dns \

     --yes-I-know-dns-manual-mode-enough-go-ahead-please

    2) dns서버에서 txt 변경

    https://account.squarespace.com/domains/managed/123q.me/dns/dns-settings


    3) 서버 txt 적용확인

    nslookup

    #> set type=txt

    #> _acme-challenge.123q.me


    4) 인증서 생성1

    acme.sh --renew -d 123q.me -d *.123q.me \
       --yes-I-know-dns-manual-mode-enough-go-ahead-please 

    4) 인증서 생성2
    acme.sh --renew -d 123q.me -d *.123q.me \
       --yes-I-know-dns-manual-mode-enough-go-ahead-please --force

    5) 인증서복사

    6) 인증서 보안 적용확인


    =====참조=========

    https://chatgpt.com/c/66d97288-038c-8007-be5b-0956c0043682

    acme.sh 를 이용하여 시놀로지 인증서를 생성 예정입니다, txt의 dns서버에 자동으로 동기화 방법하고 acme.sh 로 txt 변동없이 acme.sh로 지속적으로 인증서 업그레이트 방법을 알려주세요

    3232235521_1725526925.1864.png


    Nginx에 Let's Encrypt SSL(https) 보안 인증서 적용하기(with certbot 인증서 자동갱신) 인증방식

    https://deoking.tistory.com/7

    인증서 생성 및 발급 의 인증 방식 정보 입니다


    1. Let’s Encrypt

    Let’s Encrypt는 무료 SSL/TLS 인증서를 얻고 설치할 수 있는 인증 기관으로, 웹 서버에서 암호화된 HTTPS를 사용할 수 있게 해 줍니다. 또한, Certbot이라는 자동화 클라이언트를 제공하여 Apache 및 Nginx에서 인증서를 획득하고, 설치하는 전체 프로세스가 자동화되어 있습니다.

    참고로 Let’s Encrypt 인증서의 경우 유효기간은 3개월(90일)로 그 기간이 짧습니다. 가장 큰 이유로는 짧은 주기의 자동 갱신을 권장하여 인증서가 무력화되더라도 그 피해를 최소화하기 위함입니다.


    2. 인증 방식

    인증서는 Let’s Encrypt(인증기관, CA)로부터 인증 절차를 거쳐야 인증서 발급이 가능하며, 인증 방식에는 아래 4가지 방식이 있습니다. 본 문서에서는 3번 Standalone 방식으로 진행합니니다.


    webroot 방식

    실제 돌아가고 있는 웹 서버에 특정 파일 쓰기 작업을 통해 인증하는 방식입니다. 즉, 접근할 수 있는 특정 디렉터리를 제공해서 접근이 가능한지 확인하는 방식입니다.4

    이를 이용하면 nginx를 중단시킬 필요가 없어진다는 장점이 존재합니다.

    단, 한 번에 하나의 도메인만 발급 가능하다는 단점이 존재합니다.

    웹서버(Nginx) 방식

    Nginx나 아파치와 같은 웹서버에서 직접 SSL 인증을 실시하고 웹서버에 맞는 SSL세팅값을 부여

    발급이나 갱신을 위해 웹서버를 중단시킬 필요가 없음

    인증서 갱신 시 상황에 맞게 세팅을 자동으로 업데이트

    사용자가 세팅을 변경할 수 있지만 자동 업데이트 시 반영되지는 않음


    Standalone 방식

    certbot에서 80 포트의 standalone webserver를 따로 띄워서 인증서를 발급받는 방식입니다.

    즉, 80, 443 포트를 이미 열고 있다면 발급 시마다 nginx를 다시 내려야 한다는 단점이 존재합니다.


    DNS 방식(자동갱신 X)

    도메인 TXT 레코드를 이용해서 인증서를 발급받는 방식입니다.

    와일드카드 방식으로 인증서 발급이 가능합니다.

    단점은 인증서 갱신 시마다 DNS TXT 레코드 값을 변경해야 합니다.

    때문에 DNS가 TXT 레코드를 수정할 수 있는 API를 제공해야만 갱신을 자동으로 처리 가능합니다.

     ===========> dns방식으로 진행 사용중에 자동갱신이 안된다 

    대응정보

    165. Use Timeweb Cloud DNS API

    https://github.com/acmesh-official/acme.sh/wiki/dnsapi2#dns_timeweb



    ☞ https://11q.kr 에 등록된 자료 입니다. ♠ 정보찾아 공유 드리며 출처는 링크 참조 바랍니다♠1.png

    [ 추가 정보 ... 더보기) ]
    뷰PDF 1,2



    office view

    관련자료

    댓글목록

    profile_image

    11qkr님의 댓글

    11qkr 쪽지보내기 메일보내기 홈페이지 자기소개 아이디로 검색 전체게시물 아이피 (192.♡.0.1) 작성일

    취소

    보내기
    ChatGPT의 말:
    ChatGPT
    시놀로지 NAS에서 ACME.sh를 사용해 인증서를 생성하고, DNS-01 챌린지를 통해 자동으로 DNS 서버에 TXT 레코드를 동기화하는 방법 및 인증서를 지속적으로 갱신하는 방법을 알려드리겠습니다.

    1. ACME.sh 설치 및 기본 설정
    먼저 ACME.sh를 설치하고 기본 설정을 해줍니다.

    bash
    코드 복사
    curl https://get.acme.sh | sh
    설치 후, 현재 세션에 acme.sh 명령어를 사용할 수 있도록 환경 변수를 추가합니다.

    bash
    코드 복사
    source ~/.bashrc
    2. DNS API 설정
    ACME.sh는 다양한 DNS 서비스 제공자와 연동할 수 있도록 여러 API를 제공합니다. 사용 중인 DNS 서버에 따라 API 키를 설정해야 합니다. 아래는 대표적인 DNS 서비스 제공자의 설정 예시입니다.

    Cloudflare 예시:
    Cloudflare에서 API 키를 발급받습니다.

    Cloudflare 대시보드 > "My Profile" > "API Tokens"에서 Global API Key 또는 Scoped API Key를 생성합니다.
    ACME.sh에 API 키를 설정합니다.

    bash
    코드 복사
    export CF_Key="your-cloudflare-global-api-key"
    export CF_Email="your-cloudflare-email"
    ACME.sh에 DNS 인증서 생성을 요청합니다.
    bash
    코드 복사
    acme.sh --issue --dns dns_cf -d yourdomain.com -d www.yourdomain.com
    여기서 yourdomain.com을 발급받을 도메인으로 변경합니다.

    기타 DNS 제공자 설정:
    다른 DNS 제공자의 경우, ACME.sh 공식 문서에서 해당 API를 확인하고 설정할 수 있습니다.
    3. 인증서 자동 갱신
    ACME.sh는 기본적으로 60일마다 자동으로 인증서를 갱신합니다. 인증서 갱신 시 TXT 레코드를 자동으로 업데이트하도록 설정하려면, 다음 명령어를 사용하세요.

    bash
    코드 복사
    acme.sh --install-cert -d yourdomain.com \
    --key-file /path/to/private.key \
    --fullchain-file /path/to/fullchain.cer \
    --reloadcmd "service nginx reload"
    이 명령어는 인증서가 갱신될 때마다 지정된 경로에 인증서를 저장하고, nginx를 자동으로 재시작하는 설정입니다. nginx 대신 Synology DSM에서 사용하는 웹 서비스의 재시작 명령으로 변경할 수 있습니다.

    시놀로지에서 웹 서버를 재시작하는 명령어는 다음과 같습니다.

    bash
    코드 복사
    synowebservice --restart
    따라서 위 명령어에서 --reloadcmd 옵션을 다음과 같이 변경합니다.

    bash
    코드 복사
    --reloadcmd "synowebservice --restart"
    4. 인증서 갱신 시 TXT 레코드 유지하기
    ACME.sh는 기본적으로 인증서 갱신 시 자동으로 새로운 TXT 레코드를 생성하여 DNS 서버에 업데이트합니다. 이 과정은 API 연동을 통해 이루어지므로 TXT 레코드를 수동으로 관리할 필요가 없습니다.

    만약 DNS 서비스 제공자가 지원하지 않거나 API를 사용할 수 없는 경우에는 수동으로 TXT 레코드를 설정해야 하므로, 이 경우 자동 갱신을 위해서는 API 사용이 필수적입니다.

    요약
    ACME.sh 설치 및 설정.
    DNS 제공자의 API 키를 설정하고, ACME.sh에 등록.
    인증서 발급 시 DNS-01 챌린지를 사용하여 자동으로 TXT 레코드 업데이트.
    자동 갱신 시 NAS의 웹 서비스를 재시작하도록 설정.
    이렇게 하면 시놀로지 NAS에서 ACME.sh로 지속적인 인증서 갱신과 자동 TXT 레코드 업데이트가 가능합니다.







    지금까지의 대화가 도움이 되었나요?


    새창 작성 수정 목록 링크 Edit G카랜다 HDD HDD HDD 게시물 주소 복사


    • 일간 조회수
        • 게시물이 없습니다.
    • 주간 조회수
        • 게시물이 없습니다.
    • 월간 조회수
        • 게시물이 없습니다.


    Total 1,766 / 106 Page
    게시물이 없습니다.(다음페이지로 이동 하세요)

    ♥간단_메모글♥


    최근글


    새댓글



    PHP 안에 HTML ☞ 홈페이지 화면갱신 시간은 ♨
    ▶ 2024-11-11 05:47:12

    오늘의 홈 현황


    • 현재 접속자♨ 245 명
    • 오늘 가입자※ 0 명
    • 어제 가입자※ 4 명
    • 주간 가입자※ 6 명
    • 오늘 방문자 1,267 명
    • 어제 방문자 1,789 명
    • 최대 방문자 13,042 명
    • 전체 방문자 4,771,999 명
    • 전체 게시물※ 8,844 개
    • 전체 댓글수※ 25,193 개
    • 전체 회원수 11,303 명

    QR코드


    ☞ QR코드 스캔은 kakao앱 자체 QR코드

    알림 0








    최신글↑