카테고리:

2 분 소요

Https는 필수인가?

개인적인 용도로 사용하는 서버라면 상관 없지만, 회원가입과 같은 개인정보가 사이트에 들어가는 경우

2012년 8월 18일부터 법이 변경되어 정보통신망 이용촉진 및 정보보호 등에 관한 법률에서 제28조제76조가 보안과 과태료에 관련된 내용이며

제15조 제4항 제3호

정보통신망을 통하여 이용자의 개인정보 및 인증정보를 송신·수신하는 경우 보안서버 구축 등의 조치

라고 언급되며 https 연결을 의무화하고 있다.

Ubuntu에서 Nginx를 사용할 때 Let’s Encrypt로 무료로 https 적용하기

타사의 인증서의 경우, 1년간 3만원이며, *.example.com 형태의 와일드카드 인증서의 경우 15만원을 호가한다.

하지만, Let’s Encrypt를 이용하면 서브 도메인 뿐만 아니라, 하나의 인증서로 모든 서브 도메인에 사용 가능한 와일드카드 인증서도 무료로 발급해준다!

1. CertBot 다운로드

apt 저장소의 Certbot도 있지만, 업데이트가 뜸한 편이므로 Certbot의 Repo를 등록하여 해당 패키지를 다운로드 한다.

sudo add-apt-repository ppa:certbot/certbot
sudo apt-get install python-certbot-nginx

## 22.04 jammy 이상
sudo apt-get install python3-certbot-nginx

2. SSL 인증서를 적용하여 https 적용하기

sudo certbot --nginx -d 자신의도메인

이메일 등록과, 약관에 동의하면 기존 http 연결을 어떻게 설정할 것인가에 대한 질문이 나타나게 된다.

  • 1을 입력한다면 http 연결을 https로 자동으로 리다이렉트 하지 않는다.
  • 2를 입력한다면 https 연결을 https 로 자동으로 리다이렉트 한다.

1 또는 2를 입력하고 엔터를 누르면, 구성이 업데이트 되고 Nginx가 재시작된다.

이후 자동으로 등록되며, 3개월뒤에 자동으로 갱신되는 스케쥴도 등록된다.

https://자신의도메인 으로 들어가면 ssl이 적용된 모습을 볼 수 있다.

왜 Let’s Encrypt 인증서는 3개월일까?

발급된 인증서는 약 3개월(90일)간 이용이 가능한데, 기간이 짧은 이유는

  1. 인증서 갱신의 자동화를 권장함
  2. 만약의 사태에 인증서가 무력화되더라도 도난당한 키와 발급 된 인증서는 짧은 기간 동안 유효함

출처 : https://letsencrypt.org/2015/11/09/why-90-days.html

태그: Certbot, https, Let'sEncrypt, nginx, python-nginx-certbot, SSL, ubuntu, 무료, 인증서

업데이트: