YS's develop story

(RP2기 2주차 과제 -part 4) Let's Encrypt를 이용하여 설정한 도메인 주소가 보안연결 HTTPS 연결이 되도록 하기, 도메인 주소 SSL 인증서 받기 본문

기타/라이징프로그래머 2기

(RP2기 2주차 과제 -part 4) Let's Encrypt를 이용하여 설정한 도메인 주소가 보안연결 HTTPS 연결이 되도록 하기, 도메인 주소 SSL 인증서 받기

Yusang 2021. 1. 19. 10:53

네 번째 과제

1. Let's Encrypt를 사용하여 보안 연결 HTTPS 연결이 되도록 하기 위해 SSL 인증서를 얻기.

SSL 인증서란?

SSL 인증서는 인터넷 보안에서 중추적인 요소입니다.

디지털 인증서라고도 하는 SSL(보안 소켓 계층) 인증서는 브라우저 또는 사용자의 컴퓨터와

서버 또는 웹사이트 간에 암호화된 연결을 수립하는 데 사용됩니다.

 

SSL 연결은 인증되지 않은 사용자의 방해로부터 각 방문(세션) 중에 교환된 중요한 데이터(예: 신용카드 정보)를

보호합니다.

 

웹 사이트를 구축하거나 운영할 때 보안 연결인 HTTPS연결은 필수입니다. 

그렇기 때문에 우리는 앞서서 구축한 도메인에 HTTPS연결을 해 볼 것입니다.

Let's Encrypt를 이용하면 무료로 HTTPS 보안 연결을 진행할 수 있습니다.

 

아래의 명령어를 통해 업데이트를 진행 한 뒤 Certbot 소프트웨어를 설치해 줍시다.

sudo apt update

sudo add-apt-repository ppa:certbot/certbot

 

설치 후 다시 업데이트를 진행 한 뒤, Certbot의 Nginx 패키지를 설치합니다.

sudo apt update

sudo apt install python-certbot-nginx

 

이제 Nginx의 설정을 바꾸어야 합니다.

아래와 같이 vi 편집기를 여는 명령어를 입력 후 

sudo vi /etc/nginx/sites-available/default

 

server_name 부분을 적용할 도메인의 이름으로 바꿔줍니다.

 

경 후 아래와 같은 명령어를 통해 성공적으로 적용되는지 테스트를 진행해 봅니다.

sudo nginx -t

 

문제가 없으면 Nginx를 다시 로드해 줍니다.

sudo systemctl reload nginx

 

아래와 같은 명령어를 통해서 원하는 도메인을 Nginx 플러그인을 통해 인증서를 얻을 수 있습니다.

sudo certbot --nginx -d liyusang1.site

 

아래의 과정을 통해 인증서 설치를 진행하게 되고

중간에 HTTP 연결을 어떻게 설정할 건가에 대해 물어봅니다.

 

1을 입력하면 HTTP 연결을  HTTPS로 리다이렉트 하지 않고, 2를 입력하면 리다이렉트 하게 됩니다.

그렇기 때문에 2를 입력하도록 합시다.

 

또한 443 포트를 열어주어야 하기 때문에 아래와 같이

AWS 인스턴스의 인바운드 규칙을 아래와 같이 새로 추가해 줍니다.

 

모든 인바운드 규칙은 아래와 같습니다.

 

이제 아래의 사이트에 접속한 뒤 도메인을 입력해 보고 사이트를 테스트해 봅시다.!

https://www.ssllabs.com/ssltest/

 

SSL Server Test (Powered by Qualys SSL Labs)

SSL Server Test This free online service performs a deep analysis of the configuration of any SSL web server on the public Internet. Please note that the information you submit here is used only to provide you the service. We don't use the domain names or

www.ssllabs.com

 

아래와 같이 테스트가 성공적으로 된다면 인증이 완료된 것입니다.

 

내 도메인으로 접속을 해서 직접 확인해 보면 성공적으로 연결된 것을 확인할 수 있습니다.!!

 

Let's Encrypt의 인증서는 90일 동안만 유효하므로, 90일마다 갱신해줘야 합니다.

하지만 설치를 하는 과정에서 자동으로 갱신 시켜주는 커맨드가 추가되어 있습니다.

갱신이 잘 동작하는지 테스트를 해보고 싶다면 다음과 같은 명령어를 입력해서 테스트를 진행할 수 있습니다.

sudo certbot renew --dry-run
Comments