WEB

Reverse Proxy란?

긍.응.성 2020. 4. 9. 23:36
반응형

Reverse Proxy 대해 찾아보고 공부하면서 작성한 글입니다. 내용 중 잘못된 설명이 있다면 짚어주세요~

Reverse Proxy 정리

Proxy (-> Client)

  • 서비스를 제공하는 서버 대신 무언가를 수행하는 서버, 주로 로드감소에 사용(캐싱)된다.
  • forward proxy도 proxy라 부른다.
  • 클라이언트 그룹 앞에 위치해있으며, 클라이언트들이 서버에 서비스를 요청할 때, 프록시 서버가 요청을 가로채고 중간자처름 클라이언트를 대신하여 웹 서버와 통신하여 결과를 제공한다.

프록시를 사용하는 이유는 다음과 같다

  1. 로드 경감 - 자주사용되는 데이터를 확보해두고, 이를 캐싱하여 제공. 서버의 로드를 감소시킨다.
  2. 상태나 그룹에 대하여 접근 제어, 결과 필터링
  3. IP 우회 - 프록시를 이용할 떄 IP를 추적하기 어렵다





Reverse Proxy (-> Server(내부망))

  • 다수의 서버를 Proxy 서버 하단부에 위치 시켜두고, 클라이언트로 부터 온 요청을 적절히 내부 서버어게 전달해주는 역할을 수행하는 Proxy
  • WAS 노출시 DB 서버까지 노출될 수 있는 문제를 리버스 프록시를 이용하여 막아낸다.

리버스 프록시를 사용하는 이유는 다음과 같다

  1. Load Balancing
    하나의 프록시로 다수의 서버 요청을 처리하며, 1개의 IP로 다수의 웹서비스를 수행할 수 있다. 사용자들의 요청을 필요한 Application Server에 분산시킬 수 있으며. 서버가 다운되면 로드 밸러서는 트래픽을 나머지 온라인 서버로 Redirection 한다.

  2. Web acceleration
    인바운드와 아웃바운드 데이터를 압축할 수 있으며, 일반적으로 요청되는 콘텐츠를 캐시하여 클라이언트와 서버 간의 트래픽 흐름을 가속화 할 수 있다. 또한 SSL 암호화와 같은 추가 태스크를 수행하여 웹 서버의 로드를 제거할 수 있으므로 이에 따라 성능이 개선된다.

  3. Security and anonymity
    내부망으로 향하는 요청을 차단함으로써, 내부망의 신원이나 보안 공격에 대한 추가적인 방어역할을 할 수 있다.





참고자료

반응형