Ssh

強制對特定使用者進行 SSH 公鑰認證

  • August 17, 2021

是否可以強制特定使用者使用公鑰登錄,同時允許其他使用者使用密碼登錄?由於公鑰身份驗證(使用密碼)比僅密碼身份驗證強,我們希望要求 sudoers 使用公鑰登錄。但是,強制普通使用者這樣做不太方便。在sshd_config中,我沒有看到任何與策略相關的配置。

你有幾個選擇。在這個答案中,我將假設您sudoers定義了一個組。

查看sshd_config手冊頁,並查找Match指令。這使您可以指定僅適用於 ssh 連接子集的配置塊。你可以這樣做:

Match Group sudoers
PasswordAuthentication no
ChallengeResponseAuthentication no

理論上,您可以使用 PAM 配置完成類似的操作,該配置只會使sudoers組中人員的身份驗證嘗試失敗。這可能會涉及pam_succeed_if模組…您可以在authsshd 的配置中添加類似的內容:

auth        requisite     pam_succeed_if.so user notingroup sudoers quiet

這意味著只有不在sudoers組中的人才能通過 PAM 進行身份驗證。請注意,這是未經測試的。您也可以使用 pam_listfile模組來做類似的事情。

引用自:https://serverfault.com/questions/238711