Linux

Linux - Proxy 서버 프로그램 : Squid

j9m 2022. 10. 14. 17:20
반응형

Squid

Proxy 서버 프로그램인 squid를 'yum install squid'로 설치하면 환경 설정 파일은 /etc/squid/squid.conf가 된다. 설정 후에 'systemctl start squid.service’를 실행하면 프록시 서버를 사용할 수 있다.

 

squid.conf 파일의 주요 설정

◎ squid 프록시 서버의 포트 번호를 지정하는 항목으로 기본 포트 값은 3128번이다.

http_port 3128

 

◎ 캐시 정보가 저장될 경로를 지정해주는 항목으로 ufs는 squid의 저장 포맷이고, /var/spool/squid가
관련 디렉터리이다. 100은 저장되는 캐시 정보의 크기를 나타내는데 단위는 MB이다. 16은 캐시가
저장되는 첫 번째 하위 디렉터리의 개수이고, 256은 두 번째 하위 디렉터리의 개수이다.

cache_dir ufs /var/spool/squid 100 16 256


프록시 서버의 접근 제어

squid.conf 파일에서 acl (access control list) 항목을 이용해서 접근 제어를 할 수 있다. acl을 이용하여 특정 IP 주소, 네트워크 대역, 도메인 등을 별칭(alias) 형태로 지정하고, http_access allow 나 http_access deny를 이용하여 접근을 제어한다. 적용되는 룰은 방화벽 설정과 비슷하게 중복 정책인 경우에는 먼저 설정된 정책이 반영된다.

 

사용법

ⓛ acl 설정

acl 별칭 src IP주소/넷마스크값
acl 별칭 dst IP주소/넷마스크값
acl 별칭 srcdomain .foo.com
acl 별칭 dstdomain .foo.com

 

② acl에 대한 접근 제어

http_access allow 별칭
http_access deny 별칭

 

사용 예

 특정 대역만 사용 허가 설정

acl posein src 192.168.4.0/255.255.255.0
http_access allow posein
http_access deny all

 

② 특정 대역만 사용 거부 설정

acl cracker src 192.168.3.0/255.255.255.0
http_access deny cracker
http_access allow all

 

③ 특정 도메인으로 들어오는 사용자들만 프록시 서버 사용 거부 설정

acl cracker srcdomain .cracker.org
http_access deny cracker
http_access allow all

 

④ 특정 도메인으로 들어오는 사용자들만 프록시 서버 사용 허가 설정

acl example srcdomain .example.com
http_access allow .example.com
http_access deny all

 

⑤ 프록시 사용자들의 특정 사이트로 접속을 막기

acl exploit dstdomain .example-db.com
http_access deny exploit
http_access allow all

 

참고자료
CentOS 7으로 리눅스마스터 1급 정복하기
반응형