linux - 带有 ssh 的 SFTP - 限制仅某些用户访问主目录

标签 linux ssh sftp privileges

<分区>

我可以使用 SSH 通过 SFTP 访问我的服务器。目前,我正在通过 ssh 和 2 个用户访问服务器:www-data 和 public_user。

一切正常,但问题是当我试图限制 public_user 只能通过 SFTP 访问他的主目录时。

为此,我将 public_user 添加到组 sftponly 并更改了 sshd_config:

 Match group sftponly
 ChrootDirectory %h
 X11Forwarding no
 AllowTcpForwarding no
 ForceCommand internal-sftp -u 73

重新加载 ssh 后,我可以使用 public_user 访问我的主目录,但通过 ssh 访问用户 www-data 被阻止。

知道如何区分这两个用户,以便 public_user 只能访问他的主目录,并且 www-data 可以通过 ssh 正常连接并在任何 www-data 目录上工作。

谢谢。

最佳答案

也在这里回答: https://askubuntu.com/a/206376 .看起来您可能缺少的主要内容是您必须拥有 root 拥有的被监禁用户 (public_user) 的主目录。您的用户“www-data”是否在 sftpgroup 中;不应该的。或者执行 Match User public_user 而不是 Match Group

关于linux - 带有 ssh 的 SFTP - 限制仅某些用户访问主目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24646964/

相关文章:

java - 从 java web 应用程序访问 linux 本地文件系统

linux - Web 用户配置文件的目录结构

shell - ssh 到另一个具有不同用户名的服务器

perl - 更高 ping 网络上的 Net::SSH2

java - 下载文件时如何停止spring sftp入站 channel 适配器轮询

没有交互指令的 Linux 期望命令不起作用

linux - glibc 函数的 ELF 弱导入/回退 stub

windows - 通过命令在 Windows 上生成 SSH key 以指定电子邮件地址

javascript - 如何使用 nodeJS SFTP 客户端列出所有子目录?

node.js - Node 中用于下载和删除文件的 SFTP 模块