Proxy
클라이언트가 자신을 통해서 다른 네트워크에 간접적으로 접속할 수 있게 해주는 컴퓨터 시스템 혹은 응용프로그램을 말함
클라이언트와 서버 사이에서 중계기 역할로 대신 통신을 수행하는 것을 프록시라고 말한다.
목적
- 익명으로 컴퓨터를 유지하기 위해
- 보안 및 통제를 뚫고 나가기 위해
- 역으로 IP 추적을 당하지 않기 위해
- 사용률을 기록하고 검사하기 위해
- 지역 제한을 우회하기 위해
- 밖으로 나가는 컨텐츠를 검사하기 위해
- 악성 코드를 목적으로 전달된 컨텐츠를 검사하기 위해
- 캐시를 이용하여 리소스로의 접근을 빠르게 하기 위해
- 웹 프록시는 웹 페이지를 캐시로 저장하는데 흔히 쓰임
공개 프록시
누구나 자유롭게 접속하여 사용할 수 있는 프록시 서버를 말함
공개 프록시 이용시 자신의 IP 주소를 남기지 않고 익명으로 활동하기 쉬움
때문에 악성 코드, 바이러스 유포 등 불법 행동에 악용되기 쉬워서 많은 프로그램은 공개 프록시를 검출하여 사용을 금지하는 방법을 사용
리버스 프록시
일반 프록시와 같이 클라이언트를 대신해서 서버로부터 리소스를 추출 하고, 이후에 클라이언트에게 마치 웹 서버 자체에게 받은 것처럼 해당 클라이언트로 반환한다.
포워드 프록시는 관련 클라이언트들을 위해 임의의 서버에 접속하는 중간 매개체이지만
리버스 프록시는 관련 서버들을 위해 임의의 클라이언트가 해당 서버에 접속하는 중간 매개체이다.
프록시 역할
- 중계 기능 : 사용자를 대신하여 서버에 접근
- 캐시 기능 : 자주 요구된 정보에 대한 일시적 저장, 빠른 응답, 병목 트래픽 및 대역폭 감소
- 보안 기능 : 실제 사용자의 위치를 감춤
- 방화벽으로 활용 : 잘 설정된 프록시는 효율을 향상시키고 좋은 방화벽이 됨
- IP 주소 절약 : 외부 네트워크에 접속되는 유일한 장비로, 이 서버에서만 유일한 공인 IP 주소 필요
- 부적절한 사이트 접근 방지
'웹 개발' 카테고리의 다른 글
XSS (0) | 2021.03.14 |
---|---|
MyBatis TypeHandler (0) | 2021.03.14 |
정적 코드 분석, Static Code Analysis (0) | 2020.09.23 |
복수 배열 독립 디스크(Redundant Array of Independent Disks, RAID) (0) | 2020.07.10 |
자바스크립트 - 콜 스택 (0) | 2020.01.02 |