目的
検証用にプロキシサーバを用意する必要があったの調べてAWS上に作ってみたときの備忘録
プロキシ用のサーバを作成
※今回はAMI:Amazon Linux を使用
→無料の範囲内だったから。
大体の流れ
○VPCの作成
コンソールにて[VPCウィザードで作成]を選択
・VPCウィザードの起動
・[1個のパブリックサブネットを持つVPC]を選択
→VPC名、サブネット名を任意で入力
○インスタンスの作成
コンソールにて[インスタンスの作成]を選択
AMIはAmazon Linux AMI を選択
インスタンスタイプ:プロキシの確認だけなら無料枠のやつでいいと思われる
ストレージ容量もちょっとでOK
VPCで作成したネットワークやセキュリティグループを選択してインスタンスを作成
※秘密鍵を使用してSSH接続することになるのでDLしておく
〇consoleにてサーバの設定
セキュリティグループのインバウンドにSSH接続用の22とプロキシを使用する端末のIPとプロキシ用ポートを設定(今回は60088番ポートとした)
ここまでの作業完了後にSSHで接続できればOK
SSH接続
適当なツール(Teratermなど)をDLし、SSHで接続
以下あたりを参考にでもしてください。
http://dev.classmethod.jp/cloud/aws/aws-beginner-ec2-ssh/
デフォルトユーザ:ec2-user
IPとID(ec2-user)を入力し、AWSのコンソールからDLした秘密鍵(xxxx.pem)を指定するとログインできる
※パスワードではなく秘密鍵で認証になるのでコンソールからDLしたものを無くさないように。
SSH接続後:プロキシの設定を行う:ここからがメイン
1. スーパーユーザに変更
sudo su -
2.squidのインストール
yum install squid -y
3.設定変更(Confの編集)
vi /etc/squid/squid.conf
以下の部分を変更する
# And finally deny all other access to this proxy
http_access allow all ←追加
http_access deny all
# Squid normally listens to port 3128
#http_port 3128 ←先頭に#を追加
http_port 60088 ←追加
※注意点
・プロキシ用のポートを60088としている
・テスト環境なのでhttp_access allow allとしているが、本番の場合は固定IPを指定すること([した方がよい]ではなく[すること])
4.チェック
squid -k parse
ワーニングが出ないように。
※ただし、今回は検証だったので hostname うんぬんのワーニングは無視した。
5.squidの再起動
service squid start
ファイアーウォールなどについては今回は設定しない(セキュリティグループである程度はじけるし)
確認
<プロキシで隠蔽したい側のインスタンス>
- リモートログインし、ブラウザなどでプロキシの設定を行う
- 適当なサイトで、プロキシサーバのIPが表示されることを確認