Kerberos - Password incorrect while getting initial credentials
特定のサーバで kinit を実行した際にエラーが出てプロセスの起動に失敗するので原因を調査してみました。
tl;dr
- エラーの原因は kinit で使っている keytab と KDC でに登録されている principal のバージョンが異なるのが原因
- keytab を再生成すれば一応対応可能
とりあえず kinit してみる
$ hostname ponteru01.test.co.jp $ sudo kinit -kVt /etc/security/keytabs/ponteru.headless.keytab ponteru@DEV Using default cache: /tmp/krb5cc_0 Using principal: ponteru@DEV Using keytab: /etc/security/keytabs/ponteru.headless.keytab kinit: Password incorrect while getting initial credentials
失敗してしまう…
KDC との差分を確認してみる
多分 KDC との間で整合性が取れてなくて NG なのではないかと予想して確認してみました。
- KDC 側
$ kadmin -p admin/admin -q 'get_principal ponteru@DEV' Couldn't open log file /var/log/kadmind.log: Permission denied Authenticating as principal admin/admin with password. Password for admin/admin@DEV: Principal: ponteru@DEV Expiration date: [never] Last password change: Mon Apr 30 20:26:55 JST 2018 Password expiration date: [never] Maximum ticket life: 1 day 00:00:00 Maximum renewable life: 0 days 00:00:00 Last modified: Mon Apr 30 20:26:55 JST 2018 (admin/admin@DEV) Last successful authentication: [never] Last failed authentication: [never] Failed password attempts: 0 Number of keys: 6 Key: vno 18, aes256-cts-hmac-sha1-96 Key: vno 18, aes128-cts-hmac-sha1-96 Key: vno 18, des3-cbc-sha1 Key: vno 18, arcfour-hmac Key: vno 18, des-hmac-sha1 Key: vno 18, des-cbc-md5 MKey: vno 1 Attributes: Policy: [none]
- keytab の内容を確認
$ sudo klist -kte /etc/security/keytabs/ponteru.headless.keytab Keytab name: FILE:/etc/security/keytabs/ponteru.headless.keytab KVNO Timestamp Principal ---- ------------------- ------------------------------------------------------ 17 11/17/2017 11:33:07 ponteru@DEV (des3-cbc-sha1) 17 11/17/2017 11:33:07 ponteru@DEV (des-cbc-md5) 17 11/17/2017 11:33:07 ponteru@DEV (aes256-cts-hmac-sha1-96) 17 11/17/2017 11:33:07 ponteru@DEV (aes128-cts-hmac-sha1-96) 17 11/17/2017 11:33:07 ponteru@DEV (arcfour-hmac)
KVNO が違ってるんですが、こいつが原因くさい…
原因
似たような現象が HWX のコミュニティで報告されてました。
どうやら予想通り keytab と KDC で管理している key のバージョンが違うのが NG でした。
keytab を再発行することで一時的には対応可能なので、今回は再発行して完了。