フォワードプロキシサーバーとは
あなたのパソコンからサーバーを経由してWebサイトにアクセスする時に使うサーバーをフォワードプロキシサーバーと呼びます。
何らかの理由で直接あるWebサイトに接続したくない場合に使います。
- 自分のIPを残したくない
- 自分のパソコンがどこにアクセスしているか隠したい
とかです。
AWSにフォワードプロキシサーバーをSquidで設置する
プロキシサーバーといえばSquidが一番有名です。
設定も簡単なのでおすすめです。
AWSでは現在Amazon Linux とAmazon Linux 2が使われることが多いと思います。
Amazon Linux はCentOS6 をベースに、Amazon Linux 2 は CentOS7がベースになっています。
ですので、CentOSに慣れていれば、簡単にAmazon Linuxのネットワーク設定を使いこなすことができます。
今回はCentOS6ベースのAmazon Linuxを用いた場合の設定方法を紹介します。
Squidの設定
AWSの場合、外部からのアクセスコントロールが、iptableではなくセキュリティーグループで行われるのでこの設定を行います。AWSを使ったことがある人なら誰でも設定している項目ですので難しくはありません。
Squidのインストール
インスタンスにSquidをインストールします。
sudo yum install squid -y
/etc/squid/squid.confの中身
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
# ホストネームは任意のものを。
visible_hostname groro56.com
# ポート8080は一般的すぎるので使いません。
http_port 62288
# xxx.xxx.xxx.xxxはあなたのIPを記述する。
# わからなければ
# http://www.ugtop.com/spill.shtml
# ここの「現在接続している場所(IPv4)」のIPを書きます。
acl myacl src 132.3.233.234/32
acl myacl2 src 181.71.122.114/32
acl myacl3 src 123.133.121.231/32
acl myacl4 src 150.83.154.37/32
http_access allow myacl
http_access allow myacl2
http_access allow myacl3
http_access allow myacl4
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
http_port
の設定とhttp_access
の設定を行います。
この例では、portを62288に設定しています。
許可するアクセス元は4つ設定しています。myacl1, myacl2, myacl3, myacl4が許可しているアクセス元IPアドレスで、132.3.233.234/32のように設定しています。あなたのIPアドレス+ /32と書けばOKです。/32がわからない方はCIDR 表記についてググってください。/32と書けばそのIPアドレスのみ許可するという意味なので、気にしないでも全く問題ありません。
sudo service squid restart
コメント