Skip to content

Azureでプロキシサーバーを構築!

Posted in Great Technology【テクノロジー】

Last updated on 2021年4月11日

どうもエピックです。最近クラウドを利用する機会が増えました。
その勉強の一環とはなりますが、CentOS と squidで認証付きプロキシーサーバーをAzure上で構築する手順を紹介したいと思います。
ほんとに建てるだけなので本番環境はやめてくださいね笑

(構築手順は2021年3月21日時点のものとなります)


構築の手順

Azureで基本認証ありのプロキシサーバを構築する手順をまとめます。

今回はIPでのアクセス制限をつける設定としたいと思います。

クラウド怖いですからね。

手順は次のようになります。

  • Azureポータルへサインインする
  • 仮想マシンを作成する
  • 仮想マシン上にsquidをインストール、設定する
  • Azure NSG の設定を変更する

では順番に見ていきましょう。


【手順1】Azureポータルへサインインする

Azureへサインインしましょう。

サインインができたら右上の【ポータル】ボタンよりAzureに移動します。


【手順2】仮想マシンを作成する

Azure上で仮想マシンを作成します。

英語だと Virtual Machine ですね。こちらを探してください。

左のブレードから見つけることができると思います。

続けて、[追加] - [仮想マシン] の順にクリックします。

続けて、パラメータの設定を行っていきます。


基本の設定



ディスクの設定



ネットワークの設定



設定が完了したら仮想マシンを作成します。

作成中は珈琲でも飲んで待ちましょう


【手順3】仮想マシン上にsquidをインストール、設定する

次にSSHを使用して仮想マシンへログインします。

Windowsの場合は Teraterm、Macであれば標準のターミナルで良いかと思います。

下記にMacからログインする際の手順を載せときます。

ssh <ユーザ名>@xxxx.xxxx.xxxx -p <ポート番号>

実行すると「you want to continue connecting (yes/no/[fingerprint])?」ときかれるので "yes" と入力後パスワード入れて接続しましょう。

接続をはれたら Squid をインストールしていきます。

次のコマンドを実行します。

sudo yum -y install squid httpd-tools

Proxy用の認証ユーザを作成します。

<ユーザ名>の箇所に任意の値を入力してください。

# testuserとした場合の例 
# htpasswd -c /etc/squid/.htpasswd testuser
sudo htpasswd -c /etc/squid/.htpasswd  <ユーザ名>

ここから squid のコンフィグファイルを修正していきます。

事前に下記のコマンドでコピーを作成しておきましょう。

.org は Original の略です。

sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.org

では、コンフィグファイルを書き換えていきます。

次のコマンドでファイルを開きます。

sudo vi /etc/squid/squid.conf

コンフィグファイルの最後に書きを追記してください。

# Basic認証用の設定
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/.htpasswd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 2 hours
acl password proxy_auth REQUIRED
http_access allow password

もし接続のポートを変更したい場合は、コンフィグファイル内の対象のコードを次のようにコメントアウトし変更後のポート番号を記載します。

# Squid normally listens to port 3128
# http_port 3128
http_port 40080

最後に squid の起動と自動起動の設定をONにします。

sudo systemctl start squid
sudo systemctl enable squid

【手順4】Azure NSG の設定を変更する

VMでのファイアフォール設定をしても良いですが場合によってはトラブルのもととなる可能背もあるので、Azure推奨のNSGでのアクセス設定を行います。

squid のインストールされた仮想マシンを選択し、左ブレードの [ネットワーク] - [受信ポートの規則を追加する] をクリックします。

次のようにパラメータを設定し追加をします。

このときですがすでに SSH による仮想端末の接続が不要であれば削除をしておくようにしましょう。

追加ができればこれですべての設定が完了です。


動作確認

動作確認としてクライアントマシンのプロキシーサーバー設定から、構築したサーバーを設定し、任意のWebブラウザでインターネットに接続してみます。

このとき認証用のダイアログが表示されるかと思います。

設定済みの認証用ユーザーとパスワードを入力し「OK」をクリックし、無事Webページが表示されれば動作確認は成功です。


最後に


お疲れさまでした。今回はAzure上でのプロキシサーバーの構築でした。
正直なところ squid についてはドキュメントが限られており自分も詳細までできておりません。
設定項目で間違っている箇所があればコメントにてご指摘いただけますと幸いです。

今回も最後までお読みいただきありがとうございました。

では。

出版社 : 日経BP (2018/9/7) 発売日 : 2018/9/7

Be First to Comment

コメントを残す