[Network] 중계자, Proxy server

muz·2022년 1월 6일
0
post-thumbnail

Proxy server?

프록시 서버는 리소스를 요청하는 client와 리소스를 제공하는 server 사이의 중개자 역할을 하는 서버 어플리케이션이다. 웹페이지나 파일같은 요청된 리소스를 수행할 수 있는 서버에 직접 접속하는 대신, client는 요청을 평가하여 요구되어지는 네트워크 트랜잭션을 수행하는 프록시 서버에 직접 접속한다.

이 서버는 요청의 복잡함을 단순화하거나 제어하거나, 부하 분산이나 프라이버시(개인정보) 보호, 보안과 같은 추가적인 이익을 제공한다.

즉, 프록시 서버는 client를 대신해 서비스를 요청하고 대신 작동하며, 리소스 서버에 요청의 실제 origin을 잠재적으로 마스킹할 수 있다.

종류

프록시는 사용자의 로컬 컴퓨터에 존재하거나, 컴퓨터와 인터넷의 목표 서버 사이의 임의의 어느 지점에나 위치할 수 있다. 일반적으로 2가지 종류의 프록시서버가 있다.

1. open proxy (=forward proxy)


: 개방형 프록시는 인터넷 사용자가 접근할 수 있는 forward proxy이다. 인터넷 상의 어디서든 request를 주고 받는 열린 프록시이다.

1. Anonymous proxy (익명 프록시)

: 프록시 서버로서 정체성을 드러내지만, client의 원래 IP주소는 공개하지 않는다. 쉽게 발견할 수 있지만 원래 IP주소를 감추기 때문에 일부 사용자에게 이익이될 수 있다.

2. Transparent proxy (투명 프록시)

: 프록시 서버뿐만 아니라 HTTP헤더 필드의 지원으로 자신을 식별한다. 원래 IP주소도 검색할 수 있다. 이를 사용할 경우 더 빠른 검색을 위해 웹 사이트를 캐시할 수 있다.

2. reverse proxy


: 역방향 프록시(or 대리 서버)는 client에 일반 서버로 나타나는 프록시 서버다. 프록시 서버의 응답이 원래 서버에서 직접 온 것처럼 반환되어 client는 원래 서버에 대한 지식이 없다. 이는 인터넷에서 request를 받으면 내부망 내의 서버로 전송해준다. 인터넷에서 들어오는 모든 트래픽, 이웃하는 웹 서버 중 하나의 목적지가 있는 모든 트래픽은 프록시 서버를 통과한다.

reverse proxy server를 설치하는 이유?

  1. 암호화/SSL 가속이 가능하기 때문
  2. 로드 밸런싱(로드를 여러 웹 서버에 분산시킬 수 있고, 각 웹 서버는 자체 애플리케이션 영역을 서비스함)이 가능하기 때문
  3. 정적 콘텐츠를 캐싱하여 웹 서버를 오프로드 할 수 있기 때문
  4. 콘텐츠를 최적화하고 압축하여 로딩 시간을 단축시켜주기 때문
  5. 웹 서버가 전송한 콘텐츠를 캐싱하여 웹 서버의 느린 client에 의해 발생하는 리소스 사용량을 줄이고, client에 천천히 스푼 공급을 하기 때문
  6. 일부 OS 및 웹 서버별 공격으로부터 보호할 수 있기 때문
  7. 조직 내부의 방화벽 서버와 통신할 수 있고, 서버를 방화벽 뒤에 유지하면서 일부 기능에 대한 엑스트라넷 액세스를 제공할 수 있기 때문
profile
Life is what i make up it 💨

0개의 댓글