본문 바로가기
Linux,Cloud

[네트워크] 앞은 forward, 뒤는 reverse? 프록시는 대체 뭘 하는걸까?

by 돈민찌 2023. 3. 23.
반응형

비디오

요약

이 영상에서는 프록시 서버의 두 가지 유형인 포워드 프록시와 리버스 프록시에 대해 설명합니다. 포워드 프록시는 클라이언트와 인터넷 사이에 위치하며, 클라이언트 대신 웹 서버와 통신합니다. 이를 통해 클라이언트의 온라인 신원 보호와 브라우징 제한 우회, 특정 콘텐츠 차단 등의 이점을 제공합니다. 리버스 프록시는 인터넷과 웹 서버 사이에 위치하며, 웹 서버 대신 클라이언트와 통신합니다. 이를 통해 웹 사이트 보호 및 로드 밸런싱 기능을 제공합니다.

팩트

  • 📝 포워드 프록시는 클라이언트와 인터넷 사이에 위치합니다.
  • 📝 클라이언트 대신 웹 서버와 통신합니다.
  • 📝 포워드 프록시를 사용하면 클라이언트의 온라인 신원이 보호됩니다.
  • 📝 브라우징 제한 우회 및 특정 콘텐츠 차단 등의 이점을 제공합니다.
  • 📝 리버스 프록시는 인터넷과 웹 서버 사이에 위치합니다.
  • 📝 웹 서버 대신 클라이언트와 통신합니다.
  • 📝 리버스 프록시를 사용하면 웹 사이트 보호 및 로드 밸런싱 기능을 제공합니다.
  • 📝 리버스 프록시를 사용하면 웹 사이트의 IP 주소를 숨길 수 있습니다.
  • 📝 리버스 프록시 첫 번째 계층은 Cloudflare와 같은 에지 서비스로, 사용자와 가까운 전 세계 수백 곳에 배치됩니다.

스크립트

왜 Nginx는 '리버스' 프록시일까? 그런데 프록시가 뭐지? 어디 한번 볼까요.

두 가지 일반적인 프록시 유형은 포워드 프록시와 리버스 프록시입니다.

포워드 프록시는 클라이언트 컴퓨터 그룹과 인터넷 사이에 있는 서버입니다.

이러한 클라이언트가 인터넷의 웹 사이트에 요청을 하면 포워드 프록시는 중간 관리자 역할을 하여 요청을 가로채고 클라이언트 시스템을 대신하여 웹 서버와 대화합니다.

왜 그런 짓을 하는 걸까요? 여기 몇 가지 일반적인 이유가 있습니다.

  1. 포워드 프록시는 클라이언트의 온라인 ID를 보호합니다. 포워드 프록시를 사용하여 웹 사이트에 연결하면 클라이언트의 IP 주소가 서버에서 숨겨집니다. 프록시의 IP 주소만 표시됩니다. 고객을 추적하는 것은 더 어려울 것입니다.

  2. 포워드 프록시를 사용하여 검색 제한을 우회할 수 있습니다. 정부, 학교 및 대기업과 같은 일부 기관은 방화벽을 사용하여 인터넷 액세스를 제한합니다. 방화벽 외부의 포워드 프록시에 연결함으로써 클라이언트 시스템은 잠재적으로 이러한 제한을 피할 수 있습니다. 방화벽 자체가 프록시에 대한 연결을 차단할 수 있기 때문에 항상 작동하지는 않습니다.

  3. 포워드 프록시를 사용하여 특정 콘텐츠에 대한 액세스를 차단할 수 있습니다. 학교와 기업에서 프록시를 통해 모든 클라이언트를 웹에 연결하도록 네트워크를 구성하고 소셜 네트워크와 같은 사이트를 허용하지 않는 필터링 규칙을 적용하는 경우는 드물지 않습니다. 포워드 프록시는 일반적으로 클라이언트가 애플리케이션을 가리키도록 구성해야 한다는 점에 주목할 필요가 있습니다. 대규모 기관의 경우 일반적으로 투명 프록시라는 기술을 적용하여 프로세스를 간소화합니다. 투명 프록시는 계층 4 스위치와 함께 작동하여 특정 유형의 트래픽을 프록시로 자동 리디렉션합니다. 클라이언트 컴퓨터를 구성하여 사용할 필요가 없습니다. 사용자가 기관 네트워크 내에 있을 때 투명 프록시를 우회하는 것은 매우 어렵습니다.

요약하면, 포워드 프록시는 클라이언트와 인터넷 사이에 위치하고 클라이언트를 대신하여 작동합니다.

이제 리버스 프록시를 살펴보겠습니다.

리버스 프록시는 인터넷과 웹 서버 사이에 있습니다. 클라이언트의 요청을 가로채고 클라이언트를 대신하여 웹 서버와 대화합니다. 웹 사이트에서 리버스 프록시를 사용하는 이유는 무엇일까요? 여기 몇 가지 좋은 이유가 있습니다.

  1. 리버스 프록시를 사용하여 웹 사이트를 보호할 수 있습니다. 웹 사이트의 IP 주소는 리버스 프록시 뒤에 숨겨져 있으며 클라이언트에 공개되지 않습니다. 이것은 웹사이트에 대한 DDoS 공격을 목표로 하는 것을 훨씬 어렵게 만듭니다.

  2. 로드 밸런싱을 위해 리버스 프록시가 사용됩니다. 매일 수백만 명의 사용자를 처리하는 인기 있는 웹 사이트는 단일 서버로 트래픽을 처리할 수 없을 것입니다. 리버스 프록시는 트래픽을 대규모 웹 서버 풀로 분산하여 수신 요청의 양을 조절할 수 있으며, 이 중 하나라도 오버로드되는 것을 효과적으로 방지할 수 있습니다. 이 경우 리버스 프록시가 들어오는 트래픽을 처리할 수 있다고 가정합니다. 클라우드플레어와 같은 서비스는 전 세계 수백 곳에 리버스 프록시 서버를 설치했습니다. 이를 통해 리버스 프록시가 사용자에게 근접함과 동시에 많은 양의 처리 용량을 제공합니다.

  3. 리버스 프록시는 정적 콘텐츠를 캐시합니다. 일정 기간 동안 리버스 프록시에 콘텐츠 일부를 캐시할 수 있습니다. 리버스 프록시에서 동일한 내용을 다시 요청하면 로컬로 캐시된 버전을 빠르게 반환할 수 있습니다.

  4. 리버스 프록시는 SSL 암호화를 처리할 수 있습니다. SSL 핸드셰이크는 계산 비용이 많이 듭니다. 리버스 프록시는 오리진 서버를 이러한 값비싼 작업으로부터 해방시킬 수 있습니다. 모든 클라이언트에 대한 SSL을 처리하는 대신 웹 사이트는 소수의 리버스 프록시의 SSL 핸드셰이크만 처리하면 됩니다.

리버스 프록시는 어디에나 있습니다. 현대 웹사이트에 리버스 프록시의 계층이 많은 것은 드문 일도 아닙니다.

첫 번째 계층은 Cloudflare와 같은 에지 서비스일 수 있습니다. 리버스 프록시는 사용자와 가까운 전 세계 수백 곳에 배치됩니다.

두 번째 계층은 호스팅 제공자의 API 게이트웨이 또는 로드 밸런서일 수 있습니다. 많은 클라우드 공급자는 이 두 계층을 단일 입력 서비스로 결합합니다.

사용자는 사용자와 가까운 에지에서 클라우드 네트워크에 진입하고, 에지에서 리버스 프록시는 고속 파이버 네트워크를 통해 로드 밸런서에 연결하여 요청이 웹 서버 클러스터에 고르게 분산됩니다.

Subscribe at: blog.bytebytego.com

반응형

댓글