주식 뉴스 분석 프로젝트 <서버 구축><3>

프로젝트 개요 및 각 글들의 링크: https://namth.tistory.com/18

 

이번 글에는 고정된 IP와 도메인을 구매, 연결하였으니 이제 ssl을 설정하려고 한다.

서버는 nginx을 사용하였고, ssl 인증서 발급은 letsencrypt을 사용하였다.(nginx + letsencrypt)

 

 


 

NGINX

 

Nginx 설치

ssl인증서를 발급 전 nginx을 설치한다.

 

# 패키지 리스트 업데이트
sudo apt update

# nginx 설치
sudo apt install nginx

# nginx 상태 확인
systemctl status nginx

 

Nginx 리버스 프록시 설정

 

구입한 도메인의 특정 경로로 http 요청이 올 때, 미리 생성한 주식 뉴스 서버에게 요청을 전달하도록 Nginx을 설정한다.

 

 

1. 서버 블록 작성

주식 뉴스 서버로 요청을 전달할 서버 블록을 작성한다.

 

 

 

 

 

2. 서버 블록 생성

해당 파일을 /etc/nginx/sites-available 아래에 생성한다.

( /etc/nginx/sites-available/mysite.conf )

 

생성한 파일을 /etc/nginx/sites-enabled으로 심볼릭 링크를 생성한다.

( /etc/nginx/sites-enabled/mysite.conf )

# 심볼릭 링크 생성
sudo ln -s /etc/nginx/sites-available/mysite.conf /etc/nginx/sites-enabled/mysite.conf

 

 

3. 서버 블록 적용

/etc/nginx/nginx.conf 파일을 수정한다.

 

생성한 서버 블록 설정 파일을 nginx 설정에서 include를 사용해서 로드한다.

 

 

 

 

4. 테스트

잘 적용되었는지 확인을 위해 nginx를 종료 후 다시 동작시키기보다는 'nginx -t'을 사용해서 검증을 진행한다.

 

아래와 같이 문구가 나왔다면 문법에 문제없이 작성된 것이다.

 

 

이제 설정을 적용시키면 된다.

# 설정파일 load
sudo systemctl reload nginx.service

 

설정한 url로 접속을 하면 아래와 같이 나온다면 잘 설정이 된 것이다.

 

 

nginx index

 

 


 

SSL

1. letsencrypt 설치 

letsencrypt설치를 위해 저장소를 추가한다.

 

# 저장소 추가
sudo apt-add-repository -r ppa:certbot/certbot

 

그 후 설치를 진행한다.

 

# letsencrypt 설치
sudo apt install python-certbot-nginx

 

2. letsencrypt 실행

letsencrypt를 nginx와 연동해서 실행시키기 위해서 아래와 같이 입력을 한다.

 

# --nginx: nginx와 같이 사용
# --email: 사용자 이메일
# -d: 적용시킬 도메인

sudo certbot --nginx --email example@example.com -d www.domain.com

 

이미 진행을 해버린 상태라 진행 사진이 없어는 관계로 설명만 적기로 했다.

 

  • 약관 동의: 동의해야지 사용 가능하므로 y 선택
  • 이메일 사용 여부: 개인에 따라서 선택
  • Http 요청 리다이렉트: 개인에 따라서 선택
    http -> https: 리다이렉트 없음: 기존 서버 설정에 변화가 없으며, 해당 도메인으로 접근 시 Https로만 접근이 가능해진다.
    http -> https: 리다이렉트 설정: 기존 서버 설정에 변화를 주며, http 요청을 https으로 리다이렉트 하게 된다.
  • 인증 유효기간 확인: 아마도 90일로 유효기간을 알려줄 것이다.

 

설정 이미지 및 설명 링크 

https://www.sunny-son.space/AWS/HTTPS%20%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0/

 

3. 테스트

Nginx테스트처럼 해당 사이트에 접근을 해본다.

이전에는 http로 설정되어 있어서 경고가 있었다면

이제는 경고가 사라진것을 확인할 수 있다.

 

 

http

 

 

https

 


다음 글

데이터 베이스들을 설치 및 설정하는 글을 작성할 예정이다.

 

 

# 2022.09.30 수정