Linux

從管理伺服器初始化 kadmin 界面時出現 Kerberos 錯誤

  • December 20, 2019

我按照 MIT Kerberos 5 說明更新了我的 Kerberos 5 伺服器的主密鑰。我重新啟動了 kdc 和 kadmind 服務並使用 krb5-prop 將更改推送到其他伺服器。

現在我無法從任何伺服器連接到 kadmin,包括管理伺服器:

$kadmin
Authenticating as principal jacob/admin@THE.REALM with password.
Password for jacob/admin@THE.REALM:
kadmin: GSS-API (or Kerberos) error while initializing kadmin interface

從我的搜尋中,我發現造成這種情況的一個常見原因是時間同步問題,但機器在一秒鐘內匹配,即使從執行 kadmind 的伺服器也失敗。

我不知道如何解決這個問題。我的 kadmind 版本沒有我發現的任何類型的調試參數或詳細的日誌記錄級別。我試過用 -nofork 從命令行執行它,那裡很安靜。

密碼被接受。我可以將 kinit 作為目標原則,如果我輸入的密碼錯誤,它會告訴我。

kadmin: Incorrect password while initializing kadmin interface

如果 kadmind 服務沒有執行,它也會給出不同的錯誤。

kadmin: Communication failure with server while initializing kadmin interface

在更新主密碼之前我沒有測試 kadmin,但是我最近使用它並且沒有進行其他配置更改。我試過檢查我的密鑰版本號(kvno),它們似乎是正確的。

還有什麼可能導致這種情況?我還能在哪裡檢查?如何調試 kadmind?

Debian 8,krb5-admin-server 1.12.1。

我遇到了同樣的問題(相同的 Debian 和 krb5-admin-server 版本)。

和你一樣,當我從 kerberos 管理伺服器本身執行 kadmin 時它不起作用,這排除了時間差異(我什至安裝了 NTP 以確保 - 它對問題沒有任何影響)。

就我而言,問題原來是熵的問題。Kadmin 非常安全需要大量熵來生成會話密鑰。

我的設置(測試設置)在虛擬機上執行。我會發現我根本無法使用 kadmin,但大約半小時後,kadmin 會“神秘地”開始工作。

您可以在以下位置檢查系統熵:

/proc/sys/kernel/random/entropy_avail

為了解決這個問題,我使用了主機的熵(/dev/random),並使用 rng-tools 使 kadmin 可以使用它。

順便說一句,對於一般的 kerberos 故障排除,您可以查看:

https://web.mit.edu/kerberos/krb5-latest/doc/admin/troubleshoot.html

以下內容會將跟踪日誌發送到標準輸出,以便您查看詳細資訊:

env KRB5_TRACE=/dev/stdout kadmin -p johndoe/admin@KRB.TEST.NET

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