iT邦幫忙

0

關於 pam_sss 的 log 輸出資訊

  • 分享至 

  • xImage

仍在學習路上想向前輩偷師的資深菜鳥又來問問題了。
工作地方有系統監控,前兩天登入 Linux 主機時發了這個通報

sshd[xxxx]: pam_sss(sshd:auth): authentication success; logname= uid=0 euid=0 tty=ssh ruser= rhost=x.x.x.x user=ipaxxxx

這個 ipaxxxx 的 uid 不是 0 ,為什麼這條訊息卻顯示 0 ?
基本上,這台主機的 ssh 有限制,不允許 id 為 0 的帳號登入。

想請問這個訊息能怎麼調整設定,使其顯示正確的資訊?
讓我偷懶,直接告訴我答案,歡迎。
不讓我偷懶,只告訴我去那看文件,也可以。
謝謝!

canchang iT邦新手 3 級 ‧ 2023-07-05 11:31:07 檢舉
自問自答,請資深高手幫忙找的資訊。
----------
當使用者使用FreeIPA帳號登入時,SSH的流程大致如下:

用戶從客戶端發起SSH連接到服務器。
服務器的SSHD進程接收連接請求。SSHD進程在大多數情況下會以root用戶(即uid為0)的身份運行,以便能夠對網絡接口進行必要的操作並完成認證過程。
SSHD進程會調用PAM(插件式認證模塊)系統來驗證用戶。在你的設定中,它使用了pam_sss模塊,該模塊會和SSSD(系統安全服務守護進程)交互。SSSD與FreeIPA服務器交互,並將用戶的認證資訊傳給FreeIPA服務器來進行驗證。
FreeIPA服務器確認用戶的認證資訊,並回傳驗證結果。如果驗證成功,SSSD將結果傳給pam_sss模塊,然後傳給SSHD。
如果認證成功,SSHD進程將會以該用戶的身份啟動一個新的SSHD子進程,用於管理該SSH會話。

因此,你看到的日誌中的uid為0,實際上是在用戶認證過程中產生的。在此階段,SSHD進程仍以root用戶的身份運行。然而,這並不意味著用戶登錄後的uid會是0。一旦認證成功,SSHD將會以該用戶的身份運行新的SSHD子進程,並管理該SSH會話。

所以,此日誌中的uid為0並不意味著用戶以root用戶的身份登錄,而是指此時的SSHD進程是以root的身份運行的。
----------
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答