1
任何人都可以告訴我這個錯誤是什麼意思。什麼時候會出現。我嘗試了谷歌搜索,但沒有結果。請指出正確的文檔以瞭解此錯誤。pam_unix:錯誤的用戶名是什麼意思?
任何人都可以告訴我這個錯誤是什麼意思。什麼時候會出現。我嘗試了谷歌搜索,但沒有結果。請指出正確的文檔以瞭解此錯誤。pam_unix:錯誤的用戶名是什麼意思?
此錯誤由pam_unix模塊中在下面的代碼(:Linux的PAM-0.99.5源):觸發
if (name == NULL || !isalnum(*name))
name == NULL
的將由編程錯誤在使用PAM的觸發協議,其中用戶名變量未被設置爲pam會話的一部分。
的第二個原因,並且可能是最有趣的是,用戶名的第一個字符需要爲α-NUM即字符必須是A-Z
一個,a-z
或0-9
。重音字符不被接受。
的Linux-PAM的較新版本(從fedorahosted source of pam_unix.c看出)表示:
if (name == NULL || name[0] == '-' || name[0] == '+')
這意味着它僅拒絕-
和+
字符 - 即,它是比舊的源不太嚴格。
您可以請我指向包含此代碼的文檔或鏈接。 –
它實際上在Linux-PAM的源代碼中(https://fedorahosted.org/linux-pam/browser) - 儘管在最新的源代碼中它只拒絕'+'和' - ' - https://fedorahosted.org/ linux-pam/browser/modules/pam_unix/pam_unix_auth.c#L131 – Petesh
非常感謝Petesh :) –