2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SquidでAWS EC2をフォワードプロキシにする

2
Last updated at Posted at 2020-11-16

SquidでAWS EC2をフォワードプロキシにするのアイキャッチ

2026年9月時点の注意

Amazon Linux 2は2026年6月30日にサポートを終了し、標準セキュリティ更新を受けません。本記事は当時の構成記録です。新規構築ではAmazon Linux 2023などへ移行し、パッケージ名やコマンドの差分を検証してください。

Amazon Linux 2 FAQs

この記事でわかること

  • SquidでAWS EC2をフォワードプロキシにする で扱う作業の全体像
  • 手順を進める前に確認したい前提
  • 今の環境で試すときに気をつけたい点

はじめに

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

実務で使うときの確認ポイント

  • AWSアカウント、リージョン、IAM権限、料金影響を確認してから実行する。
  • CloudFormationやTerraformを使う場合は、変更差分を確認してから反映する。
  • 検証環境で動作確認し、不要なリソースは削除する。
  • サービス仕様、上限、推奨設定は変わるため、公式ドキュメントで現在の内容を確認する。

おわりに

ここまで読んでいただきありがとうございました。
Wealthy Designでは、AWS・Webシステム開発・AI活用など、現場で使える技術を大切にしています。

会社の取り組みは、会社サイトにまとめています。

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?