모눈종이에 사각사각

HTTPS 적용하기 본문

Web/Server

HTTPS 적용하기

모눈종이씨 2022. 2. 22. 10:49

🍎 HTTPS 적용하기

 

이전 포스팅에서 AWS EC2 인스턴스와 도메인을 연결해보았다.

 

지금 도메인을 검색해 들어가면 다음과 같이 주의 요함이라고 뜰 것이다.

이는 https가 아닌 http로 접속했기 때문이다.

 

이번 포스팅에서는 https를 적용해보려고 한다.

 

 

1. Certbot 설치

Let’s Encrypt 와 Certbot란?
- Let’s Encrypt : SSL 인증서를 무료로 발급해주는 CA(Certificate Authorities)
- Let’s Encrypt의 SSL인증서는 ACME(Automatic Certificate Management Environment) 프로토콜을 준수하는 프로그램을 이용해 발급을 받을 수 있는데 Let’s Encyrpt는 Certbot 사용을 권장하고 있다.
- 시스템 관리자는 Certbot을 통해 인증서를 직접 요청할 수 있다.

 

- certbot을 위한 저장소를 추가

$ sudo apt update
$ sudo apt upgrade
$ sudo add-apt-repository ppa:certbot/certbot

 

- certbot의 nginx 패키지 설치

$ sudo apt install python3-certbot-nginx

 

2. Nginx 설정 변경

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

    - server_name을 도메인 www.도메인; 으로 변경한다.

 

 

3. 테스트 후 Nginx reload

$ sudo nginx -t
$ sudo systemctl reload nginx

 

4. 방화벽 설정

  - HTTPS에 대한 방화벽 허용 설정이 필요

  - AWS EC2 인스턴스의 경우는 기본으로 방화벽이 비활성화 되어 있음

  - $ sudo ufw status 를 해서 비활성화(Status: inactive) 되어 있으면 넘어간다.

 

5. SSL 인증서 받기

$ sudo certbot --nginx -d [도메인]
// 예시
$ sudo certbot --nginx -d abcabc.shop -d www.abcabc.shop

잘 입력 되었으면 다음과 같이 나온다.

 

 

6. 인바운드 규칙 HTTPS 추가

- AWS EC2 인바운드 규칙에 HTTPS를 추가한다.

- 어디서든 접근할 수 있게 0.0.0.0/0으로 설정한다.

 

 

7. Verifying Certbot Auto-Renewal

$ sudo certbot renew --dry-run

 

8. Nginx 재시작

$ sudo service nginx restart

 

9. HTTPS로 접속

- 자물쇠 모양이 나온다면 성공!

 

 

www.dodo-hannah.shop로 접속할 경우 자물쇠 모양이 잘 뜨는데 반해, dodo-hannah.shop로 접속할 경우 자물쇠 모양이 뜨지 않는 오류가 발생했다.

 

 

그래서 위의 5번 과정부터 다시 진행했다.

 

- reinstall을 선택

 

- HTTP로 접속하려는 것들을 HTTPS로 Redirect하도록 선택

 

- 설정완료

 

 

위와 같이 잘 설정했음에도 불구하고 에러는 똑같이 발생했다.

 

그러나 시간이 지나서 다시 확인해보니 잘 되었다!

반영이 될 때까지 시간이 걸리는 것일까?

아무튼 이제는 잘 https로 접속이 된다.

 

 


참고사이트

https://velog.io/@juwon9733/%EA%B0%80%EB%B9%84%EC%95%84gabia%EB%A5%BC-%EC%9D%B4%EC%9A%A9%ED%95%9C-%EB%8F%84%EB%A9%94%EC%9D%B8-%EC%84%9C%EB%B8%8C-%EB%8F%84%EB%A9%94%EC%9D%B8-%EC%A0%81%EC%9A%A9

https://luminitworld.tistory.com/86

 

Comments