主頁 > 知識庫 > 解決linux下set_loginuid failed opening loginuid報錯問題

解決linux下set_loginuid failed opening loginuid報錯問題

熱門標(biāo)簽:美團(tuán) 服務(wù)器配置 電話機(jī)器人搭建 外呼系統(tǒng) 家政服務(wù)網(wǎng)絡(luò) 百度競價點(diǎn)擊價格的計算公式 解決方案 硅谷的囚徒呼叫中心

 自從使用php-syslog-ng監(jiān)控日志信息后,經(jīng)常發(fā)現(xiàn)一些過去會忽略的報錯信息,目前正逐一解決中。其中一個報錯發(fā)生在,我使用密鑰通過ssh登陸到服務(wù)器的時候,日志信息顯示:

Nov 19 10:32:20 printserver auth 10:32:20 pam_loginuid[9691]: set_loginuid failed opening loginuid
Nov 19 10:32:20 printserver auth 10:32:20 remote(pam_unix)[9691]: session opened for user root by (uid=0)
Nov 19 10:32:20 printserver auth 10:32:20 sshd[9689]: Accepted publickey for root from 192.168.228.244 port
1487 ssh2

一、原因
操作系統(tǒng):紅旗DC Server 5.0
分析以前的系統(tǒng)日志,并沒有發(fā)現(xiàn)類似的報錯信息,故懷疑是最近的操作導(dǎo)致的。
從兩方面分析:

1、openssh-server從4.0p1升級到4.7p1;
2、使用密鑰登陸代替原來的密碼登陸方式。

先嘗試用原來的密碼方式登陸,沒有報錯;再對比其他機(jī)器上原4.0p1版的狀態(tài),使用密鑰登陸,也沒有報錯。由于我升級openssh-server的時候,使用它自帶的默認(rèn)配置文件而非系統(tǒng)4.0p1版的配置,故覺得報錯,和配置及使用密鑰登陸都有關(guān)。

二、解決
經(jīng)查找資料后測試,可通過修改openssh-server的配置文件解決問題。
修改/etc/ssh/sshd_config為:


#ChallengeResponseAuthentication yes
ChallengeResponseAuthentication no  #關(guān)閉挑戰(zhàn)應(yīng)答方式
UsePAM no  #不使用PAM認(rèn)證

保存后,重啟sshd服務(wù)即可。

三、說明
上述兩個參數(shù)的說明,可從幫助文檔得到注解:


# Set this to 'yes' to enable PAM authentication, account processing,
# and session processing. If this is enabled, PAM authentication will
# be allowed through the ChallengeResponseAuthentication and
# PasswordAuthentication.  Depending on your PAM configuration,
# PAM authentication via ChallengeResponseAuthentication may bypass
# the setting of "PermitRootLogin without-password".
# If you just want the PAM account and session checks to run without
# PAM authentication, then enable this but set PasswordAuthentication
# and ChallengeResponseAuthentication to 'no'.

簡單來講,就是如果打開UsePAM,則會根據(jù)ChallengeResponseAuthentication來決定是否使用挑戰(zhàn)應(yīng)答方式(我不知道是否這樣翻譯)。而該方式是根據(jù)密碼判斷的,不能和密鑰登陸兼容,所以會出現(xiàn)報錯。
不同的配置,可從日志中得到完全不同的結(jié)果:
1、關(guān)閉ChallengeResponseAuthentication和打開UsePAM
使用密鑰登陸:

引用
Nov 19 10:57:20 printserver auth 10:57:20 sshd(pam_unix)[10322]: session opened for user root by root(uid=0)
Nov 19 10:57:20 printserver auth 10:57:20 sshd[10320]: Accepted publickey for root from 192.168.228.244 port 1595 ssh2

2、打開ChallengeResponseAuthentication和UsePAM
使用密鑰登陸就會報錯,而使用密碼登陸是正常的:

Nov 19 12:23:33 printserver sshd(pam_unix)[24454]: session opened for user root by root(uid=0)

四、其他
在Google的時候,發(fā)現(xiàn)有另外一種解決方法:點(diǎn)擊
就是修改/etc/pam.d/sshd,把下面這行注釋:

session required pam_loginuid.so

不過,我在系統(tǒng)中并沒有找到這行。反而,從日志可以看到,報錯是由PAM調(diào)用remote發(fā)出的,所以,我修改/etc/pam.d/remote,把這行注釋:

引用
session    required     pam_loginuid.so

這樣,確認(rèn)不會再報上面的錯誤。但登陸的時候,日志就會顯示:

Nov 19 10:06:31 printserver sshd[9582]: Accepted publickey for root from 192.168.228.244
port 1228 ssh2
Nov 19 10:06:31 printserver remote(pam_unix)[9584]: session opened for user root by (uid=0)
Nov 19 10:06:31 login -- root[9584]: ROOT LOGIN ON pts/2 FROM 192.168.228.244

發(fā)出信息的主機(jī)從printserver改為login了,日志分類會有有錯,不利于使用咯。
◎至于因?yàn)楹诵臎]有打開CONFIG_AUDIT功能引起的解決辦法
經(jīng)確認(rèn),紅旗DC Server 5.0的核心是已經(jīng)打開CONFIG_AUDIT的,所以,解決方法無效。

標(biāo)簽:韶關(guān) 邢臺 撫州 臨沂 北海 防城港 烏蘭察布 南昌

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《解決linux下set_loginuid failed opening loginuid報錯問題》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266