이 문서 작성 시점보다 나중에 알아본, 더 나은 방법도 있으니 이 곳을 눌러 새로운 방법을 살펴보시라.
일반적으로 나와있는 Let’s encrypt 가이드는 웹 호스팅 환경에서 적용할 수 없는 경우가 대부분이다. 따라서 여기서는 웹 호스팅 환경에서 쓸 수 있는 가이드를 제시하고자 한다.
필요한 것들
- 호스팅 외 리눅스 환경 (Bash on Windows, Ubuntu 가상 머신 등)
- CPanel 접근이 가능한 호스팅 (Bluehost같은 외국 호스팅은 대부분 가능)
과정
- 우선 리눅스 환경에 git을 설치한다.
sudo apt install git
- 다음 git으로 Let’s encrypt를 불러온다.
git clone https://github.com/letsencrypt/letsencrypt
- letsencrypt 폴더에 들어간 뒤, 스크립트를 실행한다.
cd letsencrypt
./letsencrypt-auto certonly -a manual –rsa-key-size 4096 -d (적용할 도메인) - 그럼 다음과 같은 과정이 진행된다. 처음 화면에는 이메일을 써준 후, 다음은 계속 엔터만 눌러주면 진행된다. 파란 창이 아닌 검은 화면에 글씨가 나올때까지 진행한다.
- 다음으로 acme-challenge가 나온다. 화면에 나오는 대로 호스팅 업체 public_html에 .well-known/acme-challenge 폴더에 지시하는 파일명과 파일 내용대로 파일을 생성하면 된다.
- 완료되고 인증서가 생성되었다. 폴더로 가 모두 로컬로 복사한다. 참고로 해당 폴더는 접근이 막혀있으므로 cd로 접근 시 sudo -s가 필요하다.
- CPanel에 SSL/TLS를 찾는다.
- 먼저 맨 위의 개인 키에 들어간다.
- 맨 밑의 .key파일 업로드 란으로 가 ‘파일 선택’을 누른다. 여기서 생성된 키 중 privkey.pem을 선택해 업로드한다.
- 그다음 세 번째 인증서 란으로 간다. 여기서 chain.pem과 cert.pem을 업로드한다.
- 마지막으로 사이트에 SSL 설치 및 관리(HTTPS)에 들어간다.
먼저 도메인을 선택한 뒤, 도메인 기준 자동 완성을 눌러 잘 완성되는 것을 확인한다.
- 마지막으로 맨 아래 있는 인증서 설치를 누른다.
- 이제 https://로 접근해서 확인해보자.