프록시 서버


프록시와 프록시 서버


프록시란?

프록시는 사전적으로 ‘대신’, ‘대리’를 뜻한다.

서버와 클라이언트 사이에 중계기로서 대리로 통신을 수행하는 것을 말한다.


프록시 서버란?

프록시 서버는 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로

접속할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램을 가리킨다.

서버와 클라이언트 사이에 중계 역할을 수행 하는 것을 말한다.


프록시 서버 중 일부는 프록시 서버에 요청된 내용들을 캐시를 이용하여 저장한다.

이렇게 캐시를 해 두고 난 후에, 캐시 안에 있는 정보를 요구하는 요청에 대해서는

원결 서버에 접속하여 데이터를 가져올 필요가 없게 됨으로써 전송 시간을 절약할 수

있게 됨과 동시에 불필요하게 외부와의 연결을 하지 않아도 된다 는 장점을 갖게 된다.

또한 외부와의 트래픽을 줄이게 됨으로써 네트워크 병목 현상을 방지 하는 효과도

얻을 수 있게 된다.


프록시 서버의 목적은 다음과 같다.

• 보안 유지(IP 추적 방지)

• 캐시를 사용하여 리소스로의 접근을 빠르게 하기 위함.

• 네트워크 서비스나 콘텐츠로의 접근 정책을 적용하기 위함.

• 사용률을 기록하고 검사하기 위해(인터넷 이용을 파악)

• 보안 및 통제를 뚫고 나가기 위해

• 데이터 유출 보호

• 지역 제한을 우회하기 위해


포워드 프록시(Forward Proxy)


포워드 프록시란?

VPN이 나오기전에는 한국에서 접속할 수 없는 사이트를 프록시 서버를 통해 우회해서

접근했다고 한다. 여기서 사용된 프록시 서버가 포워드 프록시 서버인 것이다.


포워드 프록시는 일반적으로 프록시, 프록시 서버 혹은 웹 프록시라고 불리고

클라이언트들 앞에 위치한다. 클라이언트들이 서버에 요청을 보내면 포워드 프록시가

해당 요청을 서버 대신 받아서 서버에게 전달(Forward) 해준다. 마찬가지로 서버의 응답을

포워드 프록시가 대신 받아 클라이언트에게 전달해준다.

이러한 특징으로 실제 서버는 어떤 클라이언트가 요청을 했는지 전혀 알 수가 없다.

보통은 사내 인트라넷에서 많이 사용된다고 한다.


왜 사용할까?

• 캐시를 사용하여 리소스로의 접근을 빠르게 하기 위함.

• 데이터 유출 보호 (어떤 기기가 어떠한 요청을 보냈는지 모두 기록)

• 네트워크 서비스나 콘텐츠로의 접근 정책을 적용하기 위함. (정해진 용도로 사용)

• IP 우회


리버스 프록시(Reverse Proxy)


리버스 프록시란?

리버스 프록시 서버는 포워드 프록시의 반대 개념이다. 여기서 프록시 서버는

애플리케이션 서버의 앞에 위치하여 클라이언트가 서버를 요청할 때 리버스 프록시를

호출하고, 리버스 프록시가 서버로부터 응답을 전달받아 다시 클라이언트에게 전송하는

역할을 한다. 이 경우 클라이언트는 애플리케이션 서버를 직접 호출하는 것이 아니라

프록시 서버를 통해 호출하기 때문에 리버스 프록시는 애플리케이션 서버를 감추는

역할을 하게 된다.


리버스 프록시 서버는 한 서버에 부하를 막기 위해서 클라이언트의 요청을

분산하여 요청(관리)해주는 로드 밸런싱 기능을 제공해주기도 한다.

로드 벨런싱 포스팅에 관련 내용이 정리되어 있다.


리버스 프록시 서버는 NginX나 Apache Web Server를 많이 사용한다.


왜 사용할까?

• 로드 밸런싱

• 캐시를 사용하여 리소스로의 접근을 빠르게 하기 위함.

• 보안