我有一台运行FreeRADIUS 3的FreeBSD 10.0服务器,事情没有任何明显的原因。
我使用Samba4的Winbind来validationntlm_auth 。 我已经做了一些debugging来解决问题,但是我无法find问题所在。
ntlm_auth正在工作:
ntlm_auth --username=ferrao --request-nt-key Password: NT_STATUS_OK: Success (0x0)
但是,在进行EAP-PEAPauthentication时,RADIUS失败,并且在debugging模式下运行FreeRADIUS,这是错误消息:
(9) mschap : Executing: /usr/local/bin/ntlm_auth --request-nt-key --username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}} --challenge=%{%{mschap:Challenge}:-00} --nt-response=%{%{mschap:NT-Response}:-00} (9) mschap : EXPAND --username=%{%{Stripped-User-Name}:-%{%{User-Name}:-None}} (9) mschap : --> --username=ferrao (9) mschap : Creating challenge hash with username: ferrao (9) mschap : EXPAND --challenge=%{%{mschap:Challenge}:-00} (9) mschap : --> --challenge=082e8ba7b848aaae (9) mschap : EXPAND --nt-response=%{%{mschap:NT-Response}:-00} (9) mschap : --> --nt-response=27b40a6d1dba1b4acfd33aff5c710a43e70d050269087bf1 (9) ERROR: mschap : Program returned code (1) and output 'Reading winbind reply failed! (0xc0000001)' (9) mschap : External script failed. (9) ERROR: mschap : External script says: Reading winbind reply failed! (0xc0000001) (9) ERROR: mschap : MS-CHAP2-Response is incorrect (9) [mschap] = reject (9) } # Auth-Type MS-CHAP = reject (9) eap : Freeing handler (9) [eap] = reject (9) } # authenticate = reject (9) Failed to authenticate the user. (9) Login incorrect (mschap: Program returned code (1) and output 'Reading winbind reply failed! (0xc0000001)'): [ferrao/<via Auth-Type = EAP>] (from client 146.164.136.0/26 port 0 via TLS tunnel)
所以Winbind和FreeRADIUS有些问题,我不知道是什么。
提前致谢,
检查winbind特权pipe道的权限 – FreeRADIUS运行的用户需要能够访问它。 您可能需要将FreeRADIUS用户添加到winbindd_priv组中,然后确保特权pipe道属于root:winbindd_priv。
winbind特权pipe道通常位于/var/lib/samba/winbindd_privileged/ ,或位于/ var /下的类似位置。