Proxy란?

midas·2022년 2월 20일
0
post-custom-banner

Proxy란?

  • 대리(남을 대신하여 일을 처리함) / 대신한다 / 징검다리
  • Spring Proxy, Proxy Pattern, Network Proxy(일반적인 Proxy)
  • Proxy Server란?
    • Client와 Server간의 중계 서버
    • 통신을 대리 수행하는 서버
    • 캐시 / 보안 / 트래픽 분산 등 여러 장점을 가질 수 있다.
  • Forward Proxy (일반적인 프록시)
    • 사용자들이 사이트나 어디 접속할 때, 자기 IP를 숨기기 위해 중간에 Porxy를 둬서 이 것을 통해서 Data를 주고 받는다.
    • 특징 1 - 캐싱(Client가 요청한 내용을 캐시)
      • 전송시간 절약.
      • 불필요한 외부 전송 안해도 됨.
      • 외부 요청 감소 → Network 병목현상 방지
    • 특징 2 - 익명성 (Client가 보낸 요청을 감춤)
      • Server가 응답받은 요청을 누가 보냈는지 알지 못하게!
        (Server가 받은 요청 IP = Proxy IP)
  • Reverse Proxy
    • Client에게서 Server 정보를 감추는 것
    • 특징 1 - 캐싱
    • 특징 2 - 보안 (Server정보를 Client로 숨김)
      • Client는 Reverse Proxy를 실제 서버라고 생각하여 요청
        → 실제 서버 IP는 노출되지 않는다.
    • 특징 3 - Load Balancing (선택적)
      • 부하분산 : 해야될 작업을 나누어 서버의 부하를 분산 시키는 것
      • Load Balancer란?
        • 여러대의 Server가 분산 처리할 수 있도록 요청을 나누어지는 서비스
        • 종류 : L2, L3, L4, L7
        • L2 : Mac 주소를 바탕으로 Load Balancing
        • L3 : IP 주소를 바탕으로 Load Balancing
        • ⭐️ L4
          • Transport Layer(IP & Port) Level에서 Load Balancing
            (TCP / UDP)
        • ⭐️ L7
          • Application Layer(User Request) Level에서 Load Balancing
            (HTTPS / HTTP / FTP)
          • 블로그 접속 → /category, /search 담당 서버들로 Load Balancing
  • Attack
    • MITM 공격 (중간자 공격)
      • ex) 카페 WIFI
  • Tool
    • Burp Proxy
profile
BackEnd 개발 일기
post-custom-banner

0개의 댓글