Pas*_*day 5 ssh sftp permissions
我需要为用户提供对 Ubuntu 14.04 Server 的访问权限,仅限于某些文件夹。为了享受 ssh 安全性而不是打开新的服务和端口(即 ftp),我想坚持使用 sftp。然而,仅仅创建一个用户并启用 ssh 访问就太慷慨了——然后用户可以通过 ssh 登录并查看每个人都可以查看的任何内容。
我需要用户在登录后找到自己在特定目录中,并根据他们的权限读/写文件,以及在允许的情况下创建文件夹。无法访问用户“根”文件夹上方的任何文件或目录。
实现这一目标的建议方法是什么?是否有一些非常受限制的外壳类型?我试过
$ usermod -s /bin/false <username>
Run Code Online (Sandbox Code Playgroud)
但这不会让用户 cd 进入其基本文件夹的子文件夹。
如果您想限制某个用户只能使用 SFTP,您可以在 SSH 守护程序配置文件中轻松完成/etc/ssh/sshd_config。Match在文件末尾放置一个块:
Match User bob\nForceCommand internal-sftp\nChrootDirectory /path/to/root\nAllowTCPForwarding no\nPermitTunnel no\nX11Forwarding no\nRun Code Online (Sandbox Code Playgroud)\n\n如果监狱目录是在 中声明的用户主目录/etc/passwd,则可以使用ChrootDirectory %h而不是指定显式路径。此语法允许将一组用户帐户指定为仅限 SFTP \xe2\x80\x94\xc2\xa0用户数据库中声明的组的所有用户都将sftponly仅限于 SFTP:
Match Group sftponly\nForceCommand internal-sftp\nChrootDirectory %h\nAllowTCPForwarding no\nPermitTunnel no\nX11Forwarding no\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
9625 次 |
| 最近记录: |