Ssh

sshd 怎麼知道哪個使用者屬於哪個 AuthorizedKeysFile?

  • July 13, 2021

如果我為 設置自定義路徑AuthorizedKeysFile,如何sshd確定此密鑰屬於哪個使用者?

授權密鑰文件

指定包含可用於使用者身份驗證的公鑰的文件。AuthorizedKeysFile 可能包含 %T 形式的令牌,這些令牌在連接設置期間被替換。定義了以下標記:%% 替換為文字 ‘%’,%h 替換為正在驗證的使用者的主目錄,%u 替換為該使用者的使用者名。展開後,AuthorizedKeysFile 被取為絕對路徑或相對於使用者主目錄的路徑。預設值為 ‘’.ssh/authorized_keys’’。

sshd不需要決定密鑰屬於哪個使用者;它知道哪個使用者正在嘗試連接(目標系統上的使用者),並且它知道在嘗試中提供了哪個密鑰。

展開後,通過指向的文件AuthorizedKeysFile來判斷目標使用者是否允許所提供的密鑰。同樣,它已經知道這是哪個使用者(並且當它相對於目標使用者的主目錄時,它需要首先替換%u或查找文件)。

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