Linux

創建新的 Kerberos 使用者

  • November 6, 2011

我繼承了一個執行 Kerberos 的 Fedora Linux 系統,我正在嘗試創建一個新使用者。我已經能夠調出 kadmin 提示符,並且正在嘗試創建使用者 NewUser,因此我嘗試發出以下命令:

ank -policy users NewUser

但我收到錯誤消息:

add_principal: Policy does not exist while creating "NewUser@mydomain.com".

然後我嘗試了:

addprinc NewUser

這似乎成功了,但是當我嘗試使用這個新帳戶登錄到我們的 Kerberos 域上的其他機器時,我得到了一個permission denied錯誤。我還需要做什麼才能創建新的 Kerberos 使用者?

Kerberos 是一個身份驗證系統;它驗證使用者是他們所說的那個人。然而,它不是一個授權系統;誰可以做什麼(包括登錄)並沒有太多發言權。

特別是,要登錄 Linux 系統,您需要來自 NSS(名稱服務開關)的所有 passwd 條目。所以這個使用者需要指定一個主目錄、uid、主 gid 和預設 shell。在正常 Linux 系統上,此資訊通常由/etc/passwd. 但是,NSS 允許您使用其他類型的服務來提供此資訊,這在網路環境中很常見。該資訊可以來自本地文件、LDAP、NIS、winbind(samba) 或其他。NSS 可以在/etc/nsswitch.conf. 查看此文件應顯示 passwd 資訊的來源。執行命令getent passwd username查詢 nss 以獲取與指定使用者關聯的資訊 passwd。

如果 kerberos 工作正常,kinit username應該允許您獲取使用者的憑據。(使用者klist查看憑據,kdestroy刪除它們)

如果 NSS 正在工作,getent passwd username則應顯示該使用者的有效密碼條目。

如果 PAM 配置正確(在 中/etc/pam.d,可能使用 pam_krb5 模組),並且 NSS 和 kerberos 正在工作,則使用者應該能夠登錄。

如果登錄仍然失敗,可能值得在命令行而不是圖形登錄上測試登錄(如果尚未這樣做)。不正確的權限或不存在的主目錄可能會導致圖形環境出現問題,但對於 shell 登錄來說問題不大。

引用自:https://serverfault.com/questions/250369