
如何允許使用者使用“登入”su -
使用者" 但阻止使用者使用 SSH 登入?
我嘗試將外殼設置為,/bin/false
但當我嘗試時su
它不起作用。
有幾種方法只允許透過 登入su
?
SSH 是AllowUser
可行的方法嗎? (如果這是要走的路,我會怎麼做)
答案1
您可以使用允許用戶/允許組如果您只有少數使用者/群組可以透過 ssh 登入或拒絕用戶/拒絕組如果您只有幾個使用者/群組不是允許登入。請注意,這僅限制透過 ssh 登錄,其他登入方式(控制台、ftp...)仍然是可能的。您需要將這些選項新增至您的/etc/ssh/sshd_config大多數 ssh 安裝的檔案。
如果您已將登入 shell 設定為/bin/假你可以使用su -s /bin/bash user
(替換/bin/bash與您選擇的外殼)
答案2
如果您仍然希望 su 工作,可以使用sudo -u [username]
或傳遞-s /bin/bash
給 su 作為臨時 shell。在沒有 shell 的情況下,它們都執行相同的操作/etc/passwd
。
答案3
如果帳號沒有密碼(passwd -d 用戶名),他們無法互動式登入(控制台、SSH 等)。如果他們有一個有效的外殼,蘇仍然會工作。但請注意「互動式」;如果有人決定為該帳戶設定 SSH 金鑰對,它就會起作用!
答案4
除了上述的(停用和/或不設定使用者密碼)之外,pam_access 模組(尋找 pam_access 和 access.conf 的手冊頁)還可用於控制登入存取。