nginx openresty和每服务器(或每脚本)用户

ecr0jaav  于 2023-05-28  发布在  Nginx
关注(0)|答案(1)|浏览(139)

我的问题很简单openresty是否支持运行不同的服务器或不同用户帐户的脚本?
虽然nginx本身可能是安全的,并且不需要多个帐户,但使用编程语言它可以变得非常有用。php-fpm支持它开箱即用,而且可以通过不同的配置来实现。其他应用(例如,nodejs)在其自己的用户帐户下运行。openresty的好做法是什么?是否还使用不同的配置运行多个示例?

wi3ka0sx

wi3ka0sx1#

注意:Openresty是“一个类固醇上的nginx”。所以你从nginx本身获得的所有内容都将包含在openresty中。
给你的初步问题:

  • 没有,没有内置函数让nginx在多个用户上下文中运行。
  • 最好的做法是确保您提供实体。见下文。
  • 是的,你可以运行多个nginx示例。但是你不能(轻易地)将一个(外部可达的)端口绑定到多个示例。

因为nginx可以被认为是安全的 [来源请求] ;),不需要在不同的上下文中运行它。它已经在自己的上下文环境中运行(取决于您的系统,最有可能是nginxwww-datahttpd)。您的提供实体(可能是php-fpm,NodeJS,python,Go等)是采取安全措施的地方。如上所述,最重要的措施是与不同的用户一起运行这些。大多数(如果不是全部的话)fpm提供商默认会这样做。只有当你自己运行一个应用程序(它提供了一个http端点)时,你才需要注意这一点。我确信大多数使用中的软件文档都将提供有关在其自身的安全环境中运行软件的信息。
nginx(仅)是将数据传递给最终用户(并接收)的实体的反向代理。所以它有一个门函数,并且必须有一个可靠的配置(在php-fpm config for example中有多个捕获),但在单个用户上下文中运行是安全的。
Note²:Openresty功能强大,可以动态执行JavaScript和Lua脚本。所以如果这些都在使用中,这个游戏的规则就会发生重大变化。

相关问题