如何在 Debian 上使用 useradd 将主目录设为根目录
Posted
技术标签:
【中文标题】如何在 Debian 上使用 useradd 将主目录设为根目录【英文标题】:How to make home directory the root with useradd on Debian 【发布时间】:2015-08-24 00:31:20 【问题描述】:我想在 Debian 服务器上添加一个新用户,但出于安全考虑,我需要设置它会将主目录视为根目录。
例如:
新用户:usr
主目录:/home/usr
根目录:/home/usr
应该无法回到/home
有没有办法使用useradd
做到这一点?甚至手动?
【问题讨论】:
wiki.debian.org/chroot @marekful 我试过了,但我真的不明白该怎么做,它将整个 debian 系统下载到我的 /home 目录,但没有改变其他任何东西。如果您知道它是如何工作的,请给我指点一下吗? @marekful 我也尝试了以下chroot --userspec=1001:0 /home/upload
并得到以下错误:chroot: failed to run command
/bin/bash': No such file or directory`
【参考方案1】:
不,你不能直接用 useradd 做到这一点。
您必须使用 chmod。例如,您可以撤销 /home 中的“阅读其他人”权限以阻止目录列表。
请勿撤销执行权限,否则您将无法在用户主页中进行 cd。
但是如果你想限制用户远程连接到你的服务器,你可以设置一个 'chroot jail' 用于例如 SSH 访问
【讨论】:
我试过了,但我能做到的就是不列出文件和目录。如果他愿意,用户仍然可以将cd
说成etc
。 (我把/home
和/
都改成了711)
是的,但是您不能阻止“cd”权限,只能阻止列表权限,因为它可能会阻止对所有子目录的访问,并且您最终可能会遇到无法使用的系统,特别是如果您尝试阻止 /等等。小心点……
谢谢,我会记住的
您需要限制远程连接到您服务器的用户吗?
我的任务是在虚拟服务器上创建一个用户,该用户可以通过 ftp 进入特定目录(即:/home/upload
/home以上是关于如何在 Debian 上使用 useradd 将主目录设为根目录的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 DirectAdmin 在 Debian 10 上启用 Brotli?