在 CentOS 上设置 SFTP 文件夹权限,需要考虑以下几个方面:
sftpuser 的用户和名为 sftpusers 的用户组。# 创建用户 useradd sftpuser # 创建用户组 groupadd sftpusers sudo yum install openssh-server 编辑 /etc/ssh/sshd_config 文件,确保以下设置已启用(删除或注释掉前面的 #):
Subsystem sftp /usr/libexec/openssh/sftp-server sftpuser 访问 /home/sftpuser 文件夹,可以执行以下命令:# 更改文件夹所有者 chown sftpuser:sftpusers /home/sftpuser # 设置文件夹权限 chmod 750 /home/sftpuser 这将允许 sftpuser 读取、写入和执行 /home/sftpuser 文件夹中的文件,同时仅限用户组成员可以访问该文件夹。
sftpuser_home_t 的 SELinux 上下文,以便 sftpuser 能够访问其主目录:sudo semanage fcontext -a -t sftpuser_home_t "/home/sftpuser(/.*)?" sudo restorecon -Rv /home/sftpuser 完成以上步骤后,重新启动 SSH 服务以应用更改:
sudo systemctl restart sshd 现在,你已经成功设置了 CentOS 上的 SFTP 文件夹权限。用户 sftpuser 应该能够使用 SFTP 访问 /home/sftpuser 文件夹,而其他用户将无法访问。