![sambaLMPassword 和 sambaNTPassword 有什么区别?](https://linux22.com/image/485126/sambaLMPassword%20%E5%92%8C%20sambaNTPassword%20%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%EF%BC%9F.png)
在配置具有 samba 和 LDAP 支持的 Linux 服务器时,我遇到了这两个字段。它们之间有什么区别?
目前,服务器仅使用 samba 通过网络共享每个用户的主目录,每次用户连接时都会对其进行身份验证。此身份验证是否使用两个字段?
答案1
基本上是这样的:
LM Hash 使用 DES() 算法计算。计算过程相当简单。输入的是密码,采用 OEM Charset(8 位)编码,转换为大写。在大多数情况下,这只是 ASCII 字符串的大写。
NT Hash 就是密码的 MD4()。不过,在这种情况下,密码必须是 Unicode(UCS2LE 编码)。
(一点点)更多信息在这里:http://ubiqx.org/cifs/SMB.html#SMB.8
编辑:有关详细信息,您可能想询问http://stackoverflow.com如何实现这一点的细节可能与编程有关,而不是系统管理
答案2
我同意 Server Horror 的观点,但您应该知道,Windows 95 之后的任何版本都不需要 LM 哈希,并且由于它们的“彩虹表”可用(彩虹表是哈希的完整反向列表,即,对于任何哈希,这里都是密码)应该出于安全考虑而禁用它。
要在 MS 系统上禁用: http://support.microsoft.com/kb/299656
在 samba 上,它是“lanman auth”设置,根据手册页,该设置在当前 samba 中默认是禁用的。
答案3
正如 Server Horror 所说,这些只是不同的哈希计算算法。LM 是 Lan Manager 的简化版本(您可能可以通过搜索 Lan Manager 而不是 LM 找到更多相关结果)。
此外,这可能会有所帮助:http://www.linuxjournal.com/article/2717