태그 Archives: 무료SSL

Let’s encrypt 사용 방법 변경

 

신규 서버를 세팅 하고 SSL 추가 했을때 당황스럽게도 위와 같은 메세지를 뿌리며 certbot-auto 가 작동하지 않았다.

 

certbot-auto 의 경우 실행 시킬때마다 자동 업데이트를 하는데 버전이 1.11 버전으로 되어 있을경우 발생하는 메세지로 확인이 된다.

 

링크를 따라 갈 경우 snap을 이용해서 설치해서 사용하라고 안내 되어 있다.

snap 은 yum 혹은 apt-get 과 같은 패키지 관리 툴 이다.

 

CentOS 7.7~8.X 의 경우 epel-release 가 설치 되어 있다면 yum 으로 snap을 설치할 수 있다. (6번 라인은 양반김 처럼 두번 실행해야 할 수 있다.)

 

이후에 snap 을 이용하여 certbot 을 설치한다.

주의: 기존에 yum 이나 apt-get 혹은 dnf 으로 설치된 certbot은 삭제 하고 진행 해야 한다. (일부 버전에서 심볼링 링크가 안걸리는듯… 하여 8번 라인의 명령어를 추가 실행해야 할 수 있다.)

 

/usr/bin 안으로 링크를 생성하기 때문에 ssl 발급/삭제을 위해서는 아래 명령어를 사용하면 되겠다.

 

장점이 하나 있는데 snapd 에서 sequence 기능으로 설치된 패키지를 자동으로 최신 업데이트를 하는데

발급된 인증서의 renew 역시 자동으로 처리가 된다. (/var/lib/snapd/sequence/certbot.json)

 

PS1 . 기존에 git 에서 clone 을 해서 사용한 경우 삭제까지는 필요 없는듯 하고, renew의 경우 메세지는 나오지만 갱신 하는데에는 문제가 없다.

 

PS2. snap 설치가 되지 않는 리눅스의 경우 certbot-auto 구버전 (1.9.0.dev0) 의 실행파일만 덧씌운뒤 renew 실행하면 당장 급한불을 끌 수 있음.

 

PS3. 테스트 해보지 않았으나 acme api를 이용하는 bash, dash, sh 비공식(호환) 스크립트.. https://github.com/acmesh-official/acme.sh

CentOS5 에서 let’s encrypt 설치

일단 설치 법은 크게 다르지는 않지만 몇가지 막히는 부분이 있다.

 

이 다음 git을 통해 letsencrypt를 가져오는 명령어가 그냥 실행하면 되지 않는다.
아마도 git 에서 제공되는 SSL에서 지원하는 suite 가 centos 에 없거나 신뢰할수 있는 CA로 등록되어 있지 않는듯 하다. 때문에 GIT_SSL_NO_VERIFY=true를 하고 진행한다.

일단 설치는 잘 완료되 되었다.

 

이후 발급 시도시 SSL_set_tlsext_host_name 관련 에러가 날것이다.~]# cd /usr/local/letsencrypt

사유는 openssl 버전이 너무 낮기 때문에 발생하는것으로 판단된다.

 

때문에 별도의 수정이 좀 필요하다.

에러 해결은 github 의 antmd님의 댓글에서 발췌 했습니다. ‘ㅅ’a

를 한뒤에 아래 두파일의 의 1239번째줄과 296번째줄을 주석처리한다 ( # 으로.. )
~/.local/share/letsencrypt/lib/python2.7/site-packages/OpenSSL/SSL.py ( 1239줄 )

~/.local/share/letsencrypt/lib/python2.7/site-packages/pip/_vendor/requests/packages/urllib3/contrib/pyopenssl.py ( 296줄 )

 

그다음 다시 발급 시도를 하면 정상 발급이 된다.

 

 

ps. ~/.local의 파일 수정이 잘 안되는 분, 혹은 파일이 없는 경우 아래와 같이 수정된 소스를 다운받아 실행합니다.

 

시놀로지 나스에 Let’s encrypt 인증서 설치하기

20160324_PicPick_210642

우아아앙 DSM 6.0이 나오면서 시놀로지 나스가 Let’s encrypt 무료 인증서 설치가 된다.

 

 

그렇다 바로 해야지 이런건.. 먼저 내 시놀로지 웹스테이션으로 접속 ㄱㄱ..

20160324_PicPick_210245

제어판을 클릭한다.

 

 

 

20160324_PicPick_210249

제어판 내의 아무 메뉴나 클릭한다.

 

 

20160324_PicPick_210259

왼쪽메뉴의 보안 탭으로 들어가서 상단메뉴의 인증서 메뉴로 이동

 

 

20160324_PicPick_210305

당연히 기존 인증서를 교체를 선택하고 다음을 클릭!

 

 

20160324_PicPick_210404

도메인 이름자신의 시놀로지 DDNS 설정한 값을 넣고 이메일내 메일주소를 넣고 주제 대체이름에 내 도메인의 CNAME을 설정한 도메인을 추가해도된다.
예제)  synology.enteroa.kr 입력 ( 물론 사전에 내도메인에 synology 라는 호스트 추가 를  CNAME 으로 해서 enteroa.synology.me 를 해놓았다는 가정하에..)

 

 

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

20160324_PicPick_210447

아 망했어요.. 80 port 여기 로직도 마찬가지로 80 포트로 체크하는 더러운….
참고로 자신이 쓰는 ISP(KT,SKT,U+등 초고속 인터넷 회선 회사들.)의 내부 정책에 따라 인바운드 80 포트는 막는 일이 많습니다.

 

아 U+ 계약 기간 얼마나 남았지 ㅠ_ㅡ KT로 바꿔야 80포트가 열리는데….

 

PS. 2017년 2월 16일 추가사항 ( 여전히 본인은 80포트제한으로 못하고 있지만.. )

혹여 80포트가 열려 있으신 분은 인증서를 발급 받은 뒤에 아래와 같은 방법으로 기본 사용 인증서를
synology.com 에서 자신의 도메인 인증서 ( Let’s encrypt ) 로 바꾸면 된다.
기본 말고 자신이 연결한 도메인, webdav 등등역시 let’s encrypt 인증서로 바꿉니다. (윈도우 10 에서 webdav 를 이용한 네트워크 드라이브 연결의 기본값이 https 로 바뀌었기 때문에 중요 합니다.)


 

이후에 아래 와 같이 HTTPS 관련 옵션을 모두 활성화 하고 웹서버가 재시작 하면 빠른 속도로 웹스테이션을 사용할 수 있다.

잘 설정된 HTTPS 는 일반 HTTP 보다 빠르다 ‘ㅅ’a