구축된 내 웹사이트 주소창에 빨간색으로 ‘안전하지 않음’ 경고 문구가 뜬다.
이는 SSL 인증서가 없어서 ‘HTTPS’가 아닌 ‘HTTP’로 접속되어서 그렇다.
특히 직접 서버를 운영한다면 더더욱 신경 써야 할 부분이다.

이 글에서는 리눅스 서버 운영 초보자도 쉽게 따라 할 수 있도록
무료 SSL 인증서를 발급받아 웹사이트를 http에서 https로 안전하게 변경하는 방법을 설명한다.
복잡한 코드나 전문 용어 없이, 누구나 따라 할 수 있도록 구성하였다.

SSL 인증서, 왜 필요할까?

우선 SSL 인증서, 그리고 ‘HTTPS’로 접속하는 것이 왜 필요한지에 대해부터 알아보자.

SSL 인증서는 웹사이트와 사용자 브라우저 간의 통신을 암호화하여 개인정보 유출을 방지하는 보안 장치이다.
쉽게 말해, 우리 집의 현관문과 같다고 생각하면 된다.
http는 문이 활짝 열려있는 상태라면,
https는 튼튼한 잠금장치가 설치된 상태라고 할 수 있다.
SSL 인증서가 있으면 누릴 수 있는 효과는 다음과 같다.

  • 사용자 정보 보호: 비밀번호, 신용카드 정보 등 민감한 데이터를 안전하게 보호한다.
  • 웹사이트 신뢰도 향상: 주소창에 자물쇠 마크가 표시되어 사용자에게 안전한 웹사이트임을 알려준다.
  • 검색 엔진 최적화(SEO) 효과: 구글 등 검색 엔진은 https 웹사이트를 검색 결과 상위에 노출한다.

무엇보다도, 구글 등 검색 엔진은 HTTPS 웹사이트를 검색 결과 상위에 노출하기 때문에
내 웹 사이트를 가능한 많은 사람에게 노출하기 위해서는 필수라고 볼 수 있다.

Let’s Encrypt, 무료로 SSL 인증서 발급받기

예전에는 SSL 인증서를 유료로 구매해야 했지만,
지금은 무료로 발급받을 수 있다!
바로 ‘Let’s Encrypt’라는 공인된 기관을 이용하는 것이다.

SSL 인증서를 발급 받기 위해서는 ‘Certbot’를 이용한다.
Certbot은 Let’s Encrypt에서 제공하는 무료 SSL 인증서 발급 및 설치 도구이다.
리눅스 서버에 Certbot을 설치하면 몇 가지 명령어만으로 간편하게 SSL 인증서를 발급받고 적용할 수 있다.

Certbot 설치하기

나는 서버를 Nginx를 사용한다.
때문에 Certbot 및 관련 Nginx 플러그인을 설치해야 한다.
터미널에서 아래의 명령어를 입력하여 설치를 진행하자.
만약 Nginx 서버가 구축되어 있지 않다면 아래의 글을 참고하자.
> 리눅스 – Nginx 설치 및 웹 서버 구축하기 (+PHP FastCGI, 워드프레스)

sudo apt install certbot python3-certbot-nginx
ShellScript

SSL 인증서 발급받기

설치된 Certbot을 사용하여 Let’s Encrypt 기관의 SSL 인증서를 발급받아 보자.
마찬가지로 설치를 진행하였던 터미널에 아래의 명령어를 입력하면 된다.
단, 도메인 이름은 반드시 자신의 도메인 이름으로 입력해야 한다.

sudo certbot --nginx -d 도메인이름

# 예시 : eunbyeol.co.kr SSL 인증서 발급받기
# sudo certbot --nginx -d eunbyeol.co.kr
ShellScript

위 명령어를 실행하면 Certbot이 자동으로 Nginx 설정을 수정하고 인증서를 발급하여 설정한다.
따로 Nginx를 설정할 필요가 없어서 매우 편리하게 무료 SSL 인증서를 발급 받을 수 있다.

SSL 인증서 적용을 위한 nginx 서비스 다시 시작

Certbot이 Nginx에 SSL 인증서를 적용하도록 자동으로 설정이 변경되었을 것이다.
이같은 변경사항 적용을 위해서는 Nginx 서버를 다시 시작해주어야 한다.

sudo service nginx restart
ShellScript

내 도메인에 접속해서 확인해보기

자신의 도메인에 접속해보자.
주소창을 보면 ‘https’로 접속 된다면 정상적으로 적용된 것이다.

SSL 인증서가 적용되어 https 로 접속되는 도메인 예시 이미지

Similar Posts

댓글 남기기