티스토리 뷰

LAYER 4 & 7

squid.conf 옵션 정리

초보의 CHOMAN 2015.06.12 11:01

squid.conf 옵션 정리


squid 3.0 설정 메뉴얼 (보다 자세한 내용이나 영어가 이해되시면 아래 메뉴얼 참고)





squid 의 핵심 (squid.conf) conf 파일은 위에서 아래로 적용됨 순차적임

- 버젼마다 conf가 약간씩 틀릴수도 있음

http_port 3128

클라이언트 접속 요청에 대한 서비스할 포트 기본이 3128인가보다 80번으로 지정해도 됨

cache_mem 16 MB

서버에서 제공하는 메모리 양, 디폴트가 8MB (16메가면 적당하다는데 ㅋ)

maximum_object_size

캐시에 저장할수 있는 파일의 크기를 제한함 (캐시할 공간을 절약할때 사용) 기본이 4096KB 4메가 이상은 캐시에 저장하지 않음

cache_dir

변경된 정보(캐시)가 저장되는 디스크 경로와 그 크기 기정
cache_dir ufs /var/spool/squid 1000 16 256

 - squid 밑에 하위디렉토리 16개, 그 다음하위는 256개 디렉토리 크기 1기가까지

cache_access_log

클라이언트가 캐쉬에 접속했을때 로그정보를 기록해둘 파일 지정
- cache_access_log /var/log/squid/access.log ; 디폴트

cache_store_log

스퀴드의 캐시기능으로 저장된 임시 인터넷파일의 정보 기록해둔 로그파일 지정
- cache_store_log /var/log/squid/store.log

acl 

acl localhost src 127.0.0.1/255.255.255.255 ; 소스아이피가 127.0.0.1/255.255.255.255 임의 정의
acl to_localhost dst 127.0.0.0/24 115.68.15.120 ; 목적지 아이피가 127.0.0.0/24 115.68.15.120 정의
acl homenet src 192.168.0.0/255.255.255.0 ; homenet은 192.168.0.0/24 이다고 만들어 정의할수도 있음

acl safe_ports port 21 ; safe_ports 라 이름짓고 포트번호 21번에 으로 지정함
acl Bad_domain dstdomain kensei.co.kr ; 도메인으로 지정할수도 있음
- http_access deny Bad_domain

http_access deny !to_localhost ; 위의 정의된 localhost가 아닌것들은 access_deny 하겠다는 의미
- src 가 외부에서 프록시로 들어오는것 dst가 프록시에서 외부에 나가는것으로 판단하면 됨

기본적으로 http_access allow 가 먼저 오고 맨 나중에 deny를 적용해주는게 좋음 (순차적)

보안을 생각한다면 마지막에 http_access deny all 해줘도 나쁘지 않을듯

도메인 주소에서 특정 단어를 검색하여 차단

acl xxx_domain url_regex ^http://ken ; http://kensei 로 시작하는 주소 차단
acl xxx_domain url_regex ^http://www.kensei
acl xxx_domain url_regex kensei.co.kr ; kensei.co.kr 로 끝나는 주소 차단
- http_access deny xxx_domain

투명프록시 (클라이언트가 프록시가 없는것 처럼 인터넷에 접근) 
- httpd_accel_port 80 ; 가상호스트 기반의 역프록시 캐시 사용
- httpd_accel_with_proxy_on ; 프록시 캐시와 역 프로시 캐시의 기능을 모두 사용
- httpd_accel_uses_host_header on ; 헤더에 기반하여 서로 다른 호스트를 캐시 할수 있게 함

클라이언트가 리눅스 서버를 masqurade로 두고 있을때 iptables에서 (아마 squid도 같이 셋팅되어 있는듯함)

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128 ; 포트를 바꾸는듯함


request_timeout

squid 와 client 사이에 TCP 연결이 establish 되었을때 squid 가 client 의 요청을 기다리는 최대시간
squid는 이시간이 오버하면 아무런 메세지 없이 단순히 연결을 끊는다

댓글
댓글쓰기 폼
공지사항
Total
662,843
Today
200
Yesterday
145
링크
«   2018/08   »
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
글 보관함