목차

squid

selinux 설정

# 기본적으로 squid는 아래 포트를 사용한다.
semanage port -l | grep -w -i squid_port_t
squid_port_t                   tcp      3128, 3401, 4827
squid_port_t                   udp      3401, 4827

# 포트를 10000으로 변경했을경우 해당 포트에 태깅 추가
semanage port -a -t squid_port_t -p tcp 10000

cache_dir 매개변수에서 /var/spool/squid/ 와 다른 캐시 디렉터리를 설정하는 경우
디렉토리 권한 설정 후 selinux 컨텍스트를 설정한다.

$ chown squid:squid path_to_cache_directory
$ semanage fcontext -a -t squid_cache_t "path_to_cache_directory(/.*)?"
$ restorecon -Rv path_to_cache_directory

방화벽 구성은 아래와 같이 설정한다.

$ firewall-cmd --permanent --add-port=3128/tcp
$ firewall-cmd --reload

$ systemctl enable --now squid

동작 테스트

$ curl -O -L "https://www.redhat.com/index.html" -x "proxy.example.com:3128"

2-teer hierachical proxy

아래처럼 구성하려고 할 때 squid.confcache_peer설정을 하면 된다.

/etc/squid/squid.conf

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#
cache_peer 172.16.0.11 parent 3128 0 no-query no-digest
never_direct allow all

참조링크