Linux
SFTP 文件限制
是否可以在 Linux 上使用 SFTP 並將使用者帳戶限制為一個目錄,這樣就無法獲得其他目錄列表?是的,我必須使用 SFTP,FTP 僅供喜歡被黑客入侵的人使用。
例如,我希望有人修改 /var/www/code/ 中的文件,但我不希望他們能夠修改其他任何內容。我什至不希望他們看到 /tmp/ 的內容。
(我會接受“快速而骯髒”的解決方案,只要它是安全的。)
從 sshd_config 手冊頁:
Chroot目錄 指定身份驗證後 chroot(2) 的路徑。這 路徑及其所有組件必須是根擁有的目錄 任何其他使用者或組不可寫。在 chroot 之後, sshd(8) 將工作目錄更改為使用者的主目錄- 瑞。 該路徑可能包含以下標記,這些標記在 連接使用者通過身份驗證後的執行時間:%% 是 替換為文字 '%',%h 替換為主目錄 被認證的使用者,%u 被使用者替換- 該使用者的名稱。 ChrootDirectory 必須包含必要的文件和目錄 ries 以支持使用者的會話。對於互動式會話 這至少需要一個 shell,通常是 sh(1),以及基本的 /dev null(4)、zero(4)、stdin(4)、stdout(4)、stderr(4) 等節點, arandom(4) 和 tty(4) 設備。對於文件傳輸會話使用 ``sftp'',不需要額外的環境配置 essary 如果使用程序內 sftp 伺服器,但會話 使用日誌記錄確實需要 /dev/log 在 chroot 目錄中 (詳見 sftp-server(8))。 預設不是 chroot(2)。