NTLM认证

NTLM
默认设置(NTLM 协议)基于一种“提问 - 答复”机制来进行客户端验证。NTLM是NT LAN Manager的缩写,这也说明了协议的来源。NTLM 是 Windows NT 早期版本的标准安全协议,Windows 2000 支持 NTLM 是为了保持向后兼容。Windows 2000内置三种基本安全协议之一。


NTLM工作流程是这样的: 


1、客户端首先在本地加密当前用户的密码成为密码散列 
2、客户端向服务器发送自己的帐号,这个帐号是没有经过加密的,明文直接传输 
3、服务器产生一个16位的随机数字发送给客户端,作为一个 challenge(挑战) 
4、客户端再用加密后的密码散列来加密这个 challenge ,然后把这个返回给服务器。作为 response(响应) 
5、服务器把用户名、给客户端的challenge 、客户端返回的 response 这三个东西,发送域控制器 
6、域控制器用这个用户名在 SAM密码管理库中找到这个用户的密码散列,然后使用这个密码散列来加密 challenge。 
7、域控制器比较两次加密的 challenge ,如果一样,那么认证成功。 

从上面的过程我们可以看出,NTLM是以当前用户的身份向Telnet服务器发送登录请求的,而不是用你自己的帐户和密码登录,显然,你的登录将会失 败。举个例子来说,你家的机器名为A(本地机器),你登录的机器名为B(远地机器),你在A上的帐户是ABC,密码是1234,你在B上的帐号是XYZ, 密码是5678,当你想Telnet到B时,NTLM将自动以当前用户的帐号和密码作为登录的凭据来进行上面的7项操作,即用ABC和1234,而并非用 你要登录帐号XYZ和5678,且这些都是自动完成的,根本不给你动手的机会,因此你的登录操作将失败。 

NTLM身份验证选项有三个值。默认是2。可以有下面这些值: 

0: 不使用 NTLM 身份验证。 
1: 先尝试 NTLM 身份验证,如果失败,再使用用户名和密码。 
2: 只使用 NTLM 身份验证。 

SharePoint 产品和技术中提供了 NTLM,以便与只能使用 NTLM 验证的系统进行通信。
阅读更多
上一篇Squid中文权威指南第12章-验证配置
下一篇分布式任务分发处理框架-Gearman
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭