我在许多网站和论坛上搜寻了如何使用CHROOT设置被监禁到某个目录的SFTP用户。这是我遵循的步骤,但似乎无法获得写许可权才能工作。
设定
sshd_config
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp
Match group webmaster
X11Forwarding no
ChrootDirectory %h
AllowTcpForwarding no
ForceCommand internal-sftp
创建文件夹
mkdir /var/www/sites
创建用户和组
useradd uploader
passwd uploader
usermod -d /var/www/sites uploader
groupadd webmaster uploader
groupadd www-data uploader
权限和所有权
chown root:root /var/www
chmod 755 /var/www/sites
现在,有了这些设置,用户上载程序便可以通过SFTP进入主目录,但无法写入该目录。
发生2种典型错误,我无法登录或没有写权限。
登录错误
Error: Network error: Software caused connection abort
Error: Could not connect to server
Changing permissions of /var/www/sites to 775 or 777 causes login error.
chown /var/www/sites to uploader:root causes login error.
chwon root:webmaster or root:www-data I have no write permissions
我很想弄清楚这一点,如果有人能指出我正确的方向,我将不胜感激。
谢谢。
Match
es支持以逗号分隔的列表中的多个目标,因此我们可以通过标题为Match User dev1,dev2