曾几何时,南美洲有一个美丽温暖的虚拟丛林,一个乌贼服务器就住在那里。这是网络的感知图像:
<the Internet>
|
|
A | B
Users <---------> [squid-Server] <---> [LDAP-Server]
当Users
请求访问Internet时,squid
询问他们的姓名和护照,并通过LDAP
ldap 对其进行身份验证,如果ldap批准了它们,则他授予了它们。
每个人都很高兴,直到一些嗅探者在用户和鱿鱼之间的路径中偷走了护照[路径A]。发生这场灾难是因为鱿鱼使用了Basic-Authentication
方法。
丛林人民聚集起来解决问题。一些兔子提供使用NTLM
方法。蛇者优先Digest-Authentication
,同时Kerberos
建议由树木。
毕竟,丛林人提供的许多解决方案令所有人感到困惑!狮子决定结束这种情况。他大喊解决方案的规则:
- 解决方案是否安全!
- 解决方案应适用于大多数浏览器和软件(例如下载软件)吗
- 解决方案应该简单并且不需要其他大型子系统(例如Samba服务器)
- 该方法不应依赖于特殊领域。(例如Active Directory)
然后,猴子提供了一个非常合理,全面而明智的解决方案,使他成为了丛林中的新国王!
你能猜出解决方案是什么?
提示:squid
和
之间的路径LDAP
受到狮子的保护,因此解决方案不必保护它。
注意:如果故事很无聊且混乱,很抱歉,但是大多数故事都是真实的!=)
/~\/~\/~\ /\~/~\/~\/~\/~\ ((/~\/~\/~\/~\/~\)) (/~\/~\/~\/~\/~\/~\/~\) (//// ~ ~ \\\\) (\\\\( (0) (0) )////) (\\\\( __\-/__ )////) (\\\( /-\ )///) (\\\( (""""") )///) (\\\( \^^^/ )///) (\\\( )///) (\/~\/~\/~\/) ** (\/~\/~\/) *####* | | **** /| | | |\ \\ _/ | | | | \_ _________// Thanks! (,,)(,,)_(,,)(,,)--------'
更新:
Massimo解释了Users
- squid
和squid
- 之间的身份验证方法LDAP
不必相同。我们可以使用任意方法从用户那里获取身份验证信息,并使用任意方法向经过身份验证的收集数据。
但是有一个问题:所有类型的身份验证器的输入/输出都不相同。例如:
- 一个
Basic
认证器应在一条线上读“用户名密码”对和回复一OK
如果用户通是正确的或ERR
- 一个
Digest
认证器应该读取username:realm
和回复一个十六进制编码的HA(A1)
或ERR
。
尽管client-squid方法和squid-ldap方法之间没有直接关系,但是从客户端收集的数据必须与squid-ldap部分中使用的方法兼容。因此,如果我们在用户端更改身份验证方法,则可能也应该更改我们的身份验证器。
因此,问题简化为:
在第一层,我(猴子!)正在用户端寻找一种好的身份验证方法。您推荐大多数浏览器安全和支持的哪种方法?我在迷糊之间
NTLM
,Kerberos
和Digest
。在哪里可以找到支持所选方法的凭据信息并通过LDAP进行身份验证的身份验证器。