평범한 이야기들

[SSL] https 적용을 위한 무료 SSL 인증서 적용하기 본문

평범한 개발 이야기/OS

[SSL] https 적용을 위한 무료 SSL 인증서 적용하기

songsariya 2021. 12. 28. 12:14
728x90

http의 보안 프로토콜인 https는 이제 대부분의 사이트에서 적용을 해야 합니다. 그리고 https를 이용하기 위해서는 SSL 인증서를 필요로 하는데 대부분 유료로 판매하며 해당 제품을 구입하고 사용을 해야 합니다. 하지만 https의 사용을 많이 늘리기 위해 무료 SSL 인증서를 배포해주는 곳도 있습니다. ISRG (Internet Security Research Group)에서 제공하는 https://letsencrypt.org 사이트입니다.

무료 SSL 단점

무료인 만큼 단점들이 있습니다.

단점 1. 인증서 유효기간이 90일로 짧습니다. 즉 3개월에 한 번씩 인증서 갱신을 해주어야 하지만, 자동갱신을 설정해두면 어느 정도 커버가 가능하기 때문에 꽤나 괜찮은 단점입니다.

단점 2. 서브도메인 지원이 안됩니다. 서브도메인(abc.도메인.com) 이렇게 인증이 안되고 또 하나 인증서를 받아야 합니다.

하지만 무료인 만큼 어느 정도 감수를 하고 사용을 한다면 꽤나 적절한 내용으로 보입니다.

설치 방법

저는 우분투에서 사용했습니다.

  1. certbot 설치
$ sudo apt-get install certbot
  1. https를 적용한 웹 디렉터리로 이동
$ cd /home/계정/public_html/적용할디렉토리
  1. certbot 실행
$ sudo certbot certonly --webroot -w . -d [사용할도메인주소]

위 명령어를 실행하기 전에 80 포트로 도메인이 연결되어있어야 합니다. 그리고 해당 디렉터리에 파일 생성 권한이 있어야 합니다. 해당 명령어를 통해서 도메인과 해당 디렉터리가 연결이 되어있는지 확인을 하기 때문입니다.

이러면 무료 SSL이 설치가 끝납니다. 설치가 끝나면 /etc/letsencrypt/live/도메인/ 위치에 ssl에 사용할 키들이 저장됩니다.

SSL 자동갱신 사용방법

  1. 인증서 남은 기간 확인

인증서의 남은 기간을 확인하는 명령어는 아래와 같습니다.

$ certbot certificates

위 명령어를 실행하면 현재 가지고 있는 인증서의 상태를 확인할 수 있습니다. certbot 자동 갱신 기능은 남은 일자가 한 달 이내(30일 이내) 여야 동작합니다.

  1. 자동 갱신 동작
$ certbot renew

해당 명령어를 이용해 인증서를 자동 갱신할 수 있습니다. 다만 매번 이렇게 인증서를 갱신해주는 것이 귀찮다면 crontab을 이용해서 명령어를 일정 주기별로 할 수 있게 하면 신경을 덜 쓰고 사용할 수 있습니다.

728x90
Comments