防止因檔案權限而導致 SSH 鎖定

防止因檔案權限而導致 SSH 鎖定

我按照慣例只允許使用 SSH 公鑰登入 Debian,然後不知何故我不小心更改了 ~/.ssh/ 資料夾的權限(我認為它被 root 擁有),之後 openSSH 拒絕我登入! (伺服器位於不同的國家/地區,沒有遠端/KVM 控制台)

我發現這個設定非常脆弱。有沒有辦法防止這種情況,也許只是在下次登入時給我一個警告?

如果沒有解決方案,那麼我將不得不設定一個強登入密碼作為備份,無論其他人怎麼說。

發現類似的鎖定問題,但 iptable/設定變更是根本原因: 設定 SSH 和 iptables 時防止被鎖定 我沒有更改配置,所以我沒想到會被鎖定。

答案1

如果要恢復主機,則需要備用存取方法。網際網路上的 ssh 需要正常運作:網路存取、防火牆允許規則、運作和設定的 sshd、安全的金鑰檔案。其中任何一處中斷都無法進入。

如果它是虛擬機,也許將其關閉,並將磁碟附加到其他工作實例來修復它。並不理想,但只需要您有權存取磁碟。

資料的脫離主機備份允許建立新的替換主機。僅僅因為 ssh 存取權限遺失而破壞和重建可能看起來很愚蠢,但它仍然是一個恢復選項。

為了從一開始就防止這個問題,sshd 配置的語法檢查(sshd -T -f對於 OpenSSH)並不能捕獲所有內容。端對端測試可以透過在不同的連接埠上啟動另一個 sshd 來完成,除了連接埠號碼之外,一切都相同。遠端連線到此以測試一切是否正常。不幸的是,即使如此小心也不會發現無意的事情,例如主目錄的權限更改意外地使 ssh 檔案變得不安全。或者 IP 的變更可能會ssh_configMatch關鍵字而改變效果。

密碼仍然是一種糟糕的身份驗證機制。

相關內容