12月 31, 2021

Centos7にSquid Proxy Serverをインストールする方法

はじめに

システム管理者は、Squidプロキシを使用してコンテン Squidプロキシは、特にサーバーが頻繁に訪問したwebページをキャッシュすることができます。

どうやって? ユーザーがwebページまたはファイルを検索すると、要求はデスクトップコンピュータとインターネットの間の仲介デバイスであるプロキシサーバーに送信されま プロキシサーバーは、新しいデータをキャッシュし、同じサーバーへの将来の要求に使用することにより、リソースをプルしてユーザーに中継します。

このガイドでは、Centos7でSquidプロキシサーバーをセットアップ、構成、およびインストールする方法を学習します。

squid-centos-proxy-server

前提条件

  • CentOSオペレーティングシステム
  • ターミナルウィンドウ/コマンドラインへのアクセス(Ctrl-Alt-T)
  • root権限またはsudo権限を持つCentOSユーザー
  • yumパッケージインストーラ(デフォルトで含まれている)
  • vimなどのテキストエディタ

CentosにSquidプロキシをインストールする手順

ステップ1:centosソフトウェアリポジトリを更新する

リポジトリを更新して、最新のソフトウェアバージョン

ターミナルウィンドウを起動し、次のように入力します:

sudo yum -y update

手順2:CentOS

にSquidパッケージをインストールするSquidをインストールするには、次のように入力します:

yum -y install squid

次に、次のコマンドを入力してSquidを起動します:

systemctl start squid

起動時に自動起動を設定するには:

systemctl enable squid

サービスの状態を確認し、使用します:

systemctl status squid

以下の例では、状態が「アクティブ」であることがわかります。’

squidはCentOS上でアクティブで実行されています

メモ: 私たちのナレッジベースには、UbuntuにSquidプロキシサーバーをインストールして設定する手順もあります。

Squidプロキシサーバーの設定

Squid設定ファイルは/etc/squid/squidにあります。コンフ…

1. お好みのテキストエディタでファイルを開きます(この例ではvimが使用されていました}:

sudo vi /etc/squid/squid.conf

2. Http_portオプションを見つけるために移動します。 通常、これはポート3218でリッスンするように設定されます。 このポートは通常、TCPトラフィックを運びます。 システムが別のポートのトラフィック用に構成されている場合は、ここで変更します:

選択されたhttpポート3128

Squidがリクエストやレスポンスを変更しないようにするには、プロキシモードを透明に設定することもできます。

次のように変更します:

http_port 1234 transparent

3. Http_acacess deny allオプションに移動します。

現在、すべてのHTTPトラフィックをブロックするように設定されており、以下に示すようにwebトラフィックは許可されていません。

httpすべてのトラフィックを拒否

これを次のように変更します:

http_access allow all

4. 次のように入力してSquidサービスを再起動します:

sudo systemctl restart squid

Squidクライアントの設定

Squidプロキシサーバーが設定されました。 クライアントサーバーを構成するには、クライアントマシンに切り替えてwebブラウザを開きます。

Firefoxを使用している場合、プロキシ設定は次の場所にあります。

Menu>Options>Network Settings>Settings

手動プロキシ設定のラジオボタンを選択します。

手動プロキシを選択してインターネットへのプロキシアクセスを構成する

SquidプロキシをホストするシステムのIPアドレスを使用します。

テストするには、https://whatismyipaddress.com/ip-lookupを訪問することができます。 IPアドレスはプロキシサーバーのIPアドレスとして表示されます。

アクセス制御リスト(ACL)の作成

プロキシサーバーのローカルネットワーク外の接続には、アクセス制御リスト(ACL)を設定する必要があります。 これは、”接続を拒否しました”エラーが発生した場合に必要になる場合があります。

サイトを表示するアクセス制御リストに到達することはできません

この問題を解決するには、新しいACLエントリを使用して安全なポートのリストに追加するだけです。

メモ: 次の各手順の後、保存して終了し、Squidサービスを再起動して新しい設定を適用する必要があります。

/etc/squid/squidを編集します。confファイルをもう一度。 次のように新しい行を追加します:

acl localnet src 192.166.0.10

これにより、このIPアドレスのシステムのみが接続できるようにするルールが作成されます。

ルールを識別する行をコメントします。 #記号の後のテキストはSquidによって無視されます。

acl localnet src 192.166.0.10 # test computer

IPアドレスの範囲は次のように指定できます:

acl localnet src 192.166.0.10/30

Squidプロキシポートを開く

特定のポートを開くには、以下を追加します:

acl Safe_ports port 123 # Custom port

変更を保存するには、Squidを再起動します:

systemctl restart squid

プロキシ認証の設定

Squidは、他のタイプの認証をサポートするとともに、基本認証を提供します。

まず、次のコマンドでhttpd-toolsをインストールします:

yum -y install httpd-tools

ツールがインストールされている状態で、新しいファイルを作成します:

touch /etc/squid/passwd && chown squid /etc/squid/passwd

パスワードを作成するには、次のコマンドを使用します:

htpasswd /etc/squid/passwd newuser

‘newuser’をあなたのユーザー名と交換してください。

“newuser”のパスワードを入力して確認するよう求められます。’

プロキシサービスを再起動し、挿入してブラウザを再度開きます:

systemctl restart squid

/etc/squid/squidを編集します。confファイルを作成し、次のコマンドラインを追加します:

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwdauth_param basic children 5auth_param basic realm Squid Basic Authenticationauth_param basic credentialsttl 2 hoursacl auth_users proxy_auth REQUIREDhttp_access allow auth_users

これ以降、Linuxプロキシサーバーに接続すると、ユーザー名とパスワードのプロンプトが表示されます。 認証されていない人は、エラーメッセージによって停止されます。

Squidプロキシでウェブサイトをブロックする方法

1. 新しいテキストファイル/etc/squid/blockedを作成して編集します。を入力することにより、:

sudo vi /etc/squid/blocked.acl

2. このファイルに、ブロックするwebサイトをドットで始まる

で追加します。facebook.com

twitter.com

ドットは、メインサイトのすべてのサブサイトをブロックするように指定します。

3. /Etc/squid/squidを開きます。confファイルを再度:

sudo vi /etc/squid/squid.conf

4. ACLリストのすぐ上に次の行を追加します:

acl blocked_websites dstdomain "/etc/squid/blocked.acl"
http_access deny blocked_websites

結論

このチュートリアルでは、Squid HTTPプロキシサーバーのインストール、設定、およびセキュリティ保護の方法を学習しました。

Squidは、独自のキャッシュパワーにより、処理時間を改善し、帯域幅の使用を迅速に合理化します。 そのアクセラレータモードでは、あなたのサーバーは印象的な速度で動作することができます。 それはかなりあなたのシステムに競争力を与えるあなたのネットワークの性能を高めます。

コメントを残す

メールアドレスが公開されることはありません。