xinetd 服务:可以更改用户吗?(cvs pserver)

xinetd 服务:可以更改用户吗?(cvs pserver)

旧版源代码控制:xinetd 下的 CVS

我们有一个团队使用旧版源代码控制:cvs。我们在 xinetd 下运行 cvs pserver(配置文件如下)。

审计标志

安全审计提出了一个警告:“确保 cvs 服务器不在 root 权限下运行”。

问题:

我可以通过将“user=root”替换为“user=cvs”来安全地锁定“cvs pserver”吗?有任何有害的副作用或“陷阱”吗?

注意:用户“cvs”拥有“cvs root”目录“/var/cvs/cvs”中的所有文件

我之所以问这个问题,是因为我已经搜索了所有十年前的文档,所有示例都有“user=root”,但没有一个建议更改“user=”参数来提高安全性。

更新: 我试过了。成功了。没有问题。

谢谢

示例:cvspserver 配置文件

# Begin /etc/xinetd.d/cvspserver

     service cvspserver
     {
          port        = 2401
          socket_type = stream
          protocol    = tcp
          wait        = no
          user        = root
          passenv     = PATH
          server      = /usr/bin/cvs
          server_args = -f --allow-root=/var/cvs/cvs   pserver
     }

# End /etc/xinetd.d/cvspserver

答案1

你绝对应该听从他们的建议。这是非常好的建议。

通常,执行此操作时,您需要确保守护进程具有足够的权限来执行其操作。在这种特定情况下,这很可能只是意味着它已经拥有的所有权。我的建议是备份您的存储库,然后继续进行更改。

其工作原理是 xinetd(通常以 root 身份运行)将放弃特权,然后执行 /usr/bin/cvs,其中 stdin 和 stdout 指向 xinetd 管理的套接字。实际上没有什么特别的。CVS 非常简单,除了能够操作其根目录下的文件之外,不需要任何权限。

相关内容