Debian
無法創建 SFTP 使用者 Debian 7
我有一個 linode,我通過 ssh throw 終端訪問。我需要創建一個 sftp 使用者,他的預設目錄(也是他唯一可以訪問的)是
/var/www/xxxxxx.com/public_html/directory
現在,我做到了,但是當我嘗試連接時,管道損壞或連接被對等方拒絕
我所做的是這樣的:
$ adduser --home /var/www/xxxxxx.com/public_html/directory/ username $ chown username:username /var/www/xxxxxx.com/public_html/directory/ $ chmod 755 /var/www/xxxxxx.com/public_html/directory/ $ nano /etc/ssh/sshd_config
在
/etc/ssh/sshd_config
我添加了以下幾行Match User username ChrootDirectory /var/www/xxxxxx.com/public_html/directory/ AllowTCPForwarding no X11Forwarding no ForceCommand internal-sftp
我究竟做錯了什麼?
編輯:這是實際的錯誤
EDIT2:這是filezilla中的錯誤
編輯 3:auth.log
Oct 15 17:47:11 (none) sshd[361]: fatal: bad ownership or modes for chroot directory "/var/www/xxxxxxxxxxxx.com/public_html/extras_html"
我解決了。問題是因為我這樣做了:
$ chown user:user /var/www/xxxxxx.com/public_html/directory/
我必須做的是:
$chown root:root /var/www/xxxxxx.com/public_html/directory/
然後,在“目錄”中,我為具有 777 權限的使用者創建了一個目錄(不是更好的方法,但它有效)。
“rejected by peer”錯誤是因為 /directory 必須有 755 權限。
這個問題被回答了很多次,但我現在找不到了。答案是 RTFM。
長話短說:從
man sshd_config
你可以得到這條線:Chroot目錄
指定 chroot(2) 到身份驗證後的目錄的路徑名。 路徑名的所有組件必須是任何其他使用者或組不可寫的根目錄。 在 chroot 之後,sshd(8) 將工作目錄更改為使用者的主目錄。
它為您的錯誤消息提供了解釋。修復路徑上的 ACL 將解決您的問題。