Let's Play - FTL: Advanced Edition! [Episode 4]
目次:
Squidは、HTTP、HTTPS、FTPなどの一般的なネットワークプロトコルをサポートするフル機能のキャッシュプロキシです。 繰り返しリクエストをキャッシュし、Webトラフィックをフィルタリングし、地理的に制限されたコンテンツにアクセスすることにより、Webサーバーのパフォーマンスを向上させるために使用できます。
このチュートリアルでは、Debian BusterでSquidプロキシを設定する方法を説明します。 また、FirefoxおよびGoogle Chrome Webブラウザーを使用するように構成する方法も示します。
DebianへのSquidのインストール
Squidパッケージは、Debian 10リポジトリの標準に含まれています。 sudoユーザーとして次のコマンドを実行して、Squidをインストールします。
sudo apt update
sudo apt install squid
インストールが完了すると、Squidサービスが自動的に開始されます。
Squidサービスのステータスを確認して、インストールが成功し、Squidサービスが実行されていることを確認します。
sudo systemctl status squid
● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; generated) Active: active (running) since Sat 2019-08-03 08:52:47 PDT; 3s ago…
Squidの構成
Squidは、
/etc/squid/squid.conf
構成ファイルを編集して構成できます。 「include」ディレクティブを使用して、個別の構成ファイルを含めることができます。
squid.conf
構成ファイルには、各構成オプションの機能を説明するコメントが含まれています。
変更を行う前に、元のファイルをバックアップすることを常にお勧めします。
sudo cp /etc/squid/squid.conf{,.orginal}
構成を変更するには、テキストエディターでファイルを開きます。
sudo nano /etc/squid/squid.conf
デフォルトでは、Squidはすべてのネットワークインターフェイスのポート
3128
でリッスンします。
# Squid normally listens to port 3128 http_port IP_ADDR:PORT
ほとんどのユーザーにとって、すべてのインターフェースとデフォルトのポートでSquidを実行することは問題ありません。
アクセス制御リスト(ACL)を使用すると、クライアントがWebリソースにアクセスする方法を制御できます。 デフォルトでは、Squidはローカルホストからのみアクセスを許可します。
プロキシを使用するすべてのクライアントが静的IPアドレスを持っている場合、最も簡単なオプションは、許可されたIPを含むACLを作成することです。
メイン構成ファイルにIPアドレスを追加する代わりに、IPアドレスを保存する新しいインクルードファイルを作成します。
/etc/squid/allowed_ips.txt
192.168.33.1 # All other allowed IPs
メイン構成ファイルを開いて、
allowed_ips
という名前の新しいACLを作成し(最初の強調表示された行)、
http_access
ディレクティブを使用してそのACLへのアクセスを許可します(強調表示された2番目の行)。
#… acl allowed_ips src "/etc/squid/allowed_ips.txt" #… #http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all
http_access
ルールの順序は重要です。
http_access deny all
前に必ず行を追加してください。
http_access
ディレクティブは、ファイアウォールルールと同様に機能します。 Squidはルールを上から下に読み取り、ルールが一致した場合、下のルールは処理されません。
構成ファイルを変更するたびに、変更を有効にするためにSquidサービスを再起動する必要があります。
イカ認証
Squidは、認証されたユーザーに対するSamba、LDAP、およびHTTP基本認証など、さまざまなバックエンドを使用できます。
この例では、基本認証を使用するようにSquidを構成します。 これは、HTTPプロトコルに組み込まれた単純な認証方法です。
以下に示すように、
openssl
ユーティリティを使用してパスワードを生成し、
tee
コマンドを使用して
/etc/squid/htpasswd
ファイルに
username:password
ペアを追加し
username:password
。
printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd
パスワード「
Sz$Zdg69
」を持つ「buster」という名前のユーザーを作成しましょう。
printf "buster:$(openssl passwd -crypt 'Sz$Zdg69')\n" | sudo tee -a /etc/squid/htpasswd
buster:RrvgO7NxY86VM
次のステップは、HTTP基本認証を有効にすることです。 メイン構成を開き、次を追加します。
/etc/squid/squid.conf
#… auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/htpasswd auth_param basic realm proxy acl authenticated proxy_auth REQUIRED #… #http_access allow localnet http_access allow localhost http_access allow authenticated # And finally deny all other access to this proxy http_access deny all
強調表示された最初の3行は、
authenticated
という名前の新しいACLを作成し、最後に強調表示された行は、認証済みユーザーへのアクセスを許可しています。
Squidサービスを再起動します。
ファイアウォールの構成
UFWユーザーは、「Squid」プロファイルを有効にしてポート
3128
を開くことができます。
sudo ufw allow 'Squid'
sudo nft add rule inet filter input tcp dport 3128 ct state new, established counter accept
Squidがデフォルト以外の別のポートで実行されている場合、そのポートでトラフィックを許可する必要があります。
プロキシを使用するためのブラウザの構成
このセクションでは、Squidプロキシを使用するようにブラウザーを構成する方法を説明します。
Firefox
以下の手順は、Windows、macOS、およびLinuxで同じです。
-
右上隅のハンバーガーアイコン
☰
をクリックして、Firefoxのメニューを開きます。[
⚙ Preferences
リンクをクリックします。Network Settings
セクションまで下にスクロールし、Settings…
]ボタンをクリックします。新しいウィンドウが開きます。
-
Manual proxy configuration
ラジオボタンを選択しHTTP Host
フィールドにSquidサーバーのIPアドレスを入力し、Port
フィールドに3128
します。Use this proxy server for all protocols
チェックボックスを選択します。
-
この時点で、Firefoxが設定され、Squidプロキシを介してインターネットを閲覧できます。 確認するには、
google.com
開き、「what is my ip」と入力すると、SquidサーバーのIPアドレスが表示されます。
デフォルト設定に戻すには、[
Network Settings
に移動して、[
Use system proxy settings
Network Settings
ラジオボタンを選択し、設定を保存します。
FoxyProxyなど、Firefoxのプロキシ設定を構成するのに役立つプラグインもいくつかあります。
グーグルクローム
Google Chromeはデフォルトのシステムプロキシ設定を使用します。 オペレーティングシステムのプロキシ設定を変更する代わりに、SwitchyOmegaなどのアドオンを使用するか、コマンドラインからChrome Webブラウザーを起動できます。
新しいプロファイルを使用してChromeを起動し、Squidサーバーに接続するには、次のコマンドを使用します。
Linux:
/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
マックOS :
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"
ウィンドウズ :
"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"
プロファイルは、存在しない場合は自動的に作成されます。 これにより、Chromeの複数のインスタンスを同時に実行できます。
プロキシサーバーが正常に動作していることを確認するには、
google.com
開き、「what is my ip」と入力します。 ブラウザに表示されるIPは、サーバーのIPアドレスである必要があります。
結論
Debian 10にSquidをインストールし、それを使用するようにブラウザーを構成する方法の基本について説明しました。
Squidは、最も人気のあるプロキシキャッシングサーバーの1つです。 Webサーバーの速度が向上し、インターネットへのユーザーアクセスを制限できます。
プロキシDebianLinuxディストリビューションの更新:Ubuntuのスラッシュサポート、Debian 7.0の近くのダウンロード

CanonicalのLTS(Long Term Support) CanonicalはUbuntu LinuxのLong Term Support(LTS)リリースのサポート期間を3年から5年に延長したことはずいぶん前ではありませんでしたが、先週、CanonicalはUbuntu Linuxの逆方向の動きを見せました
Debian 9でユーザーを追加および削除する方法

ユーザーを追加および削除する方法を知ることは、Linuxユーザーが知っておくべき基本的なスキルの1つです。 このチュートリアルでは、Debian 9でユーザーを追加および削除する方法を示します。
Debian 9でスワップスペースを追加する方法

スワップは、物理RAMメモリの容量がいっぱいになったときに使用されるディスク上のスペースです。 このチュートリアルでは、Debian 9システムにスワップファイルを追加するために必要な手順の概要を説明します。