見出し画像

BASIC 認証対応の簡単自作Proxy手順(作業時間は5~10分ほど)

下記の手順はCantOS 7.4 でSquidを使用した
Proxyの構築手順です。

今回視覚的に操作をしやすい「vim」を使用します。
いろいろなECサイトへの利用が可能かと思います。

今回VPSサイトの契約方法などはほかの方が書いてくれていますので
10分ほどで構築可能な手順をご用意しました。
基本的にコピペで作ることが出来ます。

■パッケージインストール(vimとsquid)
yum -y install vim-enhanced
yum -y install squid

■squid設定編集
vim /etc/squid/squid.conf

以下の下に追記
acl CONNECT method CONNECT

#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 5 hours
acl password proxy_auth REQUIRED
http_access allow password

以下コメントアウト
#http_access deny all
#http_port 3128

#この記入は最終行で問題ない
# ポート3128は一般的なため変更します。
#以下から 「header_access Cache-Control deny all」まで、まるごとコピペしてください。

http_port 3288

#IP記述
acl myacl src 0.0.0.0/255.0.0.0
http_access allow myacl
http_access deny all

# プロキシサーバーを使用している端末のローカルIPアドレスを隠蔽化
forwarded_for off

# プロキシ経由でアクセスしていることをアクセス先に知られないようにする
header_access X-Forwarded-For deny all
header_access Via deny all
header_access Cache-Control deny all

■squidの起動
squid -z (エラーになっても気にしない)
service squid start

・サーバー再起動後のsquid自動起動
systemctl enable squid

■ファイヤーウォールの設定
vim /etc/sysconfig/iptables

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:FWINPUT - [0:0]
-A INPUT -j FWINPUT
-A FORWARD -j FWINPUT
-A FWINPUT -i lo -j ACCEPT
-A FWINPUT -p icmp --icmp-type any -j ACCEPT
-A FWINPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# xxx.xxx.xxx.xxxは自身の接続元IPに置き換える
-A FWINPUT -p tcp -m tcp --dport 22 -s xxx.xxx.xxx.xxx -j ACCEPT
-A FWINPUT -p tcp -m tcp --dport 3288 -s 0.0.0.0 -j ACCEPT
-A FWINPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

#3288の部分は好きなPort番号を使用してください

■OSのFW設定
サーバアプリのインストール
yum install httpd  (yを入力してEnter)
systemctl start httpd
systemctl enable httpd

■ポートオープン
ポート指定【58745の部分に入れたいポートを記述する】
firewall-cmd --zone=public --add-port=58745/tcp --permanent

FW設定適応
firewall-cmd --reload

設定確認
firewall-cmd --list-all

■Squidのパスワード設定
htpasswd -c /etc/squid/.htpasswd User名 ←任意の値
New password:      # パスワード設定
Re-type new password:    # 再入力
Adding password for user User名

■Squid再起動
service squid restart

【完了】
完了しましたら、proxy switchyomeganaなどを使用してアクセス確認をしてみてください。
https://chrome.google.com/webstore/detail/proxy-switchyomega/padekgcemlokbadohgkifijomclgjgif

いいなと思ったら応援しよう!