CS/네트워크
프록시에 대해서 알아보자 (Forward Proxy, Reverse Proxy)
stars_one
2025. 2. 20. 23:27
프록시란 말은 여기저기서 들어봤지만, 정확히 어떤 의미인지는 모르고 살아왔다.
하지만, nginx proxy manager를 통해서 배포하다가
proxy에 대한 개념을 익히게 되었다.

nginx proxy manager를 통한 배포내용은 다음 게시글에 작성 하려고 한다
1. 프록시는 뭘까?
프록시 서버는 클라이언트가 자신(프록시 서버)을 통해서 다른 네트워크 서비스에
간접적으로 접속할 수 있게 해 주는 컴퓨터 시스템이나 응용 프로그램을 가리킨다.
서버와 클라이언트 사이에 중계기로서 대리로 통신을 수행하는 것을 가리켜 '프록시', 그 중계 기능을 하는 것을 프록시 서버라고 부른다.
2. Forward Proxy
포워드 프록시는 무엇일까?
포워드 프록시 서버는 위와 같은 구조를 가지고 있다.
클라이언트가 직접 인터넷에 접근하는 것이 아닌 클라이언트 단 앞에 Rroxy Server를 위치시켜
Proxy Server가 요청을 받고 인터넷에 연결하여 서버와 통신 후 클라이언트에게 반환하는 방식
Forward Proxy의 장점은 아래와 같다!
Proxy는 캐싱 기능을 사용할 수 있어서, 이전의 요청과 동일한 요청이 수신될 경우
프록시 서버에 응답을 저장해두고, 클라이언트에게 전달하여 불필요한 부하를 줄여 성능을 향상시킬 수 있다.
서버 측에서 클라이언트의 요청을 받을 때 클라이언트 IP가 아닌 프록시 서버의 IP로
요청을 받게됨으로 서버 측이 클라이언트의 정보를 모르게 할 수 있다.
보안을 위해 특정 웹 서버 에만 접근할 수 있도록 제한을 해두는 경우,
Forward Proxy를 사용함으로써 정해진 웹 서버에만 접근할 수 있도록 접근 제한 설정을 할 수 있다.
3. Reverse Proxy
리버스 프록시란 무엇일까?
리버스 프록시는 서버 앞에 위치하고,
클라이언트가 요청할 때 직접 웹 서버에 요청하는 것이 아닌
서버 앞에 설치된 Proxy Server에 요청을 하고
Proxy Server가 서버로 요청을 보내고, 클라이언트에게 응답하는 방식이다
리버스 프록시의 장점은 아래와 같이 볼 수 있다!
직접 클라이언트와 통신을 하다 WAS가 공격에 당할 경우 DB서버까지
공격을 당할 수 있는 상황이 생기는데 이때 Reverse Proxy 방식을 사용하여
Reverse proxy Server를 DMZ에 두고 실제 서비스 서버는 내부망에 위치시켜 공격에 대한 부담을 줄일 수 있다.
Forward Proxy와 마찬가지로 캐싱 기능을 이용해 중복된 요청이 전송될 경우 프록시에 응답을 캐싱함으로써
불필요한 부하를 줄여 성능을 향상시킬 수 있다.
Reverse Proxy를 사용함으로써 본래 서버의 IP 주소를
노출시키지 않고 통신함으로써 본 서버의 정보를 숨기는 효과가 있다.
Proxy Server의 로드밸런싱 기능을 이용하여 Proxy Server를 여러 개의 서버 앞에 두고
사용할 경우 특정 서버가 과부화되지 않게 부하를 조절할 수 있다.
728x90