作者 主題: secure log 出現 passwd: gkr-pam: couldn't update the 'login' keyring password  (閱讀 2082 次)

0 會員 與 1 訪客 正在閱讀本文。

sclin2k

  • 懷疑的國中生
  • **
  • 文章數: 73
    • 檢視個人資料
大家好,
我剛到新公司接手一台別人建置的 Centos 6 的系統,幫USER變更密碼可以變更,但secure log 檔裡會出現如下訊息:
passwd: gkr-pam: couldn't update the 'login' keyring password: no old password was entered

查看/etc/shadow的權限是沒有任何權限,擁有者是root。不知道正不正常?我另一台是 Centos 5權限是644,剛到新公司還沒時間裝測試機對照 :-\

我也試著變更shadow的權限無效!上網查了說可以用pwconv重新產生一個新的shadow檔案,但沒自己試過所以先上來問問。也有另一個解法是說 sudo 的限制,也查看了沒變動過。

請有經驗的前輩先幫忙解答,感謝!

補充:我又找到一篇是說與LDAP有關,我的SERVER有架LDAP給MAIL使用,但還是不知要如何解決 ???
« 上次編輯: 2014-12-26 22:44 由 sclin2k »

netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17394
    • 檢視個人資料
    • http://www.study-area.org
如果是 LDAP,是用 nslcd 做認證嗎?

sclin2k

  • 懷疑的國中生
  • **
  • 文章數: 73
    • 檢視個人資料
謝謝netman

我不是nslcd設定,

最先的 shadow權限我己經裝一台Centos 6 來對照,原先的權限沒問題。重新產生shadow也無法解決 :'(

我把設定貼上來(我也不確定到底是不是LDAP引起的),我是用SSH連線進去幫USER改密碼,順便每日查看secure log發現改完後的訊息。這是錯誤訊息是出現在用SSH進去 <passwd xxxxx> 幫USER改密碼,如果USER透過WEB改密碼是不會有錯誤訊息。上網查好像跟pam_gnome_keyring.so模組有關,有用到的模組:pam.d裡的 login,gdm-password,passwd都看過,但不知問題在哪 :'(

slapd.conf:
database config
access to *
        by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" manage
        by * none

database monitor
access to *
        by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read
        by dn.exact="cn=root,dc=AAA,dc=BBB,dc=com,dc=tw" read
        by * none

access to attrs=userPassword
       by self write
       by anonymous auth
       by dn.base="cn=root,dc=AAA,dc=BBB,dc=com,dc=tw" write
       by * none

access to *
       by self write
       by users read
       by dn.base="cn=root,dc=AAA,dc=BBB,dc=com,dc=tw" write
       by * none

database        bdb
suffix          "dc=BBB,dc=com,dc=tw"
checkpoint      1024 15
rootdn          "cn=manage,dc=BBB,dc=com,dc=tw"
rootpw          {SSHA}
其他預設。

ldap.conf:
BASE    dc=BBB,dc=com,dc=tw
URI     ldap://127.0.0.1

補充:我有把 LDAP service 停用測試,還是有上面的錯誤訊息 :-\
« 上次編輯: 2014-12-29 20:51 由 sclin2k »

sclin2k

  • 懷疑的國中生
  • **
  • 文章數: 73
    • 檢視個人資料
我又發現一個問題,如果我用一般的USER登入SERVER,利用 su - xxx 會一直出現 su: incorrect password,
 :'( 天啊! 現在才發現之前的人裝起來時,就有這個問題了。而我一直用root登入也沒切換到其他使用者,所以一直沒發現這個問題! :'(
到底是修改了什麼權限啊!!!!!

這一篇和我遇到的問題是一樣的:
http://www.linuxquestions.org/questions/linux-newbie-8/unabel-to-switch-user-shell-869157/
« 上次編輯: 2014-12-29 22:17 由 sclin2k »

netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17394
    • 檢視個人資料
    • http://www.study-area.org
如果有用到 LDAP,那先確定您知道 ldapserver 用的 cacert 是哪一份,到哪下載...
然後回來到 系統->管理->認證 那邊設定 LDAP 認證,記得 ldap server 不能填 IP,必須要跟 server cert 的名稱以樣,然後 url 那邊指定 cacert 得下載路徑。
不過,就算如此,centos 6 使用 sssd 也是不能修改密碼,這部分只好手動執行 ladppasswd 來做了...
細節我這裡沒談很多,先給個方向而已。
如果您確定不需要用到 ldap,那就到認證那邊取消吧...

sclin2k

  • 懷疑的國中生
  • **
  • 文章數: 73
    • 檢視個人資料
謝謝netman給我個方向,如果問題解決了再上來回報。

netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17394
    • 檢視個人資料
    • http://www.study-area.org
如果問題還沒解決也歡迎繼續討論啦~

我在CentOS6上的經驗,LDAP問題常卡在cert/CA方面,請確定您用的所有cert都是同一個CA簽發的,並且cacert要同步到所有機器上,然後啟用tls...