Ssh

切斷我自己的 Google Cloud Engine SSH 鼻子

  • November 9, 2016

有點傻。在我的 Google Compute Engine (GCE) 實例上,我進入並更改了 sshd_config 以偵聽另一個埠(我經常這樣做)……但我在註銷之前沒有進行測試。還有一個錯字。所以現在我無法通過 ssh 登錄,因為配置被搞砸了,sshd 甚至無法啟動。(我可以使用不同的配置文件啟動 sshd,作為非 root 使用者,但它給了我一個“無法載入主機密鑰”,正如預期的那樣,可能沒有權限。)

使用你說的 GCE 串列控制台?啊…但是我可以登錄的使用者都不是 sudoers。(我還有兩個sudo’er,但是密碼不起作用,不知道為什麼。我寫錯了?)

所以我有密碼的使用者(非root)訪問,並且有root(sudo’er)使用者的密鑰,我只是沒有辦法通過串列控制台登錄?(有沒有辦法讓控制台辨識我的密鑰而不是密碼?)

這對安全性有好處,我不能用我有限的知識在 5 分鐘內解決這個問題,但是我可以利用我必須用 root 重新獲得的東西嗎?我可以訪問 Google Compute Engine 控制台和使用者等中的項目,我只是在這個實例上從命令行切斷了自己。

如果它是一台物理機器,我會堅持使用可啟動的 USB 發行版,只需編輯配置文件並重新啟動。

有什麼建議麼?

謝謝。

要編輯或檢查您無權訪問的 VM 根磁碟中的配置文件,請按照本文件的“檢查實例而不關閉它”部分中的步驟操作。

步驟總結:

1)創建一個可以通過 SSH 訪問的臨時 VM。

2)創建失敗的根磁碟的副本(這必須來自快照)。您實際上可以刪除原始虛擬機並保留磁碟(-keep-disks=all),但我寧願使用副本。

3)磁碟副本附加到臨時 VM 並掛載您要檢查的磁碟。

  1. 修改配置文件。分離修改後的磁碟並使用此磁碟旋轉一個新 VM。

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