ubutnuでのSquidプロキシ認証の設定
UbuntuでSquidプロキシ認証を設定するには、Squid構成ファイルを次のように調整する必要があり
ます
。Squidプロキシ認証パスワードの生成htpasswdは、プロキシユーザー認証パスワードの生成に使用できる2つのツールです。 。htpasswdはパスワードを暗号化し、無差別形式でパスワードを保存しますが、htdigestはパスワードをプレーンテキストで保存するため、安全ではありません。このガイドでは、htpasswdユーティリティを使用します。htdigest htpasswd
を使用するには、インストールする必要があります。インストールします:httpd / apache2-utils
sudo apt-get install apache2-utils
sudo yum install httpd-tools
インストール後、次のコマンドを実行して、ユーザー確認用のパスワードを生成します。
htpasswd -c /etc/squid/.squid_users amos
New password:
Re-type new password:
Adding password for user amos
これにより、ユーザーamosのパスワードが作成され、に保存されます。/etc/squid/.squid_users
さらにユーザーを追加するには、htpasswdコマンドからオプション-cを削除する必要があります。
htpasswd /etc/squid/.squid_users john
New password:
Re-type new password:
Adding password for user john
パスワードファイルを確認すると、暗号化されたパスワードを持つ2人のユーザーがいます。
less /etc/squid/.squid_users
amos:$apr1$IyfTZICg$2fPImX5o14XC2KPF1kZWv/
john:$apr1$5o0XKeto$m6c5B5KK5ZAK/7A/VIgYB/
Squidユーザーはこのファイルを読むことができるはずです。したがって、次のコマンドを実行して、適切な権限を設定します。
chown squid /etc/squid/.squid_users
ユーザー名とパスワードがsquidプロキシに適用できることを確認します。正しいエントリごとに、次の画面が表示されます。OK
/usr/lib64/squid/basic_ncsa_auth /etc/squid/.squid_users
amos password
OK
john password
OK
Squidプロキシ認証の構成
すべてが正常であるように思われるので、Squidプロキシ基本認証のセットアップに進みます。編集用にSquid構成ファイルを開き、次の行を追加します。
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/.squid_users
auth_param basic children 5
auth_param basic realm Proxy Authentication Required
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl auth_users proxy_auth amos john
http_access allow auth_users
上記の行の簡単な要約として:
- 最初の行は、Squidにヘルパープログラムを使用してファイル内のユーザー名とパスワードを検索するように指示しています。
basic_ncsa_auth/etc/squid/.squid_users
- この行は、Squidオーセンティケーターを生成するプロセスの最大数を指定します。
auth_param basic children 5
auth_param basic realm
顧客に報告する認証方式の保護範囲を指定します。auth_param basic credentialsttl 2 hours
Squidが外部認証されたユーザー名を想定する期間を指定します。パスワードペアはに適用されますauth_param basic casesensitive off
ユーザー名が大文字と小文字を区別するかどうかを指定します。acl auth_users proxy_auth amos john
認証を許可されているユーザーのSquid認証ACLを定義します。
設定が完了したら、ファイルを保存してSquidを再起動します。
systemctl restart squid
前の記事で説明した認証vaisquidプロキシサーバーを使用するようにクライアントを構成します。
クライアント側から、ブラウザを介してインターネットにアクセスしようとすると、認証を求めるプロンプトが表示されます。以下のスクリーンショットを参照してください。
適切に認証されると、ブラウザでインターネットにアクセスできるようになります。
wgetを使用してファイルをダウンロードしようとすると、認証を求めるプロンプトが表示されます。
wget google.com
--2018-12-19 00:38:21-- http://google.com/
Connecting to 192.168.43.69:3128... connected.
Proxy request sent, awaiting response... 407 Proxy Authentication Required
2018-12-19 00:38:21 ERROR 407: Proxy Authentication Required.
したがって:
wget --proxy-user=amos --proxy-password=password google.com
--2018-12-19 00:39:36-- http://google.com/
Connecting to 192.168.43.69:3128... connected.
Proxy request sent, awaiting response... 301 Moved Permanently
Location: http://www.google.com/ [following]
--2018-12-19 00:39:37-- http://www.google.com/
Reusing existing connection to 192.168.43.69:3128.
Proxy request sent, awaiting response... 200 OK
Length: unspecified [text/html]
Saving to: ‘index.html.8’
index.html.8 [ <=> ] 11.72K --.-KB/s in 0.1s
2018-12-19 00:39:38 (97.6 KB/s) - ‘index.html.8’ saved [12001]
これで、Ubuntuでユーザー名とパスワードを使用してSquidプロキシ認証を正常に設定できました。