一,解决方法:
win7,开始菜单->输入secpol.msc,打开本地策略,点开本地策略-》安全选项,右边下拉找到“网络安全:LAN管理身份证验证级别”
这个项默认是没有定义,将其设置为发送LM和NTLM响应。
OK,此时再次尝试访问XP共享,输入正确的帐号密码就可以访问了
注:Vista之后的windows系统(包括win7)强制使用NTLMv2认证,而winxp默认支持LM&NTLM,所以才这么修改
另外还可能是域问题。打开win7的网络共享中心,关闭密码保护共享就好了。需要注销,或者你直接选择你的网络位置为公用,就能免去输入密码的麻烦事。公用的默认的就是关闭密码保护共享。
二,禁止使用LM认证方法:
WindowsNTServersServicePack4和后续的版本都支持三种不同的身份验证方法:LanManager(LM)身份验证;WindowsNT(也叫NTLM)身份验证;WindowsNTVersion2.0(也叫NTLM2)身份验证。
默认的情况下,当一个客户尝试连接一台同时支持LM和NTLM身份验证方法的服务器时,LM身份验证会优先被使用。所以建议禁止LM身份验证方法。
1.打开注册表编辑器;
2.定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa;
(或者删除也行)
3.选择菜单“编辑”,“添加数值”;
4.数值名称中输入:LMCompatibilityLevel,数值类型为:DWORD0或1,单击确定;
5.双击新建的数据,并根据具体情况设置以下值:
0-发送LM和NTLM响应;
1-发送LM和NTLM响应;
2-仅发送NTLM响应;(我使用的是这个,因为win7家庭版没有组策略模块)
3-仅发送NTLMv2响应;(Windows2000有效)
4-仅发送NTLMv2响应,拒绝LM;(Windows2000有效)
5-仅发送NTLMv2响应,拒绝LM和NTLM;(Windows2000有效)
6.关闭注册表编辑器;
7.重新启动机器。