Squidは、HTTPWebプロキシのキャッシュと転送です。 イカ 多くの機能があり、繰り返しのリクエストのキャッシュによるWebサーバーの高速化、WebおよびDNSルックアップのキャッシュ、トラフィックのフィルタリング、Webサイトのブロックなど、さまざまな状況で使用されます。C++で記述され、で配布されます。 GNU GPL ライセンス。
イカ は最も信頼性の高いコンテンツ制御ソフトウェアと見なされており、過去20年以来多くの組織で使用されています。
この記事では、SquidプロキシサーバーをRocky Linux8またはAlmaLinux8にインストールします。ただし、Web上ですでに利用可能な同様の記事が多すぎます。しかし、私たちはこの記事を、他の作家が通常見落としているマイナーな(しかし重要な)ステップを含むように書いています。
この記事では、Rocky Linux8またはAlmaLinux8でのSquidプロキシサーバーのインストールと初期構成に重点を置いています。したがって、Squidプロキシで事前設定を構成する場合は、Squidプロキシサーバー3.1を購入することを強くお勧めします。 PacktPublishingによる初心者向けガイド 。
環境仕様:
RockyLinux8またはAlmaLinux8仮想マシンを次の仕様でプロビジョニングしました。
- CPU – 3.4 Ghz(1コア)
- メモリ – 1 GB
- ストレージ – 20 GB
- オペレーティングシステム – Rocky Linux 8、AlmaLinux 8
- ホスト名 – squid-proxy-01.example.com
- IPアドレス – 192.168.116.214/24
Rocky Linux8またはAlmaLinux8へのSquidWebプロキシのインストール:
squid-proxy-01.example.comに接続します sshを使用する ルートとして ユーザー。
Squidソフトウェアパッケージは標準のyumリポジトリで利用できるため、 yumを使用してSquidプロキシをインストールしています。 コマンド。
[[email protected] ~]# yum install -y squid
...
Installed:
squid.x86_64 7:3.5.20-12.el7_6.1
Dependency Installed:
libecap.x86_64 0:1.0.0-1.el7
perl.x86_64 4:5.16.3-294.el7_6
perl-Carp.noarch 0:1.26-244.el7
perl-Compress-Raw-Bzip2.x86_64 0:2.061-3.el7
perl-Compress-Raw-Zlib.x86_64 1:2.061-4.el7
perl-DBI.x86_64 0:1.627-4.el7
perl-Data-Dumper.x86_64 0:2.145-3.el7
perl-Digest.noarch 0:1.17-245.el7
perl-Digest-MD5.x86_64 0:2.52-3.el7
perl-Encode.x86_64 0:2.51-7.el7
perl-Exporter.noarch 0:5.68-3.el7
perl-File-Path.noarch 0:2.09-2.el7
perl-File-Temp.noarch 0:0.23.01-3.el7
perl-Filter.x86_64 0:1.49-3.el7
perl-Getopt-Long.noarch 0:2.40-3.el7
perl-HTTP-Tiny.noarch 0:0.033-3.el7
perl-IO-Compress.noarch 0:2.061-2.el7
perl-Net-Daemon.noarch 0:0.48-5.el7
perl-PathTools.x86_64 0:3.40-5.el7
perl-PlRPC.noarch 0:0.2020-14.el7
perl-Pod-Escapes.noarch 1:1.04-294.el7_6
perl-Pod-Perldoc.noarch 0:3.20-4.el7
perl-Pod-Simple.noarch 1:3.28-4.el7
perl-Pod-Usage.noarch 0:1.63-3.el7
perl-Scalar-List-Utils.x86_64 0:1.27-248.el7
perl-Socket.x86_64 0:2.010-4.el7
perl-Storable.x86_64 0:2.45-3.el7
perl-Text-ParseWords.noarch 0:3.29-4.el7
perl-Time-HiRes.x86_64 4:1.9725-3.el7
perl-Time-Local.noarch 0:1.2300-2.el7
perl-constant.noarch 0:1.27-2.el7
perl-libs.x86_64 4:5.16.3-294.el7_6
perl-macros.x86_64 4:5.16.3-294.el7_6
perl-parent.noarch 1:0.225-244.el7
perl-podlators.noarch 0:2.5.1-3.el7
perl-threads.x86_64 0:1.87-4.el7
perl-threads-shared.x86_64 0:1.43-6.el7
squid-migration-script.x86_64 7:3.5.20-12.el7_6.1
Complete!
Squidプロキシサービスを有効にして開始します。
[[email protected] ~]# systemctl enable --now squid.service
Created symlink from /etc/systemd/system/multi-user.target.wants/squid.service to /usr/lib/systemd/system/squid.service.
RockyLinux8またはAlmaLinux8ファイアウォールでSquidプロキシサービスを許可します。
[[email protected] ~]# firewall-cmd --permanent --add-service=squid
success
[[email protected] ~]# firewall-cmd --reload
success
Rocky Linux8またはAlmaLinux8でSquidWebプロキシを構成する:
SquidWebプロキシのグローバル構成ファイルは/etc/squid/squid.confです。 。要件に応じてカスタマイズできます。
[[email protected] ~]# vi /etc/squid/squid.conf
以下のディレクティブを追加します。
dns_v4_first on
Squidプロキシサービスを再起動して変更をロードします。
[[email protected] ~]# systemctl restart squid
クライアントブラウザを起動し、その設定にSquidプロキシを追加します。
これを行うには、 Internet Explorerを開きます インターネットオプションに移動します 。
接続に移動します タブをクリックしてLAN設定をクリックします 。
上記のダイアログボックスにSquidProxyIPアドレスとポートを入力します。
OKをクリックします インターネットオプションを終了するには 。
InternetExplorerでhttps://ahmermansoor.blogspot.comを参照する 。
上記のウェブサイトは、Squidプロキシサーバーを介して提供されています。
HTTP基本認証を使用して、Squidプロキシサーバーのユーザーベースの認証を構成できます。
httpd-toolsをインストールします yumを使用したパッケージ コマンド。
[[email protected] ~]# yum install -y httpd-tools
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.ges.net.pk
* extras: mirrors.ges.net.pk
* updates: mirrors.ges.net.pk
Resolving Dependencies
--> Running transaction check
---> Package httpd-tools.x86_64 0:2.4.6-90.el7.centos will be installed
--> Processing Dependency: libaprutil-1.so.0()(64bit) for package: httpd-tools-2.4.6-90.el7.centos.x86_64
--> Processing Dependency: libapr-1.so.0()(64bit) for package: httpd-tools-2.4.6-90.el7.centos.x86_64
--> Running transaction check
---> Package apr.x86_64 0:1.4.8-5.el7 will be installed
---> Package apr-util.x86_64 0:1.5.2-6.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
================================================================================
Package Arch Version Repository Size
================================================================================
Installing:
httpd-tools x86_64 2.4.6-90.el7.centos base 91 k
Installing for dependencies:
apr x86_64 1.4.8-5.el7 base 103 k
apr-util x86_64 1.5.2-6.el7 base 92 k
Transaction Summary
================================================================================
Install 1 Package (+2 Dependent packages)
Total download size: 286 k
Installed size: 584 k
Downloading packages:
(1/3): httpd-tools-2.4.6-90.el7.centos.x86_64.rpm | 91 kB 00:00
(2/3): apr-util-1.5.2-6.el7.x86_64.rpm | 92 kB 00:01
(3/3): apr-1.4.8-5.el7.x86_64.rpm | 103 kB 00:02
--------------------------------------------------------------------------------
Total 96 kB/s | 286 kB 00:02
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : apr-1.4.8-5.el7.x86_64 1/3
Installing : apr-util-1.5.2-6.el7.x86_64 2/3
Installing : httpd-tools-2.4.6-90.el7.centos.x86_64 3/3
Verifying : apr-1.4.8-5.el7.x86_64 1/3
Verifying : httpd-tools-2.4.6-90.el7.centos.x86_64 2/3
Verifying : apr-util-1.5.2-6.el7.x86_64 3/3
Installed:
httpd-tools.x86_64 0:2.4.6-90.el7.centos
Dependency Installed:
apr.x86_64 0:1.4.8-5.el7 apr-util.x86_64 0:1.5.2-6.el7
Complete!
パスワードファイルを作成し、 squiduserを追加します その中のユーザー。
[[email protected] ~]# htpasswd -c /etc/squid/passwd squiduser
New password:
Re-type new password:
Adding password for user squiduser
passwdの所有者を変更します ファイル。
[[email protected] ~]# chown squid.squid /etc/squid/passwd
次に、Squid構成ファイルを編集し、クライアント認証設定を追加します。
[[email protected] ~]# vi /etc/squid/squid.conf
ポートのACLの後に次のディレクティブを追加します。
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 2 hours
acl auth_users proxy_auth REQUIRED
http_access allow auth_users
Squidプロキシサービスを再起動して、変更を有効にします。
[[email protected] ~]# systemctl restart squid
クライアントのブラウザでURLhttps://ahmermansoor.blogspot.comを開きます。
今回は、認証を求めています。
Linuxでのタイムアウトコマンドの使用に関するチュートリアル
Squidプロキシを介してWebサイトをブロックするカスタムブラックリストを作成する:
ウェブサイトをブロックするブラックリストファイルを作成します。
[[email protected] ~]# vi /etc/squid/blacklist
次のURLを追加します。
.yahoo.com
.facebook.com
Squidプロキシ構成ファイルを編集してブラックリスト設定を追加します。
[[email protected] ~]# vi /etc/squid/squid.conf
ポートのACLの後に次のディレクティブを追加します。
acl bad_urls dstdomain "/etc/squid/blacklist"
http_access deny bad_urls
Squidプロキシサービスを再起動して変更をロードします。
[[email protected] ~]# systemctl restart squid
URLを参照http://www.yahoo.com クライアントのブラウザで。
http://www.yahoo.com Squidプロキシサーバーによってブロックされました。
RockyLinux8またはAlmaLinux8にSquidプロキシサーバーを正常にインストールしました