상세 컨텐츠

본문 제목

프록시 서버(Proxy Server) 란?

Aws

by 인생도NIO 2022. 7. 6. 13:54

본문

프록시서버는 클라이언트가 자신을통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템이나 응용프로그램을 말한다. 한다리고 서버와 클라이언트 사이에 중계기라고 하며 대리 통신을 수행하는것이다.

 

Proxy Server 규칙

-클라이언트 대신 서버에게 요청을 받아 응답을 해준다

-캐시를 통해 자원들을 저장 가능

-프록시 서버를 거치는 요청 및 응답을 확인할 수 있다.

-프록시 서버로 넘어온 데이터를 조작할 수 있다.

 

프록시의 기능 정리

 

-Cache 기능

캐시를 통해 자원들을 저장가능

 

웹 캐싱 개념

 

위 그림처럼 클라이언트 요청에대해 웹캐싱에서 저장을 하게 되며 네트워크에 직접적으로 저장하지 않기에 네트워크 비용이 감소할수있다.

 

 

- filter 기능

-프록시 서버를 거치는 요청 및 응답을 확인 할 수 있다.

ex ) A라는 클라이언트가 인프런 사이트에 접속을 하려한다. 프록시 서버는 이때 교육용사이트이기에 오케이 들어오라고 승인을 해줌.

ex) B라는 클라이언트가 19금 야동사이트에 접속을 하려한다 프록시 서버는 이때 너 변태구나? 여긴 접속하면 안돼는곳이야 라고 접속을 거부한다. 

- filter기능을통해서 보안성을 올릴수가있으며 , 프록시를 통한 모든 요청/응답 로깅  가능

 

 

-TransCoder 기능

-프록시 서버로 넘어온 데이터를 조작이 가능하다. (데이터 압축 / 언어 변환)

ex) 원 서버에서 아이스크림이란 데이터를 러시아 사용자와  휴대폰 웹브라우저를 이용하는 사람에게 전달을하는데 러시아사람에겐 러시아러로 아이스크림이란걸 보내고, 휴대폰이용자에겐 해당이미지가 너무 크니 사이즈를 줄여서 보내준다.

-장점으로는 네트워크 비용이 감소하고 원서버의 역할이 감소된다.

 

-Anonymizer(익명화) 기능

-프록시 서버로 넘어온 데이터를 조작할 수 있다.

-ex) A -> 익명화 프록시 -> 서버  이렇게 통신한다고 가정해보자

-A라는 유저는 서버에 내 정보를 몰랐으면 하는 바램이 있다.. 이럴때 익명화 프록시라는것을 거치게되면 서버쪽에서는 그의 은밀한 비밀정보를 모르게 될수있다.!

한마디로 익명화된 메시지는 공통식별정보헤더를 포함하지 않고 요청이 가능하다는 얘기이다!

-장점으로는 보안성이 향상 될수 있다.

 

 

이제 Forward Proxy / Reverse Proxy에대해 알아보자

 

Forward Proxy = 클라이언트 대신 요청을 보내준다 

-클라이언트가 서버로 요청할 때 직접 요청하지 않고 먼저 프록시 서버를 통해 요청하는 방식이다

-회사 내부 인트라넷에 이터넷상에있는 서버에 요청할 때 먼저 프록시 서버를 호출하게 되는데 이런 방식이 포워드 프록시이다. 

-서버에게 클라이언트가 누구인지 감추는 역할을 한다 (서버가 응답받은 IP는 포워드프록시 서버의 IP이기 때문에 클라이언트가 누군지 알수없다)

 

포워드 프록시

 

 

 

 

 

Reverse Proxy = 서버의 응답을 대신 클라이언트에게 전달해준다.

 

Reverse Proxy -  Load Balancing (여러대의서버에 요청을 나누어 진행할수있도록 결정해주는작업)

 

리버스 프록시는 포워드 프록시와 반대 반향을 생각하면 됩니다.

클라이언트가 서버를 호출할 때 리버스 프록시를 호출하게 되고 프록시 서버가 서버를 요청하여 받은 응답을 클라이언트에게 전달하는 방식입니다. 

 

이 방식은 내부 인트라넷에 있는 서버를 호출하기 위해서 인터넷 망에 있는 클라이언트가 리버스 프록시 서버에 요청하여 응답을 받는 방식입니다.

 

리버스 프록시는 서버가 누구인지 감추는 역할을 해줍니다.

클라이언트는 리버스 프록시 서버를 먼저 호출하게 되기 때문에 실제 서버의 IP를 알 수 없습니다

 

 

 

관련글 더보기