it 공부 일기 - 워게임 ctf 풀이 및 언어 강좌모음

ubuntu 18.04 nginx 리버스 프록시 설정 본문

ServerHosting

ubuntu 18.04 nginx 리버스 프록시 설정

kimtong 2021. 1. 13. 15:20

ubuntu 18.04 LTS 버전에서 nginx 를

apt-get install nginx -y로 설치한 다음 

 

리버스 프록시를 설정하기 위해선

 

* 리버스 프록시란?

         리버스 프록시는 다른 서버의 정보를 프록시를 통해 받아오는것을 뜻한다.

 

현재 테스트 하기 위해

예시를 들어볼것이다.

내가 원하는 기능은

testnginxpage.kro.kr 도메인을 가지고

8000포트로 동작되고있는 서버를

blog.testnginxpage.kro.kr 로 리버스 프록시 설정할것이다.

 

하기위해서는

kro.kr 에서

testnginxpage.kro.kr 도메인을 구매한 다음

A 레코드로 사진의 서버 아이피 추가

ip연결(A)에 내 서버 아이피를 입력하고

testnginxpage.kro.kr 과

blog.testnginxpage.kro.kr 를 추가한다음

 

우분투에서

 

cd /etc/nginx/sites-available

cd 명령어로 /etc/nginx/sites-available 디렉토리로 체인지하고

vim default

default 파일을 열고 밑의 설정처럼 바꾸면 된다.

server {
        listen 80 default_server;
        listen [::]:80 default_server;

        
        root /var/www/html;
        
        index index.html index.htm index.nginx-debian.html;
        
        server_name testnginxpage.kro.kr;
        
        location / {
                try_files $uri $uri/ =404;
        }
        
}

server {
        listen 8000 default_server;

        listen [::]:8000 default_server;

        root /var/www/port;

        index index.html;

        server_name testnginxpage.kro.kr;

        location / {
                try_files $uri $uri/ =404;
        }
}


server{


        index index.html index.php;

        server_name blog.testnginxpage.kro.kr;

        location / {
                proxy_pass http://127.0.0.1:8000;
        }

}

 

proxy_pass http://127.0.0.1:8000을 추가해야지 리버스 프록시가 적용된다.

 

 

* 127.0.0.1:8000 이 아니여도 자신이 원하는 프록시 서버 주소를 넣으면 된다.

 

그리고 이제 설정 파일을 적용시키기 위해

systemctl restart nginx
service nginx restart

위 명령어를 입력하여 nginx 서비스 재시작 후

 

이런식으로 localhost:8000 포트를 /var/www/port 위치로 오픈한 다음

server 를 blog.testnginxpage.kro.kr로 하기 위해 제일 하단에 추가하고

 

vim /var/www/port/index.html

vim을 이용하여 /var/www/port/ 위치에 파일을

이런 내용으로 저장하고나면

이렇게 웹 페이지에 정상적으로 나와있는것을 볼 수 있다.