Ssh

遠端登錄時組與本地組不同

  • April 5, 2019

我們將使用者儲存在 LDAP 中,以及一些跨不同系統(包括組織角色wheel)有意義的組。還有一些位於工作站的本地組,例如audiovideo希望放入 LDAP 中的組。現在,如果我在本地登錄,我會得到那些本地組,但如果我通過 SSH 登錄到同一台機器,我會缺少它們。如果我之後直接使用,它們當然會回來su。我可能走錯了路,但懷疑 PAM。

相關條目來自nsswitch.conf

passwd:      compat ldap
shadow:      compat ldap
group:       compat ldap

至於 pam,總是 auth 行,但其他行相同

/etc/pam.d/sshd

auth            include         system-remote-login

/etc/pam.d/system-remote-login(與system-local-login我可能添加的相同)

auth            include         system-login

/etc/pam.d/system-login

auth            required        pam_tally2.so onerr=succeed
auth            required        pam_shells.so 
auth            required        pam_nologin.so 
auth            include         system-auth
auth            optional        pam_gnome_keyring.so

account         required        pam_access.so 
account         required        pam_nologin.so 
account         include         system-auth
account         required        pam_tally2.so onerr=succeed 

password        include         system-auth
password        optional        pam_gnome_keyring.so

session         optional        pam_loginuid.so
session         required        pam_env.so 
session         optional        pam_lastlog.so 
session         include         system-auth
session         optional        pam_gnome_keyring.so auto_start
session         optional        pam_motd.so motd=/etc/motd
session         optional        pam_mail.so

/etc/pam.d/su

auth       sufficient   pam_rootok.so
auth       required     pam_wheel.so use_uid
auth       include              system-auth

account    include              system-auth

password   include              system-auth

session    include              system-auth
session    required     pam_env.so
session    optional             pam_xauth.so

/etc/pam.d/common-auth:

auth    required     pam_group.so use_first_pass

可能是什麼問題,我將如何解決?我很樂意提供所需的其他資訊。

我今天振作起來,終於解決了。pam 鍊是這樣工作的

  • /etc/pam.d/sshd包括:

    • /etc/pam.d/system-remote-login包括:

      • /etc/pam.d/system-login包括:

        • /etc/pam.d/system-auth有一個可選要求

顯然最後一個包含由於某種原因不起作用。到目前為止,我如此困惑的原因是我相信這些包含會起作用,但事實並非如此。如果有人能解釋為什麼我會非常感激。我知道這一點,因為如果我添加該行

auth    optional  pam_group.so

進入/etc/pam.d/system-login然後它工作。

引用自:https://unix.stackexchange.com/questions/60285