Let’s Encrypt - 윈디하나의 솔라나라

목차

개요

인증서 발급

acme.sh 사용
솔라리스에서는 Let’s Encrypt 에서 제공하는 Certbot을 설치하려면 약간의 번거로움이 있다. 따라서 A pure Unix shell script implementing ACME client protocol에서 제공하는 ACME 클라이언트를 사용했다.
  1. 사전 요구사항 - OpenSSL 설치

    윈디하나의 솔라나라: OpenSSL을 참고해 OpenSSL 을 설치한다. PATH경로에 설치한 OpenSSL 이 실행되도록 수정해야 한다. 정상적으로 설정되었다면 아래와 같이 출력된다.
    windy@wl ~ $ which openssl
    /usr/local/ssl/bin/openssl
    
  2. 사전 요구사항 - wget 실행 확인

    PATH 경로상의 wget(1)이 실행 가능한지 확인한다. 윈디하나의 솔라나라: 솔라리스 11 기본 설정 - 솔라나라용 설정에 나와있는대로 설정했다면 아래와 같이 출력된다.
    windy@wl ~ $ which wget
    /usr/local/bin/wget
    
  3. acme.sh 설치

    임의의 디렉토리에 설치 스크립트를 다운로드 받는다.

    windy@wl ~ $ mkdir acme
    windy@wl ~ $ cd acme
    windy@wl ~/acme $ wget -o acme https://get.acme.sh
    

    설치 스크립트를 실행시킨다.

    windy@wl ~/acme $ export ACME_USE_WGET=1
    windy@wl ~/acme $ bash acme 1)
    windy@wl ~/acme $ cd ~/.acme.sh
    windy@wl ~/.acme.sh $ acme.sh --set-default-ca --server letsencrypt 2)
    
    1) ~/.acme.sh/디렉토리가 생성되며 acme.sh스크립트 가 생성된다. 모든 인증서는 이 디렉토리에 저장된다.
    2) 기본 인증서 발급기관을 letsencrypt으로 세팅한다. 이 문서는 Let's Encrypt 기준으로 작성되어있다.
  4. 인증서 발급

    도메인을 소유하고 있고, 도메인을 웹 서버에 정상적으로 설정하여 http 프로토콜을 사용해 정상적으로 서비스 중이라면, 간단하게 인증서를 발급 받을 수 있다. 서버 도메인과 루트 디렉토리를 정해서 acme.sh를 실행시키면 된다.
    windy@wl ~/.acme.sh $ ./acme.sh --issue --keylength 4096 -d www.solanara.net -w /DOCUMENTROOT/OF/HTTP/WWW.SOLANARA.NET 1)
    windy@wl ~/.acme.sh $ ./acme.sh --issue --keylength ec-384 -d www.solanara.net -w /DOCUMENTROOT/OF/HTTP/WWW.SOLANARA.NET 2)
    
    1) RSA 인증서가 발급된다. 발급되는 위치는 ~/.acme.sh/www.solanara.net 이다.
    2) ECC 인증서가 발급된다. 발급되는 위치는 ~/.acme.sh/www.solanara.net_ecc 이다.
    acme.sh의 주요 파라메터는 아래와 같다.
  5. 인증서 확인

    다운로드한 인증서를 확인한다.
    windy@wl ~ $ ls -al ~/.acme.sh/www.solanara.net
    -rw-r--r--   1 windy    staff       1.6K  7월 21일  19:39 ca.cer
    -rw-r--r--   1 windy    staff       3.4K  7월 21일  19:39 fullchain.cer
    -rw-r--r--   1 windy    staff       1.8K  7월 21일  19:39 www.solanara.net.cer
    -rw-r--r--   1 windy    staff        576  7월 21일  19:39 www.solanara.net.conf
    -rw-r--r--   1 windy    staff        940  7월 21일  19:39 www.solanara.net.csr
    -rw-r--r--   1 windy    staff        175  7월 21일  19:39 www.solanara.net.csr.conf
    -rw-r--r--   1 windy    staff       1.6K  7월 21일  19:39 www.solanara.net.key
    windy@wl ~ $ ls -al ~/.acme.sh/www.solanara.net_ecc
    -rw-r--r--   1 windy    staff       1647  3월  2일  16:28 ca.cer
    -rw-r--r--   1 windy    staff       3209  3월  2일  16:28 fullchain.cer
    -rw-r--r--   1 windy    staff       1562  3월  2일  16:28 www.solanara.net.cer
    -rw-r--r--   1 windy    staff        583  3월  2일  16:28 www.solanara.net.conf
    -rw-r--r--   1 windy    staff        493  3월  2일  16:28 www.solanara.net.csr
    -rw-r--r--   1 windy    staff        175  3월  2일  16:28 www.solanara.net.csr.conf
    -rw-r--r--   1 windy    staff        359  3월  2일  16:28 www.solanara.net.key
    
    크론에 아래와 같이 자동으로 등록된다.
    windy@wl ~/.acme.sh $ crontab -l
    10 0 * * * /export/home/windy/.acme.sh/acme.sh --cron --home /export/home/windy/.acme.sh > /dev/null
    
  6. 웹 서버의 인증서 설정

    인증서를 웹 서버에 설치한다. 아파치 웹 서버의 경우 아래를 참고해 설정하자. 윈디하나의 솔라나라: OpenSSL - 서버 - 설정하기도 같이 보면 도움 될것이다.
    SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:!DHE:!SSLv3:!SSLv2:!aNULL:!MD5
    SSLHonorCipherOrder On
    
    SSLCertificateFile "/export/home/windy/.acme.sh/www.solanara.net/www.solanara.net.cer"
    SSLCertificateFile "/export/home/windy/.acme.sh/www.solanara.net_ecc/www.solanara.net.cer"
    SSLCertificateKeyFile "/export/home/windy/.acme.sh/www.solanara.net/www.solanara.net.key"
    SSLCertificateKeyFile "/export/home/windy/.acme.sh/www.solanara.net_ecc/www.solanara.net.key"
    SSLCertificateChainFile "/export/home/windy/.acme.sh/www.solanara.net/ca.cer"
    
    아파치 웹 서버에서, SSL 인증서및 https 설정에 대한 전반적인 사항은 윈디하나의 솔라나라: 아파치 웹 서버 (작성중)를 참조하자.

인증서 확인

와일드카드 인증서

RSS ATOM XHTML 5 CSS3