📝 프록시 서버
- 프록시 서버란 프록시(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 |