Linux
在 /etc/shadow 中使用星號作為密碼但 /etc/passwd 中的正確登錄 shell 的使用者是否可以通過某種方式通過 SSH 登錄?
讓我們假設以下內容。我們有一個可以通過 SSH 訪問的伺服器。有一個使用者
/etc/passwd
擁有有效的登錄 shell(例如/bin/bash
,而不是像 那樣的無效登錄 shell/bin/false
)。此使用者
*
在 的第二個(密碼)欄位中有一個星號 ( )/etc/shadow
。如果他的文件夾中沒有 ssh 密鑰,該使用者是否可以通過某種方式通過 SSH 登錄~/.ssh/
?或者,換個說法:當
*
密碼欄位中有一個 時,許多線上指南建議禁用登錄 shell 的原因是/etc/shadow
什麼?
*
雜湊密碼位置中的A/etc/shadow
有效地禁用了所有基於密碼的登錄,因為任何使用者輸入都不會導致*
. 但是使用者仍然可以使用他/她的 ssh 密鑰登錄。
*
使用驚嘆號與使用驚嘆號的區別!
在於後者表示 PAM 中的帳戶已鎖定,這取決於您的 sshd 配置,也會禁用基於密鑰的登錄。設置無效 shell 的原因只是為了防止互動式登錄會話工作(無論是否設置了帳戶密碼)並且會阻止
sudo su - user
和類似的工作。