プライベートサブネットにある EC2 Windows Server からプロキシサーバを経由したインターネット接続をやってみた

プライベートサブネットにある EC2 Windows Server からプロキシサーバを経由したインターネット接続をやってみた

2026.01.09

はじめに

テクニカルサポートの 片方 です。
プロキシ(Squid)環境下に存在する Windows Server の挙動について検証する機会があったため、構築例を紹介します。

構成

プロキシサーバは以下で構成します。

  • サブネット : パブリック
  • OS : Amazon Linux 2023

クライアント側は以下で構成します。

  • サブネット : プライベート
  • OS : Windows Server 2025

001

やってみた

以下の手順で実装します。

  1. プロキシサーバの構築
  2. クライアント側の設定

プロキシサーバの構築

お好みの方法で EC2 インスタンスへログイン後、コマンドを実行していきます。
本検証では Session Manager を利用しました。

プロキシサーバとして利用するために Squid をインストールします。
https://www.squid-cache.org/Doc/

$ sudo dnf -y install squid

インストールが完了したら、起動設定を行います。

$ sudo systemctl start squid
$ sudo systemctl enable squid

002

ポート 3128 でリッスン(LISTEN)しているか、以下のコマンドを実行して確認します。

$ sudo lsof -Pi | grep squid
出力例
sh-5.2$ sudo lsof -Pi | grep squid
squid     26679           squid    7u  IPv6  45466      0t0  UDP *:32829
squid     26679           squid    8u  IPv4  45467      0t0  UDP *:39720
squid     26679           squid   11u  IPv6  45470      0t0  TCP *:3128 (LISTEN)
sh-5.2$

次に Squid の設定ファイルを開きます。

$ sudo nano /etc/squid/squid.conf

今回の検証では、特定のドメインを拒否する設定を追加します。
Blacklist 用のテキストを作成し、拒否する方法で試します。
このようにすることで blacklist ファイルに記載されているドメインを拒否し、それ以外は許可するという設定が可能です。

https://docs.redhat.com/ja/documentation/red_hat_enterprise_linux/9/html/deploying_web_servers_and_reverse_proxies/configuring-a-domain-deny-list-in-squid_configuring-the-squid-caching-proxy-server

.conf ファイルの一番上の行に以下を追加します。
※ http_access は上から順に評価されるため、deny ルールを先に記述しています。

#
# Blacklist
#
acl blacklist dstdomain "/etc/squid/blacklist"
http_access deny blacklist
http_access allow all

003

追加したら、保存してファイルを閉じます。
次はブラックリストを作成するために、新規にテキストを作ります。

$ sudo nano /etc/squid/blacklist

ここに接続を拒否したいドメインを記述します。
今回は検証用の例として、アクセス頻度が高く動作確認しやすいドメインとして yahoo (https://www.yahoo.co.jp/) を対象にしています。特定のサービスを否定する意図はありません。

.yahoo.co.jp

004

設定が完了したら Squid を再起動します。

$ sudo systemctl restart squid

これでプロキシサーバ側の設定は完了です。
必要に応じて、セキュリティグループのインバウンドルールでクライアント側の IP を許可してください。

お疲れさまでした!

クライアント側の設定

Windows サーバに RDP 接続し、プロキシの設定を行います。

https://support.microsoft.com/ja-jp/windows/windows-でプロキシ-サーバーを使用する-03096c53-0554-4ffe-b6ab-8b1deee8dae1

今回は Fleet Manager を使用して接続しました。
そのため一時的に、起動中のプライベートサブネットへ マネージドノードに必要なアウトバウンド経路確保のため、以下 VPC エンドポイントを作成しています。

  • com.amazonaws.ap-northeast-1.ssm
  • com.amazonaws.ap-northeast-1.ssmmessages

https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/setup-create-vpc.html

[setting(設定)] > [Network & Internet(ネットワーク & インターネット)] を選択します。
その後、Manual proxy setup (手動プロキシ設定) を選択します。

005

プロキシサーバのプライベート IP とプロキシポートを記述します。
今回の場合は 10.0.24.140 と 3128です。

006

これで設定は完了です。

確認してみた

インターネットに繋がるか確認します。

007

本検証環境では、想定した挙動を確認できました。
それでは、プロキシサーバを経由してアクセスしているパブリック IP を確認します。

009
008

こちらも、問題なく出来ています。
続いて yahoo (https://www.yahoo.co.jp/) にアクセスして拒否されるか確認します。

0010

設定したブラックリストに基づき、対象ドメインへのアクセスが Squid によって拒否されることを確認できました。
成功です!

まとめ

本ブログが誰かの参考になれば幸いです。

参考資料

クラスメソッドオペレーションズ株式会社について

クラスメソッドグループのオペレーション企業です。
運用・保守開発・サポート・情シス・バックオフィスの専門チームが、IT・AIをフル活用した「しくみ」を通じて、お客様の業務代行から課題解決や高付加価値サービスまでを提供するエキスパート集団です。
当社は様々な職種でメンバーを募集しています。
「オペレーション・エクセレンス」と「らしく働く、らしく生きる」を共に実現するカルチャー・しくみ・働き方にご興味がある方は、クラスメソッドオペレーションズ株式会社 コーポレートサイト をぜひご覧ください。※2026年1月 アノテーション㈱から社名変更しました

この記事をシェアする

FacebookHatena blogX

関連記事