2017년 5월 20일 토요일

렛츠인크립트 매뉴얼 설치

렛츠인크립트의 인증은 도메인이 운영되고 있는 서버와 통신으로 인증서를 생성한다.

해당 서버에서 python 등을 설치하지 못하면 결국 않되다는 소리다.
- 내가 운영중인 서버는 python  이 설치되어 있지않다.
매뉴얼 방식으로 인증받는 방법을 설명한다.

--manual  옵션으로 certbot 이 인증을 진행하지 않고 대기하도록 한다.


certbot --config-dir=/Users/user/cert --work-dir=/Users/user/cert  --logs-dir=/Users/user/cert  certonly --manual  -d wo.yangchigi.com

입력하면 아래와 같은 화면이 표시된다.

Saving debug log to /Users/user/cert/letsencrypt.log
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for wo.yangchigi.com

-------------------------------------------------------------------------------
NOTE: The IP of this machine will be publicly logged as having requested this
certificate. If you're running certbot in manual mode on a machine that is not
your server, please ensure you're okay with that.

Are you OK with your IP being logged?
-------------------------------------------------------------------------------
(Y)es/(N)o: y

-------------------------------------------------------------------------------
Make sure your web server displays the following content at
http://wo.yangchigi.com/.well-known/acme-challenge/U3Cet4... before continuing:

xxxxx.xxxxxx

If you don't have HTTP server configured, you can run the following
command on the target server (as root):

mkdir -p /tmp/certbot/public_html/.well-known/acme-challenge
cd /tmp/certbot/public_html
printf "%s" xxxx.xxxx > .well-known/acme-challenge/xxxxx
# run only once per server:
$(command -v python2 || command -v python2.7 || command -v python2.6) -c \
"import BaseHTTPServer, SimpleHTTPServer; \
s = BaseHTTPServer.HTTPServer(('', 80), SimpleHTTPServer.SimpleHTTPRequestHandler); \
s.serve_forever()" 
-------------------------------------------------------------------------------

Press Enter to Continue

해석하면 다음과 같다.

요청한 url wo.yangchigi.com  의 .well-kwonw/acme-challenge/U3..... 파일 에 U3.... 내용을 쓰라는 내용이다.

호스팅하는 서버에서 public_html(호스팅되는 최상위 폴더, / 가 운영되는) 폴더에 .well-known/acm..../U3  파일을 생성하고, 내용을 그 다음의 내용을 입력한다.

따라하자...

서버에서 해당 폴더를 생성하고, 해당 파일의 내용을 위의 내용처럼 입력하면 된다.
(주의: 내용입력전에 certbot 의 엔터를 입력하면, 인증키값이 변경된다. 입력전까지 그대로 대기 시킨다.)

서버에 해당 파일을 생성후 엔터를 입력하면 아래와 같이 인증이 진행된다.

Waiting for verification...
Cleaning up challenges
Generating key (2048 bits): /Users/user/cert/keys/0001_key-certbot.pem
Creating CSR: /Users/user/cert/csr/0001_csr-certbot.pem
Non-standard path(s), might not work with crontab installed by your operating system package manager

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /Users/user/cert/live/wo.yangchigi.com/fullchain.pem. Your cert
   will expire on 2017-08-19. To obtain a new or tweaked version of
   this certificate in the future, simply run certbot again. To
   non-interactively renew *all* of your certificates, run "certbot
   renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate

   Donating to EFF:                    https://eff.org/donate-le

인증서는 3개월간 유효하다.
3개월전에 인증서의 유효성을 다시 검사해야 한다.
- 귀찮으면 crontab을 이용하여 renew 를 할수 있다.

archive 폴더에 입력한 인증서가 생성되어 있다.
해당 파일을 서버에 업로드에서 인증서를 동작시킨다.
- 아쉽게도 cafe24의 인증서 업로드는 되지 않는다.
- 해당 인증서를 업로드하려 하니 이 종류의 인증서는 지원하지 않는다고 한다.

테스트 서버에 인증서를 설치한다.

테스트 서버는  아파치서버다...

<VirtualHost *:443>
    DocumentRoot "/Library/WebServer/Documents"
    ServerName wo.yangchigi.comm
    SSLEngine on
    SSLCertificateFile /Users/user/cert/live/wo.yangchigi.com//cert.pem
    SSLCertificateKeyFile /Users/user/cert/live/wo.yangchigi.com/privkey.pem
    SSLCertificateChainFile /Users/user/cert/live/wo.yangchigi.com//fullchain.pem

</VirtualHost>

위와 같이 인증서 경로를 설정한다.
apache mod_ssl 을 로드해야 한다.



댓글 없음:

댓글 쓰기

참고: 블로그의 회원만 댓글을 작성할 수 있습니다.

렛츠인크립트 - certbot CentOS 6 에 설치하기

운영중인 서버가 오래된 CentOS 6 이다. 해당서버에 certbot 을 설치하기 위한 설차를 설명한다. 기본적인 설명은 공식사이트 https://certbot.eff.org/#centos6-apache  에 보면 자세히 설명되어 있다. 1...