
在我的伺服器上,我有幾個 SSH 公鑰~/.ssh/authorized_keys
。
我想暫時封鎖/禁止/停用一把鑰匙。我現在想阻止用戶使用此密鑰登入。但我可能想稍後重新啟用它(即我不想完全刪除密鑰)。
正確/建議的方法是什麼?
我應該#
在行首加一個註解authorized_keys
嗎?
澄清一下,我不想阻止特定用戶。一個使用者帳戶由多人共享,每個人都使用自己的 SSH 金鑰進行連線。我想阻止一個特定的 SSH 金鑰。
答案1
您可以在鍵前新增強制命令來告訴使用者發生了什麼事。例如:
restrict,command="printf 'Your key has been disabled\n'" ssh-rsa AAAAB2...19Q== [email protected]
或對於 v7.2 之前的 Openssh:
command="printf 'Your key has been disabled\n'",no-pty,no-port-forwarding ssh-rsa AAAAB2...19Q== [email protected]
然後他們得到:
$ ssh servername
PTY allocation request failed on channel 0
Your key has been disabled
Connection to servername closed.
答案2
是的,您可以在相關行之前放置#
(或任何其他字符,只要初始條目例如ssh-rsa
不再有效)。
如果您這樣做,並且系統也允許純文字密碼登錄,系統將提示使用者輸入密碼才能登入。因此,您可能需要檢查是否沒有(已知)密碼與該帳戶關聯。