抓包了一下认证客户端, 竟然是标准的MD5-Challenge的dot1x认证. Linux下使用NetworkManager自带的802.1X认证组件可正常接入网络, 那么, Windows呢?
参考: windows7 - windows10开启802.1x md5质询 - 蓝天上的云℡ - 博客园 (cnblogs.com)
1. 启用Wired-AutoConfig服务
在"计算机管理/服务"中启用Wired-AutoConfig服务. 或者, 使用如下命令行:
::设置服务启动模式为自动(注意start=后面有一个空格)
sc config dot3svc start= auto
::rem sc config WlanSvc start= auto
::使服务立刻运行
net start dot3svc
::rem net start WlanSvc
另外, 别忘了装winpcap. 可以装一个wireshark, 这样就有winpcap了.
2. 启用MD5认证方式
在win7+的系统上默认是没有MD5认证方式的, 可以使用如下的注册表项开启:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\RasMan\PPP\EAP\4]
"FriendlyName"="MD5-Challenge"
"RolesSupported"=dword:0000000a
"Path"=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,\
00,25,00,5c,00,53,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,52,00,\
61,00,73,00,63,00,68,00,61,00,70,00,2e,00,64,00,6c,00,6c,00,00,00
"InvokeUsernameDialog"=dword:00000001
"InvokenPasswordDialog"=dword:00000001
3. 在控制面板中为接口开启802.1X认证
配置802.1X认证, 并选用"MD5-challenge"方式. 在"其他设置"中指定"用户身份验证".
但是在我实际操作时遇到了个问题, 就是点击"确定"后系统弹窗: 发生意外错误. 然后控制面板页面无法点击. 尝试了很多方法都没能解决这个问题.
多次尝试后感觉是认证弹窗没有显示, 无法输入认证信息, 从而导致连接失败. 尝试了很多方法后, 发现只要关闭Powertoys即可正常弹框并认证了. 如果还不可以的话, 可以重启一下资源管理器再试试.
猜测可能跟这玩意有关: