没有任何文件系统权限的 Linux 用户

没有任何文件系统权限的 Linux 用户

我需要创建一个 Linux 用户,仅用于 SSH 代理。除此之外,用户还不能探索文件系统,甚至不能真正访问 shell。

显然,我可以chmod删除所有内容的所有读/写/执行权限,但这显然是一个非常糟糕且可能耗时的选择。

使用此用户的唯一连接应该是通过ssh -D [email protected]

我正在运行 Debian 7。

答案1

如果用户要登录,他们必须能够读取文件系统的某些部分。如果没有访问某些文件的权限,您根本无法启动交互式 shell。

如果他们需要做的只是进行足够远的身份验证来隧道化其他连接(包括像在这种情况下,利用 ssh SOCKS 代理功能),那么最好拒绝用户使用交互式 shell(例如usermod -s /sbin/nologin account),然后让他们进行无需交互的身份验证()。ssh -N -D 23456 [email protected]

别忘了ssh -D 需要绑定本地 SOCKS 代理的端口号,因此问题中的示例在语法上无效。

答案2

你能改用 chrooted ssh 用户或组吗?我自己从来没有实现过,但似乎这可能有帮助:https://www.howtoforge.com/chrooted-ssh-sftp-tutorial-debian-lenny

本教程是为 Lenny 编写的,但希望不会发生太大改变。

相关内容