Linux
SFTP 使用者無法編輯或創建文件
伺服器:Ubuntu 12.04 LTS
我正在使用 openSSH 並創建了一個名為
bob
who 屬於 group的 SFTP 使用者sftponly
。我已將 bob chroot 到他的主目錄,即/usr/share/nginx/www/bob/
.bob 能夠 SFTP 到伺服器並查看主目錄,但是他無法編輯其目錄中的文件。我已經
chown -R bob /usr/share/nginx/www/bob/*
讓 bob 成為他文件的所有者,但他仍然無法編輯它們。為什麼會這樣?
要正確 chroot 一個 sftponly 組成員,您需要在以下位置設置此選項
/etc/ssh/sshd_config
:Subsystem sftp internal-sftp Match Group sftponly ChrootDirectory /srv/chroot/%u ForceCommand internal-sftp
要求 chroot 使用者的主目錄以及一直到系統根目錄的目錄必須屬於
root:root
給定使用者的以下值:
$ id user001 uid=1003(user001) gid=1003(user001) groups=1006(sftponly) $ grep user001 /etc/passwd user001:x:1003:1003::/input:/sbin/nologin
你需要一個像這樣的目錄結構:
$ tree /srv/chroot /srv/chroot ├── user001 │ └── input
因為 user001 的 HOME 目錄是在 chroot 呼叫之後評估的,所以他/她會進入
input
寫權限有效的目錄:$ ls -lrtd /srv/chroot/user001/input drwxrwx--- 2 user001 sftponly 4.0K Apr 07 17:55 /srv/chroot/user001/input