RaspberyyPiにプロキシサーバ構築します。
以下のサイトを参考にしました。参考したサイトはNintendo Switchにプロキシサーバの設定をしますが、私はWindows側で設定しています。差異はそのくらいです。
プロキシサーバとは
参考サイトにも書かれていますが、プロキシサーバについて軽く説明しておきます。
プロキシサーバとはインターネットへの接続を代理する機器のことです。
今回の場合だとインターネットに接続されていないWindowsマシンをRaspberryPiを通して、インターネットに接続できるようになります。
メリットとしては、直接インターネットに接続するわけではないのでセキュリティ向上が見込めます。その他にも特定のドメインなどを許可・拒否できるように設定もできるようです。
Squidのセットアップ方法
基本的に参考サイトと同様です。
RaspberryPiをプロキシサーバ化する方法として、Squidというアプリを使います。
まずはSquidをインストールします。
sudo apt-get update sudo apt-get upgrade -y sudo apt-get install squid -y
ちなみに私がインストールしたSquidバージョンは3.5.23です。
pi@raspberrypi:~ $ /usr/sbin/squid -v Squid Cache: Version 3.5.23 Service Name: squid Raspbian linux
Squidの設定ファイルについても参考サイトとほぼ同じです。
違う点しては、basic認証を付与している点です。
コメントアウトされている部分は削除しました。あとは、一番上のローカルネットワークの定義の部分を自分の環境に合わせて、残りは削除しています。
#ローカルネットワークの定義 acl localnet src 192.168.1.0/24 # RFC1918 possible internal network #SSL接続時に 443 ポート以外の CONNECT を拒否 acl SSL_ports port 443 acl CONNECT method CONNECT http_access deny CONNECT !SSL_ports #接続先として指定されているポート以外を拒否 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http http_access deny !Safe_ports #ローカルネットワークからのアクセスを許可 http_access allow localnet #自身からのアクセスを許可 #http_access allow localhost #basic認証の設定 auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwords auth_param basic children 5 auth_param basic realm Squid Basic Authentication auth_param basic credentialsttl 2 hours auth_param basic casesensitive off acl pauth proxy_auth REQUIRED http_access allow pauth #ここまで一致しなかった場合は拒否 #http_access deny all #キャッシュしないよう設定 no_cache deny all #Squid が使用するポート http_port 3128 #core 出力場所の設定 coredump_dir /var/spool/squid #QueryStringの記録 strip_query_terms off #Apache風の形式でログを記録 logformat combined %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %h" "%{User-Agent}>h" %Ss:%Sh access_log /var/log/squid/access.log combined
basic認証用のアカウントを作成します。
sudo htpasswd -c /etc/squid/passwords <<ユーザ名>> New password: #パスワードの入力 Re-type new password: #パスワードの再入力 Adding password for user <<ユーザ名>> 入力例: sudo htpasswd -c /etc/squid/passwords test1
以下のコマンドで自動起動設定と設定ファイルの反映をしておきます。
# 自動起動設定 sudo systemctl enable squid.service # 再起動して設定ファイルの反映 sudo systemctl restart squid.service
RaspberryPIのIPアドレスの固定設定
以下コマンドで、IPアドレスの設定ファイルを開きます。
sudo vim /etc/dhcpcd.conf
以下のように設定しまs。IPアドレスなどは各自の環境に合わせて変更してください。
interface eth0
static ip_address=192.168.0.15/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1
設定の完了後は再起動してください。
Windows側のプロキシ設定
IEを立ち上げて『インターネットオプション』を開きます。
接続タブを開きます。LANの設定を開きます。
プロキシサーバーの設定項目をRaspberyyPiのIPアドレスを設定します。ポートについては、設定ファイルで設定したポートを指定します。
以上で設定は完了です。
IEやChromeで適当にYoutubeなどにアクセスして、認証画面が出てくることを確認します。
IDとパスワードを入力してアクセスできることを確認します。
コメント