해결된 질문
작성
·
282
0
안녕하세요 포워드 프록시 서버 문의드립니다.
보여주신 강의 자료에는 웹 서버가 캐시 서버보다 앞에 존재하는 그려져 있는데
포워드 프록시 서버에 대해 찾다 보니깐 포워드 프록시 서버는 웹 서버보다 앞에 존재하는 걸로 나와있는데 어떤게 맞는걸까요?ㅠㅠㅠㅠㅠ
답변 1
0
안녕하세요, 문의하신 내용에 대해 답변드립니다.
일단 결론부터 얘기하면 웹서버 - 포워드 프록시 서버(캐시 서버) - 웹애플리케이션 서버, 포워드 프록시 서버(캐시 서버) - 웹서버 - 웹애플리케이션 서버 이 2가지 구성 모두 사용할 수 있습니다. 제가 강의에서 웹서버 - 포워드 프록시 서버 - 웹애플리케이션 서버로 설명드린 이유는, 앞서 웹서버와 웹애플리케이션 서버에 대해 말씀드렸고, 이 두 서버의 역할과 명확하게 구분하기 위해 일부러 웹서버뒤에 포워드 프록시 서버를 두었습니다.
좀 더 이해하기 쉽게 설명드리기 위해, 2가지 구성의 예시를 들어보겠습니다.
시스템 구성 요소 : 클라이언트, 웹서버, 포워드 프록시 서버, 웹애플리케이션 서버
클라이언트 - 웹서버 - 포워드 프록시 서버 - 웹애플리케이션 서버 구성
1) 상황 예시
웹서버와 웹애플리케이션 서버가 같은 네트워크에 위치하고, 클라이언트와 웹서버가 직접, 다이렉트로 통신하는 구조입니다.
클라이언트의 요청이 동일하게, 반복적으로 들어오면 포워드 프록시 서버는 캐싱 역할을 수행하며, 웹서버는 클라이언트의 요청을 받아 웹애플리케이션 서버에 전달하는, 동적 콘텐츠 생성 및 반환 역할에 집중합니다. 즉, 웹애플리케이션 서버로부터 동적 콘텐츠를 받든, 포워드 프록시 서버에서 받든 상관없이 전달받은 결과를 클라이언트에 반환하는 것이 주 임무입니다.
2) 이 구성을 사용하는 경우
클라이언트가 웹서버에 직접 노출되어도 문제가 없는 경우에 적합합니다.
주로 대 고객 서비스와 같은 대외 서비스용 시스템 구성 시 사용되며, 클라이언트와 웹서버가 직접 통신해도 괜찮은,보안 상 큰 문제가 없는 상황에서 주로 선택하는 구성입니다.
클라이언트 - 포워드 프록시 서버 - 웹서버 - 웹애플리케이션 서버 구성
1) 상황 예시
클라이언트와 웹서버직접, 다이렉트로 통신하는 것이 보안 상 문제가 발생할 소지가 있어 클라이언트가 노출되지 않아야 하는 구조입니다.
클라이언트가 요청을 보내면 포워드 프록시 서버가 받아 웹서버에 전달하는 중개자 역할을, 동시에 클라이언트의 반복적인 요청을 처리하는 캐싱 역할을 수행합니다.
주로 보안을 강화하고 클라이언트의 IP를 숨기기 위해 사용될 수 있는 구성입니다.
2) 이 구성을 사용하는 경우
클라이언트가 노출되는 것을 방지하고자 할 때 적합합니다.
클라이언트와 웹서버 사이에 포워드 프록시 서버를 두어 클라이언트의 실제 IP를 숨김으로써 보안을 강화시키기 위해 사용합니다.
이러한 구성은 기업의 임직원들만을 위한 서비스, 대내 서비스용 시스템 구성시 사용되며, 클라이언트의 노출이 보안 정책상 문제가 되는 경우에 주로 선택하는 구성입니다.
따라서 간단히 정리하면, 포워드 프록시 서버는 웹서버 앞에 있거나 뒤에 있는 경우 모두 사용될 수 있습니다. 그리고 포워드 프록시 서버가 웹서버 뒤에 놓이는 경우는(강의 자료) 클라이언트가 노출되어도 괜찮은 대외 서비스용 시스템에 주로 사용되며, 포워드 프록시 서버가 웹서버 앞에 놓이는 경우는 클라이언트가 노출되면 곤란한 대내 서비스용 시스템에서 보안을 강화하기 위한 목적으로 주로 사용된다고 보시면 되겠습니다.
도움이 되었기를 바랍니다.