[이것이 리눅스다(CentOS 8)] 17장. 프록시 서버 설치와 운영

2023. 4. 6. 21:09·🐧 Linux/이것이 리눅스다(CentOS 8)

📝 프록시 서버

  • 프록시 서버란 프록시(Proxy)란 단어가 뜻하듯, '대리인'의 역할을 하는 서버를 말한다.
  • 웹 환경에서 프록시 서버는 웹 클라이언트와 웹 서버 사이에서 요청한 데이터를 전달하는 역할을 수행한다.
  • 한 번 전송한 데이터를 캐시에 저장한 후, 같은 데이터를 또 요청할 경우 캐시에 저장된 것을 보여준다.
  • 즉, 더 빠르고 효율적으로 네트워크를 사용할 수 있게 된다.


📝 프록시 서버 구현

📜 패키지 설치

  • 프록시 서버 구현을 위해 관련 패키지를 설치한다.
# dnf -y install squid

Squid는 HTTP, HTTPS, FTP 등과 같은 널리 사용되는 네트워크 프로토콜을 지원하는 모든 기능을 갖춘 캐시 프록시이다.

 

📜 설정 파일 수정

  • 이후 squid.conf(/etc/squid/squid.conf) 파일의 29행에 아래 구문을 추가해주었다.
acl centos8 src 192.168.111.0/255.255.255.0
  • 이렇게 하면 192.168.111.\*의 IP 주소를 갖는 클라이언트는 centos8이라는 이름의 캐시 프록시(squid)를 사용할 수 있게 된다.
  • 추가로 57행에 아래 구문을 추가하여 centos8의 HTTP 연결을 허용하도록 설정해준다.
http_access allow centos8
  • 다음으로 65행의 주석을 해제하고 아래와 같이 수정해주었다.
cache_dir ufs /var/spool/squid 1000 16 256
  • 이는 캐시 디렉터리의 경로와 용량 등을 설정하는 구문이다.
    • 1000: 캐시 디렉터리의 용량, MB 단위로 1GB를 의미
    • 16: 하위 디렉터리의 개수
    • 256: 하위 디렉터리의 하위 디렉터리 개수
  • 마지막으로 맨 끝 행에 아래 구문을 추가하여 해당 squid가 외부에서 보이도록 설정해주었다.
visible_hostname centos8

 

📜 방화벽 설정

  • 이후 방화벽 설정을 통해 포트를 열어준다.
  • 참고로 squid는 3128번 포트를 사용한다.
# firewall-cmd --permanent --add-port=3128/tcp
# firewall-cmd --reload

 

📜 클라이언트 설정

  • 이제 클라이언트 시스템으로 접속하여 squid를 이용하기 위한 웹 브라우저 설정을 진행한다.

  • 웹 브라우저(Firefox) 설정 화면으로 이동하여 아래로 스크롤 한 뒤, 'Network Proxy' 설정 탭을 찾아 이동한다.
  • 이후 설정화면에서 아래와 같이 프록시 서버 IP 주소와 포트 번호를 입력하고, 모든 프로토콜이 해당 프록시 서버를 사용하도록 설정하였다.

 

📜 서비스 시작

  • 이제 서비스를 시작시켜 프록시 서버를 동작시킨다.
# systemctl restart squid
# systemctl enable squid
  • 이후 웹 브라우저를 열고 테스트해보면 페이지가 정상적으로 출력되는 것을 확인할 수 있다.
  • 기존과 동일하게 동작하는 것처럼 보이겠지만, 내부적으로는 프록시 서버가 동작하며 클라이언트와 서버 간의 데이터 전달을 캐시 디렉터리를 통해 도와주고 있는 것이다.
저작자표시 (새창열림)

'🐧 Linux > 이것이 리눅스다(CentOS 8)' 카테고리의 다른 글

[이것이 리눅스다(CentOS 8)] 19장. PXE 설치 서버  (0) 2023.04.07
[이것이 리눅스다(CentOS 8)] 18장. 방화벽 컴퓨터를 만들자  (0) 2023.04.07
[이것이 리눅스다(CentOS 8)] 16장. DHCP 서버 설치와 운영  (0) 2023.04.06
[이것이 리눅스다(CentOS 8)] 15장. Samba 서버 설치와 운영  (0) 2023.04.06
[이것이 리눅스다(CentOS 8)] 14장. NFS 서버 설치와 운영  (0) 2023.04.05
'🐧 Linux/이것이 리눅스다(CentOS 8)' 카테고리의 다른 글
  • [이것이 리눅스다(CentOS 8)] 19장. PXE 설치 서버
  • [이것이 리눅스다(CentOS 8)] 18장. 방화벽 컴퓨터를 만들자
  • [이것이 리눅스다(CentOS 8)] 16장. DHCP 서버 설치와 운영
  • [이것이 리눅스다(CentOS 8)] 15장. Samba 서버 설치와 운영
Baeg-won
Baeg-won
  • Baeg-won
    좋았다면 추억이고 나빴다면 경험이다.
    Baeg-won
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 🍃 Spring, Spring Boot
        • 스프링 프레임워크 기초
        • 스프링 핵심 원리 - 기본편
        • 자바 ORM 표준 JPA 프로그래밍 - 기본편
        • 스프링 MVC
        • 실전! 스프링 부트와 JPA 활용1 - 웹 애플리..
      • 🥑 Web Technoloy
      • 🚗 Backend Toy Project
        • 스프링 부트 게시판
        • Photogram
        • Baeg-won Clothing Gallery
      • 🥇 Problem Solving
        • Breadth-First Search
        • Depth-First Search
        • Backtracking
        • Simulation
        • Two-pointer
        • Binary Search
        • Greedy
        • Dynamic Programming
        • Minimum Spanning Tree
        • Dijkstra
        • Floyd warshall
      • ☕ Java
        • 명품 자바 에센셜
        • Applications
      • 🍦 JavaScript
        • JavaScript 기초
      • 🐧 Linux
        • 이것이 리눅스다(CentOS 8)
      • 📟 Database
        • 혼자 공부하는 SQL
      • 🧬 Data Structure
      • 🎬 HTML
      • 🎤 Tech Interview
      • 📌 etc
        • Unity 2D Raising Jelly Game
        • C++
        • 영어 쉐도잉
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Baeg-won
[이것이 리눅스다(CentOS 8)] 17장. 프록시 서버 설치와 운영
상단으로

티스토리툴바