小编dav*_*gan的帖子

限制用户可以通过主管重新启动哪些进程?

我已经使用主管来管理运行 Django 站点的 Gunicorn 进程,尽管这个问题可能与主管管理的任何事情有关。以前我是唯一管理和使用我们服务器的人,主管只是以 root 身份运行,我会supervisorctl restart myapp在需要时使用 sudo 运行。

现在我们的服务器要支持多个用户在不同的站点工作,而且每个项目都需要能够重启自己的gunicorn进程,而不能重启其他用户的进程。

我关注了这篇博文:

http://drumcoder.co.uk/blog/2010/nov/24/running-supervisorctl-non-root/

并且能够允许非 root 用户使用 supervisorctl,但现在任何人都可以重新启动其他人的进程。从表面上看,supervisor 没有办法进行每个用户的访问控制。

任何人对如何允许用户在没有 root 的情况下仅重启他们自己的进程有任何想法吗?

编辑:我们认为有些事情大约包括通过编写与根SUID位集,其中包含什么,但所拥有的脚本supervisorctl restart myapp,并把它在谁拥有用户的目录myapp。互联网似乎在说,如果操作不当,这样的脚本是不安全的。我们还考虑编写一个自定义守护进程,它会监听来自特定用户的命令,并在用户有权限的情况下重新启动主管进程。如果一个更简单的解决方案可行,这个想法似乎过于复杂。

linux user-permissions supervisord

15
推荐指数
1
解决办法
5323
查看次数

在终端中长时间打开 ssh 连接是否危险?

除了当您不查看和访问您的服务器时有人亲自来到您打开的计算机上的明显危险之外,如果我长时间打开 ssh 连接(例如几天和几天),是否有任何危险?

security ssh

4
推荐指数
2
解决办法
1033
查看次数

标签 统计

linux ×1

security ×1

ssh ×1

supervisord ×1

user-permissions ×1