wafflestudio/seminar-2020

letsencrypt를 통한 SSL 인증서 발급 질문

Opened this issue · 4 comments

다음의 방식대로 진행해보았으나 문제에 직면한 상태입니다.

$ git clone https://github.com/letsencrypt/letsencrypt
$ cd letsencrypt
$ ./letsencrypt-auto --help

정상적으로 설치가 된다면 ./letsencrypt-auto certonly --standalone -d waffle-sugang.shop을 입력하여 저장서를 발급하게 됩니다.
하지만 ./letsencrypt-auto --help 명령어 실행 결과 다음과 같은 오류가 나타납니다.

image


letsencrypt-auto 파일 자체에 문제가 있나 살펴보기 위해 다음의 명령어가 나타나 자연스럽게 sudo를 붙여도 같은 오류가 나타납니다.
image

image


검색을 해보니 certbot-auto의 위치 문제, 인증서 만료, root privilege 등이 나오는데 저 같은 경우는 처음부터 막힌 것 같습니다.

certbot-auto의 위치는 다음과 같습니다.

image


EC2 기본 경로와 내부 파일은 다음과 같습니다.

image

혹시 https로의 연결을 성공하신 분들 중에 이런 에러를 마주하신 적이 있는지 도움을 요청합니다!

저도 비슷한 에러를 보았는데 아마 certbot가 Amazon linux 2에서 공식적으로 지원되지 않아 나는 오류로 보입니다. 저의 경우에는 aws doc에서 제공하는 우회적으로 다운받아 해결하는 가이드를 참고해서 해결하였습니다. 예시는 아파치로 나와있는데, nginx 버전으로 진행하시면 될 것 같습니다. 제가 참고했던 두 링크 첨부합니다.

@jusjinuk 감사합니다. 저도 구글링 도중 linux2 호환 문제를 얼핏 봤는데 쉽지 않은 문제였군요..

  1. 출처

image


  1. 출처
$ sudo certbot certonly -d www.example.com --standalone

실행 이후 waffle-backend.conf 파일 수정하기

server {
  listen       80 default;
  server_name  {도메인 네임};

  location / {
    return 301 {도메인 네임}$request_uri;
  }
}

server {
  listen       443 ssl default;
  server_name  {도메인 네임};

  ssl_certificate      /etc/letsencrypt/live/{도메인 네임}/fullchain.pem;
  ssl_certificate_key  /etc/letsencrypt/live/{도메인 네임}/privkey.pem;

  location / {
    root   /usr/share/nginx/html;
    index  index.html;
    try_files $uri $uri/ /index.html;
  }
}

이렇게 정리해 볼 수 있겠네요