Squid ログインと正しいクライアント IP の両方を必須にする
両方の ACL 条件を必須にすることで、名前付き Squid プロキシユーザーを承認済みの送信元アドレスに制限します。
正しいパスワードはこのポリシーの半分にすぎません。アカウントは承認済みのクライアントアドレスからも動作する必要があります。Squid では、両方のチェックを同じアクセスルールに置くことが、その要件と 2 つの別々の入口との違いです。
認証がすでに設定されている場合、たとえば Squid 6.13 NCSA のセットアップ では、基本ポリシーは次のとおりです。
acl approved_login proxy_auth alex
acl approved_source src 192.0.2.40/32
http_access allow approved_source approved_login
http_access deny all
Squid が実際に受け取る送信元を使用してください。サンプルはドキュメント用アドレスです。安全でない宛先ポート、ローカルサービス、CONNECT トラフィックに対する以前の保護は維持してください。この断片は複合条件を示すもので、完全なリスナー設定ではありません。
その上のルールを確認する
以前の広い許可があると、新しい条件に到達する前にリクエストが受け入れられる可能性があります。http_access リファレンスは順序付きマッチングを説明しています。インクルードされたファイルを含め、順序全体を読んでください。
ユーザー名用の許可と送信元用の許可は、両方を要求するものではありません。どちらの行も独立して成功できます。それは別のポリシーです。
proxy_auth ACL は認証ヘルパーに依存します。これを定義することは、ユーザーを作成したりパスワードを検証したりする方法ではありません。この例は、クライアントがプロキシ認証のチャレンジに応答できる明示的プロキシ向けです。
送信元の識別にも限界があります。1 つの NAT の背後にいる人は同じアドレスを共有でき、移動するノート PC はアドレスを変えることがあります。追加の条件はアカウントの使用可能なネットワーク位置を狭めるだけで、物理的なコンピューターを確実に識別するものではありません。この制限が、条件を追加した理由と一致していることを確認してください。