Squidでプロキシサーバ構築
EDIT 元の記事は2013年に更新したものですが、squid 3.5.20を改めて試してみました。
パッケージを導入
Centosのバージョンを確認
# uname -a Linux freestylewiki.xyz 2.6.32-042stab138.1 #1 SMP Wed May 15 09:33:10 MSK 2019 x86_64 x86_64 x86_64 GNU/Linux # cat /etc/redhat-release CentOS Linux release 7.8.2003 (Core)
サクッとパッケージを入れる
# yum install squid # squid -v Squid Cache: Version 3.5.20
パッケージが入ったらオラオラで設定ファイルを新規作成(バックアップは忘れずに)
# vim /etc/squid/squid.conf
最小構成としてはこんな感じで動いた
- x.x.x.xにはあなたの固定IPアドレスを入れる
# /etc/squid/squid.conf acl localnet src 10.0.0.0/8 # RFC1918 possible internal network acl localnet src 172.16.0.0/12 # RFC1918 possible internal network acl localnet src 192.168.0.0/16 # RFC1918 possible internal network acl localnet src fc00::/7 # RFC 4193 local private network range acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines acl localnet src x.x.x.x/32 # my home acl SSL_ports port 443 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl CONNECT method CONNECT # Deny requests to certain unsafe ports http_access deny !Safe_ports # Deny CONNECT to other than secure SSL ports http_access deny CONNECT !SSL_ports # Only allow cachemgr access from localhost http_access allow localhost manager http_access deny manager http_access allow localnet http_access allow localhost # And finally deny all other access to this proxy http_access deny all # Squid normally listens to port 3128 http_port 3128 # Leave coredumps in the first cache dir coredump_dir /var/spool/squid # # Add any of your own refresh_pattern entries above these. # refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern . 0 20% 4320 # 以下の設定はおそらく --enable-http-violations オプションをつけてコンパイルしたsquidでないと使えないかも # プロキシサーバーを使用している端末のローカルIPアドレスを隠蔽化 forwarded_for off # プロキシ経由でアクセスしていることをアクセス先に知られないようにする request_header_access X-Forwarded-For deny all request_header_access Via deny all request_header_access Cache-Control deny all