NETWORK ENGINEER BLOG

Tips and Reviews for Engineers

CentOS6.7 で Squid 構築

CentOS6.7で Squid を構築した際のメモです。以下のサイトを参考にさせて頂きました。
5分で作る PROXY サーバー

Squid 構築

Squid インストール

# yum -y install squid

設定編集

vi /etc/squid/squid.conf

コメントアウト

# http_access deny all (59行目)
# http_port 3128       (62行目)

以下を最下行に追加

# ホストネーム"myproxy"を設定
visible_hostname myproxy

# ポートを8080に指定
http_port 8080

# 接続を許可する IP"192.168.1.0/24"を設定する。
acl myacl src 192.168.1.0/255.255.255.0
http_access allow myacl
http_access deny all

# プロキシサーバーを使用している端末の 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

初回キャッシュクリア

squid -z
service squid start

動作確認

アクセスログの取得

# tail -f /var/log/squid/access.log

補足

Squid 設定ファイルの Reload について

squid.conf を編集した際、設定ファイルを reload する事で、既存セッションに影響を与える事なく、設定を反映させる事が可能です。下記は HUP*1シグナルを使用して、設定ファイルを reload する例になります。

# /usr/local/squid/sbin/squid -k reconfigure

reload コマンドで代用可能です。

# /etc/rc.d/init.d/squid reload

下記のとおり、既存セッションは維持されます。

# netstat -lanput | grep squid | grep -i ESTABLISHED | wc -l
123
header_access について

Squid3系からは"header_access"ではなく"request_header_access"となった模様
"header_access"と設定すると、以下のエラーが出力されるため注意

ERROR: Directive 'header_access' is obsolete.

以上

*1:Hang Up Signal