Debian
如何將主文件夾視為根文件夾?
我創建的使用者每個人都有自己的主目錄,正常。
目前我創建我的使用者如下:
adduser -d / home / ftp / myUser myUser
我的使用者需要連接到 SFTP(打開我的 vps 上安裝的 ssh),並且我需要當我的使用者在 SFTP 中連接時,我需要將主目錄視為他的根文件夾
為什麼 ?另一個應用程序正在連接到此 SFTP,如果它不在其根目錄中,則應用程序無法發送或讀取文件。
我怎樣才能做到這一點?
添加或更改
/etc/ssh/sshd_config
以包含以下行Subsystem sftp internal-sftp Match Group sftpusers ChrootDirectory %h ForceCommand internal-sftp
然後將所有受限使用者集添加到
sftpusers
組中。最後,將目標目錄的所有權更改為root,並刪除組/其他寫入權限,然後重新啟動
ssh
伺服器。這是 chroot 生效所必需的。缺點是使用者將無法將任何文件寫入其主目錄。(您必須創建子目錄供他們寫入。)從使用者的角度來看,這不是一個理想的情況,您可能會發現最好在文件系統的其他位置創建一個目錄供 SFTP 使用(例如
/home/sftp/$USER
),該目錄可以使用 ) 獨立於其真實主目錄鎖定ChrootDirectory /home/sftp/%u
。當您遇到問題時(您可能會在幾次嘗試中解決問題),請記住閱讀
/var/log/auth.log
以了解問題所在。