はじめに
AWS EC2にSquidをインストールして、フォーワードプロキシとして利用する手順です。
EC2のOSのバージョンは、Amazon Linux 2です。
手順
1. EC2にSquidをインストールする
スクリプト
sudo yum update -y
# Squidをインストールする
sudo yum install squid -y
# Squidを起動する
sudo systemctl start squid
# Squidの起動とサーバーの起動を連携する
sudo systemctl enable squid
2. Squidの設定をする
スクリプト
export VPC_IP=[Squidを利用するVPCのCidrBlock]
# Squidで利用するポート番号
# 今回は8080とする
export SQUID_PORT=8080
sudo sed -i "s#10.0.0.0\/8#${VPC_IP}#g" /etc/squid/squid.conf
sudo sed -i "s/acl localnet src 172.16.0.0\/12/# acl localnet src 172.16.0.0\/12/g" /etc/squid/squid.conf
sudo sed -i "s/acl localnet src 192.168.0.0\/16/# acl localnet src 192.168.0.0\/16/g" /etc/squid/squid.conf
sudo sed -i "s/acl localnet src fc00::\/7/# acl localnet src fc00::\/7/g" /etc/squid/squid.conf
sudo sed -i "s/acl localnet src fe80::\/10/# acl localnet src fe80::\/10/g" /etc/squid/squid.conf
sudo sed -i "s/acl Safe_ports port 2/# acl Safe_ports port 2/g" /etc/squid/squid.conf
sudo sed -i "s/acl Safe_ports port 48/# acl Safe_ports port 48/g" /etc/squid/squid.conf
sudo sed -i "s/acl Safe_ports port 5/# acl Safe_ports port 5/g" /etc/squid/squid.conf
sudo sed -i "s/acl Safe_ports port 7/# acl Safe_ports port 7/g" /etc/squid/squid.conf
sudo sed -i "s/http_port 3128/http_port${SQUID_PORT}/g" /etc/squid/squid.conf
cat <<EOS | sudo tee -a /etc/squid/squid.conf
forwarded_for off
request_header_access X-Forwarded-For deny all
request_header_access Via deny all
request_header_access Cache-Control deny all
reply_header_access X-Forwarded-For deny all
reply_header_access Via deny all
reply_header_access Cache-Control deny all
EOS