为什么当我将用户指令从守护进程更改为 apache 后,我的 apache 服务器仍然执行我的 cgi 脚本?

为什么当我将用户指令从守护进程更改为 apache 后,我的 apache 服务器仍然执行我的 cgi 脚本?

为了安全起见,我在系统中创建了一个没有 shell 和主目录的 apache 用户。然后我在 中将 User 指令从 daemon 更改为 apache httpd.conf。它在 apache 中创建子进程以 apache 用户身份运行。

为什么我的 apache 服务器仍然使用没有 shell 的 apache 用户执行我的 cgi shell 脚本?

答案1

您的 apache 用户没有登录 shell 或主目录。这很好。

但是,“没有 shel” 并不意味着用户不能运行 shell 脚本。那是完全不同的事情。

您已将 httpd 守护程序配置为以用户“apache”的身份运行,因此它启动的所有进程也将以用户“apache”的身份运行,包括 CGI 脚本。这是预期的结果。

相关内容