서기록

2023-07-13 목요일 / seogilang

 오라클 클라우드의 웹서버에서 https를 사용하기 위해서는 SSL 인증서를 발급 받아야 한다.

 SSL 인증서를 발급 받는 방법은 여러가지가 있지만 우분투 환경에서 nginx를 사용한다면 Certbot라는 클라이언트 도구를 사용하여 SSL인증서를 발급 받고 웹서버에 https를 적용할 수 있다.

 

오라클 클라우드 SSL 인증서 발급받기

1. 패키지 설치.

아래의 명령어를 입력하여 필요한 패키지를 업데이트하고 설치하자.

sudo apt update

sudo apt install -y software-properties-common

 

2. Certbot 저장소 추가.

아래의 명령어를 입력하여 Certbot 저장소를 추가하자.

sudo add-apt-repository universe

sudo add-apt-repository ppa:certbot/certbot

 

3. 플러그인 설치.

패키지 목록을 다시 업데이트한 후 Certbot과 Certbot Nginx 플러그인을 설치한다.

sudo apt update

sudo apt install -y certbot python3-certbot-nginx

 

4. 인증서 요청.

certbot를 이요하여 Let’s Encrypt으로부터 SSL 인증서를 요청한다.

(‘seogilog.com’ 및 ‘www.seogilog.com’은 자신의 도메인 이름을 넣으면 된다.)

sudo certbot –nginx -d seogilog.com -d www.seogilog.com

도메인을 입력 후 화면의 안내에 따라 진행하자.(이메일 입력 등)
Certbot은 지정한 도메인에 대한 SSL 인증서를 사용하도록 Nginx 환경 설정을 업데이트한다.

우분투 무료 SSL 인증서 발급 화면

 

SSL 인증서 자동 갱신 설정

 SSL 인증서는 발급 후 일정시간이 지나면 만료되기 때문에 갱신을 해줘야 한다.
만료 날짜를 확인하고 갱신하는 것이 귀찮다면 크론탭을 통해 일정 시간마다 자동으로 갱신되도록 하는 것이 편하다.

1. 크론탭 실행.

sudo crontab -e

 

2. 자동 갱신 작업 입력.

크론탭 파일이 열리면 다음 라인을 추가하면 된다.

0 3 * * * /usr/bin/certbot renew –quiet

 

그 외 내용

– 위 명령 그대로 실행한다면 사용자가 nginx 파일을 직접 수정하지않아도 SSL 인증서와 관련된 내용이 추가된다.

 다만 추가된 내용은 생각보다 정리가 안되어 있을 수 있으니 설정 파일을 백업 후 정리를 해주는 것이 좋다.

 

– 위 크론탭은 매일 오전 3시에 SSL 인증서 갱신 명령어를 실행하며 인증서 갱신이 필요하지 않다면, 갱신 프로세스는 자동으로 스킵된다.