Linux
為什麼可以使用這個 sftp 配置離開 CHROOT?
我正在嘗試創建使用者 lenny,該使用者在文件夾中具有讀取和寫入權限,
/home/lenny/
並且沒有外殼,但只能通過 SFTP 訪問。我正在執行以下操作:useradd lenny mkdir /home/lenny usermod -d /home/lenny lenny passwd lenny chown lenny:lenny /home/lenny chmod 755 /home/lenny usermod -s /bin/false myuser
然後我修改
/etc/ssh/sshd_config
:Subsystem sftp internal-sftp` Match User lenny ChrootDirectory /home/lenny ForceCommand internal-sftp
現在,當我這樣做時,
sftp lenny@server
我可以通過cd /
and輕鬆離開 CHROOTls -la
,我看到了一切!這是為什麼???我不明白,配置應該沒問題,還是我錯了?
更改後是否重新啟動了 sshd 服務
/etc/ssh/sshd_config
?
sudo /etc/init.d/ssh restart
確保 sftp 使用者(在本例中
/home/lenny
)的 chroot 目錄由 root 擁有,而不是 sftp 使用者。chmod 755
是正確的。此外,我將添加以下兩行以增加安全性:
Match User lenny ChrootDirectory /home/lenny ForceCommand internal-sftp X11Forwarding no AllowTcpForwarding no
重新啟動您的 sshd 服務,您應該擁有所需的 chroot。