슬기로운 개발생활

프록시(Proxy)란?

by coco3o
반응형

Proxy 란?

Proxy 는 '대리' , '대신' 이라는 뜻을 가집니다.

프로토콜에 있어서 대리 응답 등에서 사용하는 개념이라고 할 수 있습니다.

보안상의 문제로 직접 통신을 주고 받을 수 없는 사이에서 프록시를 이용하여 중계를 하는 개념이라고 볼 수 있습니다.

서버와 클라이언트 사이에서 중계기로서 대리로 통신을 수행하는 기능을 '프록시' , 

그 중계 기능을 하는 것을 우리는 '프록시 서버' 라고 부릅니다.

Proxy Server 사용 목적

  • 익명성으로 보안의 목적으로 사용
  • 캐시를 이용한 속도향상
  • 차단된 사이트를 IP 우회하여 접속
  • 원하지 않는 사이트를 차단

 

Proxy Server 종류

프록시 서버는 서버의 위치에 따라 Forward Proxy 와 Reverse Proxy 로 나뉩니다.

 

1. Foward Proxy

일반적인 프록시 서버를 말하며, 클라이언트와 웹 서버의 중계역할로 

클라이언트가 프록시 서버에 요청한 내용을 프록시 서버에서 캐시로 저장해 두면,

나중에 다시 데이터를 요청할 때 캐시된 데이터를 사용하면 되므로 전송 시간을 절약할 수 있습니다.

 

프록시 서버는 클라이언트가 요청하기 전까지 웹 서버의 주소를 알 수 없습니다.

캐싱 기능을 제공하면서 동시에 특정 사이트는 접근 불가능하도록 제한을 걸 수도 있습니다.

[ 클라이언트 <ㅡ> 프록시 서버 ㅡ 서버 ]의 위치에 있는,

위의 개념을 사용하는 프록시 서버를 Forward Proxy 라고 합니다.

클라이언트가 요청을 전달하면 프록시 서버가 목적 사이트의 내용을 받아와서 전달을 '대신' 해주는 것입니다.

 

 

2. Reverse Proxy

클라이언트와 내부망(Private Network) 서버 사이에 위치하여 제어역할을 합니다.

클라이언트가 바로 서버에 데이터를 요청하여 받아올 수도 있지만,

그렇게 하면 중요한 데이터가 있는 DB 가 노출될 수 있따는 위험이 존재합니다.

 

따라서 중간에 프록시 서버를 두고 내부망을 보호하는 역할을 담당하게 하는 것 입니다.

 

[ 클라이언트 ㅡ 프록시 서버 <ㅡ> 서버 ] 의 위치에 있는 개념이 바로 Reverse Proxy 입니다.

클라이언트가 프록시 서버에 데이터를 요청하면

프록시 서버는 내부망 서버에서 데이터를 받아와 클라이언트에게 전달해 주는 개념입니다.

 

 

참고 

반응형

블로그의 정보

슬기로운 개발생활

coco3o

활동하기