Security

如何在 SFTP 客戶端中將使用者更改為 root?

  • January 7, 2021

始終建議在第一步禁用rootSSH 協議的遠端登錄。我有一個能夠通過 SSH 連接的低權限使用者,一旦連接,我只是su為了獲得更多權限。

現在,當使用 SFTP 客戶端時,我使用的是低權限使用者,因此幾乎什麼都做不了。

我的問題是:是否可以在使用 3rd 方客戶端(例如 Transmit、Cyber​​duck、FileZilla)登錄後更改使用者?(Mac客戶端會很棒)

不,不可能在 sftp 中提升您的權限。

理想情況下,您應該修復文件系統權限,以便不需要 root 權限來下載/上傳您正在處理的任何內容。

如果更改權限不是一種選擇,那麼在禁用 root 登錄和使用密碼登錄之間存在折衷方案。您可以設置PermitRootLogin without-password然後簡單地使用基於密鑰的身份驗證。

您不能使用 SFTP 更改使用者並不完全正確。

例如,即使您連接到公共 OpenSSH 伺服器,您也可以使用 SFTP 伺服器啟動命令指示它以提升的權限執行 SFTP 子系統/伺服器,例如:

sudo /path/to/sftp-server

例如,對於 OpenSSHsftp客戶端,您可以使用以下內容:

sftp -s "sudo /path/to/sftp-server" user@example.com

或者使用(我的)WinSCP SFTP 客戶端,您還可以覆蓋 SFTP 伺服器啟動命令(在GUI和腳本中)。

但是允許這個工作有很多限制。特別是sudo可能不需要密碼和 TTY。有關詳細資訊,請參閱 WinSCP 常見問題我如何在登錄後更改使用者(例如 su root)?

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