앞 포스팅까지만 한다면, 주소창에 탄력적 IP 주소를 입력했을 때 연결 거부가 뜰 것이다.
이에 대한 해결방법인 nginix를 적용하는 방법과 더 나아가 포트포워딩 방법까지 다루어보려고 한다.
nginx 설치하기
(1) EC2 서버에 접속한다.
저는 AWS 사이트 내에서 "EC2 인스턴스 연결" 메뉴를 통해 접속하였습니다.
(2) nginx 설치, 실행하는 명령어를 입력한다.
명령어는 아래와 같으며 ubuntu 기준입니다.
sudo apt update
sudo apt install nginx
sudo service nginx start
sudo service nginx status
(3) 마지막 명령어를 통해 nginx가 정상적으로 active 되어 있는지 확인한다.
보안그룹 설정하기
(1) 생성한 EC2 인스턴스 내 "보안" 메뉴에 접근한다.
(2) 보안그룹을 클릭한다.
(3) 보안그룹 내 "인바운드 규칙"을 아래와 같이 설정한다.
(4) 이후 주소창으로 탄력적 IP 주소를 검색하면 아래와 같은 화면이 나온다 !!!
포트포워딩 하기
(1) EC2 인스턴스에 접속하여 아래 명령어를 입력한다.
(사진은 GCP에서 연결한 사진으로 UI가 조금 다를 수 있습니다.)
cd /etc/nginx/sites-available
sudo vi default
(2) default 파일을 수정한다.
우선 수정 전 파일 내용은 아래와 같다.
스크롤을 내리다 보면 아래와 같은 부분이 나오는데 주석을 제거하고 location에 몇 줄을 추가하면 된다.
윗 부분은 모두 주석 처리를 한다. 최종적으로 default 파일에 주석처리가 안 된 내용은 아래와 같아야 한다.
이때 원하는 주소는 보통 서버 IP 주소로 설정한다. 이렇게 설정하면 해당 주소에 80번 포트로 들어오는 요청이 8080번 포트로 접속할 수 있도록 한다.
server {
listen 80;
listen [::]:80;
server_name localhost;
location / {
proxy_pass {원하는 주소}:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
}
}
(3) 심볼릭 링크를 생성하고 확인한다.
sudo ln -sf /etc/nginx/sites-available/default /etc/nginx/sites-enabled
cd /dtc/nginx/sites-enabled
ls -l
(4) nginx를 재가동한다.
sudo service nginx reload
sudo service nginx restart
참고 : spring boot nginx 연결 : 네이버 블로그 (naver.com)
'Cloud > AWS' 카테고리의 다른 글
[AWS] #3. RDS 설정 및 EC2 연결 (0) | 2024.02.08 |
---|---|
[AWS] #1 서버 배포를 위한 EC2 생성 (1) | 2024.02.05 |
클라우드 서비스 - IaaS, PaaS, SaaS (0) | 2024.01.03 |