イカサーバーを運営しています。
私のユーザーが自分のユーザー名を使用して私のプロキシサーバーを使用することを制限したいと思います。たとえば、ユーザー名(user1)の制限を定義しました。たとえば、3つのデバイスが同時にユーザー名で接続し、プロキシサーバーを使用している場合、他の誰もそのユーザー名でプロキシサーバーに接続して使用することはできません。 3人のユーザーの1人がプロキシの使用を停止するまで機能します。
私ができる方法はありますか?
私の質問が理解できず、説明が不足しても予めご了承ください。
答え1
イカはこれができないと思います。
ユーザーの最大IPアドレス数を設定できます(参照:max_user_ip
ACLタイプ)しかし、http / proxy認証のためのログアウトメカニズムはありません。
少なくとも一貫したまたは信頼できるメカニズムはありません。一部のブラウザは認証資格情報を簡単に忘れますが、ほとんどのブラウザはそうではありません。最近ではhttp認証が広く使われていないようです。誰もが認証に一種のログインページとクッキーを使用します。 90年代半ばにも、http認証はWebの状態の非保存特性を説明するためにWebサイトのユーザーセッション管理を検討または実装する前に一般的に使用される唯一のオプションでしたので、使用するのは非常に面倒でした。
可能であっても、ユーザーがログアウトするのを忘れたり、怠惰になったりしてログアウトできないという問題がある場合、またはデスクトップにログインした状態で、今は遠いノートパソコンやタブレットにログインしているため、ログアウトできない問題があるでしょう。
したがって、ログアウトボタンはありません。
ただし、TTL(Time to Live)設定があります。IP TTL検証- これにより、ユーザーが認証したときに認証がX秒間有効になります。
解決策:max_user_ip
3に設定し、authenticate_ip_ttl
約3600秒(1時間)に設定します。これは、人々がデバイスから積極的に検索するときに認証要求を継続的に受け取らずにプロキシを使用するのに十分な長さでなければなりませんが、他のデバイスからのログイン時間をすばやく超えるほど短くする必要があります。
squid.confの例からの抜粋:
# acl aclname max_user_ip [-s] number
# # This will be matched when the user attempts to log in from more
# # than <number> different ip addresses. The authenticate_ip_ttl
# # parameter controls the timeout on the ip entries. [fast]
# # If -s is specified the limit is strict, denying browsing
# # from any further IP addresses until the ttl has expired. Without
# # -s Squid will just annoy the user by "randomly" denying requests.
# # (the counter is reset each time the limit is reached and a
# # request is denied)
# # NOTE: in acceleration mode or where there is mesh of child proxies,
# # clients may appear to come from multiple addresses if they are
# # going through proxy farms, so a limit of 1 may cause user problems.
# TAG: authenticate_ip_ttl
# If you use proxy authentication and the 'max_user_ip' ACL,
# this directive controls how long Squid remembers the IP
# addresses associated with each user. Use a small value
# (e.g., 60 seconds) if your users might change addresses
# quickly, as is the case with dialup. You might be safe
# using a larger value (e.g., 2 hours) in a corporate LAN
# environment with relatively static address assignments.
#Default:
# authenticate_ip_ttl 1 second