89

私は現在 acl で ip を使用しており、ユーザー名とパスワードを使用してこれを行いたいと考えています。

4

1 に答える 1

215

Ubuntu 14.04で基本認証をセットアップするために私がしなければならなかったことは次のとおりです(他のどこにもガイドが見つかりませんでした)

基本的なイカの設定

/etc/squid3/squid.conf 超肥大化したデフォルト設定ファイルの代わりに

auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid3/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated

# Choose the port you want. Below we set it to default 3128.
http_port 3128

古いncsa_authではなく、 basic_ncsa_authプログラムに注意してください

イカ2.x

squid 2.x の場合、/etc/squid/squid.confファイルを編集して以下を配置する必要があります。

auth_param basic program /usr/lib/squid/digest_pw_auth /etc/squid/passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated

ユーザーの設定

sudo htpasswd -c /etc/squid3/passwords username_you_like

選択したユーザー名のパスワードを 2 回入力してから、

sudo service squid3 restart

イカ2.x

sudo htpasswd -c /etc/squid/passwords username_you_like

選択したユーザー名のパスワードを 2 回入力してから、

sudo service squid restart

htdigest と htpasswd

私に尋ねた多くの人のために: 2 つのツールは異なるファイル形式を生成します:

  • htdigestパスワードを平文で保存します。
  • htpasswdハッシュされたパスワードを保存します(さまざまなハッシュアルゴリズムが利用可能です)

この形式の違いにもかかわらず、 は でbasic_ncsa_auth 生成されたパスワード ファイルを解析できますhtdigest。したがって、代わりに次を使用できます。

sudo htdigest -c /etc/squid3/passwords realm_you_like username_you_like

このアプローチは経験的であり、文書化されておらず、Squid の将来のバージョンではサポートされない可能性があることに注意してください。

Ubuntu 14.04 ではhtdigesthtpasswd両方とも[apache2-utils][1]パッケージで利用できます。

マックOS

上記と同様ですが、ファイルパスが異なります。

イカをインストール

brew install squid

イカサービス開始

brew services start squid

Squid 設定ファイルは に保存されてい/usr/local/etc/squid.confます。

次の行をコメントまたは削除します。

http_access allow localnet

次に、Linux config と同様に (ただし、パスが更新されています)、これを追加します。

auth_param basic program /usr/local/Cellar/squid/4.8/libexec/basic_ncsa_auth /usr/local/etc/squid_passwords
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated

へのパスbasic_ncsa_authは、 を使用する場合にインストールされているバージョンに依存するため、異なる場合があることに注意してください。brewこれは で確認できますls /usr/local/Cellar/squid/。また、次のセクションのすぐ下に上記を追加する必要があることに注意してください。

#
# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
#

ここで、user:password の基本認証資格情報を自分で生成します (注:htpasswdおよびhtdigest両方とも MacOS でも使用できます)。

htpasswd -c /usr/local/etc/squid_passwords username_you_like

イカサービスを再起動します

brew services restart squid
于 2014-07-22T02:22:20.673 に答える