ong*_*gie 16 permissions sftp chroot
我已经搜索了许多网站和论坛,了解如何使用 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
Run Code Online (Sandbox Code Playgroud)
创建文件夹
mkdir /var/www/sites
Run Code Online (Sandbox Code Playgroud)
创建用户和组
useradd uploader
passwd uploader
usermod -d /var/www/sites uploader
groupadd webmaster uploader
groupadd www-data uploader
Run Code Online (Sandbox Code Playgroud)
权限和所有权
chown root:root /var/www
chmod 755 /var/www/sites
Run Code Online (Sandbox Code Playgroud)
现在,通过这些设置,用户上传者可以通过 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
Run Code Online (Sandbox Code Playgroud)
我在试图解决这个问题时很矛盾,如果有人能指出我正确的方向,我将不胜感激。
谢谢你。
ong*_*gie 18
找到了解决办法。用户被判入狱/var/www/sites。然后我创建了另一个文件夹/var/www/sites/site1。
我用:
chown root:webmaster /var/www/sites/site1
chmod 775 /var/www/sites/site1
Run Code Online (Sandbox Code Playgroud)
这使主目录具有正确的登录权限,然后能够写入下一个文件夹。
如果用户需要写访问/var/www/sites,则必须在监狱的用户/var/www拥有root:root所有权和755的权限,然后你需要给/var/www/sites根的所有权:(您的组)和775权限。
| 归档时间: |
|
| 查看次数: |
62774 次 |
| 最近记录: |