OpenSSH,chroot 用户:root 需要拥有用户目录,有什么后果吗?

OpenSSH,chroot 用户:root 需要拥有用户目录,有什么后果吗?

我想在我的计算机上为我的朋友创建一个帐户,但我不希望我的朋友能够查看我的所有文件。我看到 OpenSSH 有一个选项。

SSHD 配置文件内部:

/etc/ssh/sshd_config

与行:

ChrootDirectory /home/%u

但是,用户主目录需要属于root.那是一件坏事?如果管理员拥有该目录,是否会产生任何后果或影响?

我为 2 个发行版和 FreeBSD 标记了这个问题,因为我都使用它们。我想知道root在发行版和/或操作系统之间拥有用户主目录的要求是否会有所不同。

答案1

你有点误解chroot了;它不仅仅是隐藏东西,该目录实际上成为/会话的目录。您需要在其下面提供一个相当完整的系统映像(/etc/bin/lib等),否则什么都不会起作用(特别是,用户将无法运行 shell)。 root需要拥有新的/文件系统根目录是这样的结果:任何其他人拥有文件系统根目录将是一个明显的安全问题。

答案2

要回答您的具体问题,root必须拥有 SSHD 提供的用户主目录chroot才能正常工作。如果主目录不属于root,则用户在通过 进行连接时将能够退出该目录sftp

如果root用户仅与sftp.但是,如果用户还以另一种方式连接(例如ssh)并被授予 shell,那么您应该使用另一种解决方案, 像受限 shell rssh

相关内容