以其他用户身份运行Apache

Mridang琼脂花

当我运行ps -efH命令以列出所有进程时,我可以看到Apache以的方式运行,root并且似乎有以的方式运行的子流程www-data这是摘录:

root     30117     1  0 09:10 ?        00:00:00   /usr/sbin/apache2 -k start
www-data 30119 30117  0 09:10 ?        00:00:00     /usr/sbin/apache2 -k start
www-data 30120 30117  0 09:10 ?        00:00:00     /usr/sbin/apache2 -k start
www-data 30121 30117  0 09:10 ?        00:00:00     /usr/sbin/apache2 -k start

我可以让Apache和所有子流程以不同的用户身份运行apache2d:apache2d吗?如果可以,怎么办?我在某处读到可以找到此设置,/etc/apache2/httpd.conf但该文件似乎为空?是否可以通过更改/etc/init.d/apache2脚本的所有者和组,然后在其上设置setuid标志来完成?

巴哈马

Apache必须首先以root用户身份运行才能绑定到端口80。如果最初不以root用户身份运行,则不能绑定到端口80。如果要绑定到1024以上的某个端口,则可以。否则不用担心root。那是父Apache进程,不处理任何请求。它将产生子进程并删除用于处理请求的特权。

要更改Apache用户,请在您的Apache配置中设置UserGroup参数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章