프록시 서버 Porxy Server 개념 및 설정방법

 

프록시 서버, Porxy Server 개념 및 종류

프록시 서버 Porxy Server 개념 및 설정방법

 

1. 프록시, 프록시 서버 개념

 

인터넷을 사용하거나 활용할때 프록시 설정이라는 말이 나옵니다. 나름 IT 개발업무도 진행한 저도 이해하기 어려운 개념이고 언어인데요. 계속 주변을 맴돌길레 이번에 확실히 이해하자고 붙잡아 봤습니다. 

제가 찾아보고 이해한 부분을 설명드려보겠습니다.

일반적으로 우리가 생각하는 프록시 서버는 많은 서버에 앞쪽에 그림자를 두어 그림자가 원본을 대신하여 행동하게 하는 기능입니다. 그림자는 원래 사람과 똑같은 기능을 하기때문에 클라이언트가 요청하면 동일한 답을 해줍니다. 

10,000개의 클라이언트가 동일한 데이터를 요청하게 되면 원래 사람은 해당 업무를 10,000번 DB를 검색해서 결과를 보여줘야 하는데 프록시서버라는 그림자에게 해당 내용을 던져주면 동일한 질문이 들어올때 해당 질문에 대한 답을 DB검색하지 않고 바로 답변을 주는 형태입니다. 

 

프록시 서버, Porxy Server 개념 및 종류 출처: commons.wikimedia.org

원 서버의 클라이언트 접속 부하를 줄이고 외부에서 안쪽 서버에 접속할수 있는 방법이 없으므로 보안이 강화되는 이점도 있어요. 다만 클라이언트에서 신규 요청이 들어오면 프록시 서버는 원소스 서버에 요청해서 결과값을 한번은 받게 됩니다. 

결과값을 자체 저장해놨다고 클라이언트에서 동일한 요청이 오면 바로 회신해주게 되고, 클라이언트는 전보다 훨씬 빠른 응답 속도를 경험하게 됩니다. 

손오공의 머리카락 케릭터 복제 기능과도 같다고 보시면 됩니다.  그리고 대부분 예상되는 요청을 정리하여 미리 프록시 서버에 올려둘 수도 있습니다. 서버에 요청이 많은 질문이 오더라도 진짜 손오공은 부족한 부분을 채워주고 가짜 분신 손오공들이 열심히 응답을 해주게 됩니다. 

그래서 서버에 요청이 많은 웹서비스에 적용이 많이 되어 있는 상태입니다. 우리가 홈페이지 들어가서 마우스 클릭 한번 할때마다 서버는 응답을 해야하기 때문에 프록시 서버가 없으면 서버 손오공 혼자 일하다가 지쳐 나가 떨어지는 경우가 발생되는 것입니다. 





 

2. 프록시, 프록시 서버의 사전적 정의

인터넷에서 프록시에 대한 정의는 아래와 같습니다. 

컴퓨터 네트워크에서 다른 서버 상의 자원을 찾는 클라이언트로부터 요청을 받아 중계하는 서버를 말한다. 컴퓨터 네트워크에서 다른 서버로의 자원 요청을 중계하는 서버로, 분산 시스템의 구조를 단순화하고 캡슐화하여 서비스의 복잡도를 줄이는 역할을 한다. 일반적으로 프록시는 대부분 웹 프록시를 일컫는다.

클라이언트가 필요한 서버로부터 파일, 연결, 웹 페이지 등과 같은 자원을 프록시 서버에 요청하면 프록시 서버는 클라이언트와의 사이에서 대신 통신을 수행한다. 프록시 서버에는 클라이언트로부터 원격에 요청된 자원들이 캐시되어 임시로 저장되어 있다. 클라이언트는 자원 재요청 시 원격 서버에 접속할 필요 없이 프록시 서버 내의 정보를 제공받을 수 있으며, 따라서 데이터 전송 시간과 외부 트래픽이 줄어들고 서버 측의 네트워크 병목 현상을 방지할 수 있다.

네이버 지식백과에서 관련 내용 더 자세히 알아보기: 네이버 지식백과

 

 


 

3. 프록시 서버 설정

 

이렇듯 프록시 서버는 웹 환경에서는 필수적인 기능으로 자리 잡았습니다. 프록시는 보안, 로깅, 캐싱 등의 목적으로 사용될 수 있습니다. 그럼 이런 프록시를 어떻게 설정할 수 있을까요?

프록시 서버, Porxy Server 개념 및 종류출처: commons.wikimedia.org

 

1. 운영체제 전체에 적용되는 프록시 설정

시스템 전체에서 프록시 설정을 적용하려면 다음과 같은 단계를 따를 수 있습니다.

  1. Windows:
    • 검색 상자에 “인터넷 옵션”을 입력하여 인터넷 옵션 창을 엽니다.
    • 연결 탭 아래의 “LAN 설정” 버튼을 클릭합니다.
    • 프록시 서버 설정을 입력하고 변경사항을 저장합니다.
  2. macOS:
    • Apple 메뉴에서 “시스템 환경설정”을 선택합니다.
    • 네트워크를 클릭하고 좌측 하단의 “고급”을 선택합니다.
    • 프록시 탭에서 프록시 설정을 입력하고 적용합니다.
  3. Linux:
    • 대부분의 데스크톱 환경에서는 시스템 설정 메뉴에서 네트워크나 인터넷 옵션을 찾을 수 있습니다.
    • 네트워크 설정에서 프록시를 입력하고 저장합니다. 터미널을 통해 export 명령을 사용하여 프록시 설정을 일시적으로 변경하는 것도 가능합니다.

 

2. 웹브라우저를 통한 프록시 설정

웹 브라우저에서 프록시 설정을 변경하는 방법은 브라우저마다 조금씩 다를 수 있는데 다음과 같은 단계를 따르게 됩니다. 

  1. 브라우저 설정 열기: 먼저 사용하는 브라우저의 설정(옵션) 메뉴를 엽니다.
  2. 네트워크 설정: 보통 “네트워크” 또는 “인터넷 옵션”과 같은 메뉴 아래에 프록시 설정과 관련된 옵션을 확인합니다. 
  3. 프록시 서버 설정: 프록시 서버의 주소와 포트를 입력하는 영역을 찾아서 변경합니다. 학교나 회사의 네트워크를 사용하는 경우 IT 관리자로부터 제공받은 프록시 정보를 입력해야 합니다.
  4. 적용 및 저장: 변경을 완료하였으면 변경사항을 적용하고 저장합니다.

 

3. 명령줄을 통한 프록시 설정

명령 프롬프트 또는 터미널을 통해 프록시를 설정하려면 set(Windows) 또는 export(Linux스 및 macOS) 명령을 사용합니다. 이 방법은 해당 세션이나 명령줄에서만 프록시가 적용됩니다.

# Linux 및 macOS

export http_proxy=http://proxy_server_address:proxy_port

export https_proxy=http://proxy_server_address:proxy_port

# Windows

set http_proxy=http://proxy_server_address:proxy_port

set https_proxy=http://proxy_server_address:proxy_port


 

4. 마치며

오늘은 프록시 서버의 개념과 적용 방법에 대해 알아봤습니다.  제 글이 이해하시는데 조금이라도 도움이 되었으면 좋겠습니다. 

다음 시간에는 프록시 사이트 및 해외 프록시 서버를 활용하는 방법에 대해 알아보겠습니다.