NGINX

多应用支持

此代理支持多个应用程序配置。看到将Tcell应用程序ID分配给Nginx文件有关整合多个应用程序id的说明。

某些TCell功能不可用

操作系统命令,帐户接管,本地文件,软件包和Vulns。NGINX上没有可用的特性。

支持技术

tCell已经为这些NGINX发行版预先构建了版本。如果你的NGINX发行版不匹配这个列表中的一个,请参见自定义代理构建来获取具体的信息。

版本 OS. 笔记
1.10.2 CentOS 6 Epel版本的Nginx为CentOS 6,由Yum安装
1.10.3 Debian拉伸 建立1- nginx-extras的Debian Stretch版本。用不同的构建标志构建不同的二进制文件
建立2.-用于Debian Stretch的标准NGINX,由apt. Build标志从apt repo版本安装
1.10.2 Ubuntu款待的 建立1- nginx-extras的版本可用于Ubuntu Xenial。用不同的构建标志构建不同的二进制文件
建立2.- Ubuntu Xenial的标准nginx,由APT安装。从APT Repo版本构建标志。原始版本是用-fpie构建的,但这不会与静态库链接有效,因此它更改为-cpic
建立3.- nginx.org apt repo兼容版本。从nginx.org APT repo构建标志
1.11.2 CentOS 7 OpenResty 1.11.2。从OpenTesty的Yum Repo版本构建标志
1.12.2 CentOS 7 来自Centos 7 EPEL repo的标准NGINX构建,由yum安装。从EPEL构建标志
1.12.2 高山3.7 标准NGINX版本与Alpine 3.7稳定版捆绑,由apk安装
1.13.6 CentOS 7 尊敬1.13.6。从OpenTesty的Yum Repo版本构建标志
1.14.0 Ubuntu仿生 标准nginx for Ubuntu仿生,由APT安装。从APT Repo版本构建标志
1.14.1 CentOS 7 nginx由Redhat配置为Rhel7。从Redhat版本构建标志
1.14.2 Ubuntu款待的 稳定的NGINX版本来自nginx.org。从nginx.org APT repo构建标志
1.14.2 高山3.8 标准nginx用于高山3.8,由APK安装。从APK Repo版本构建标志
1.16.1 Ubuntu仿生 Launchpad 1.16.1从NGINX发布
1.16.1 Debian克星 稳定的nginx.org官方docker映像(docker pull nginx:1.16.1)
1.17.4 高山3.10 MainLine Nginx.org官方Docker Image(Docker Light Nginx:1.17.4-Alpine)
1.17.5 Debian克星 Mainline nginx.org官方docker镜像(docker pull nginx:1.17.5)

CentOS 6.0生命终结公告

截至2021年12月31日,Rapid7将在CentOS 6.0上终生终身(EOL)TCell代理。代理商文件和支持要求将同时反映这一变化。看看CentOS临终公告看看你是否受到影响,你可以采取什么行动。

先决条件

在开始之前,请确认:

  • 设置TCELL帐户
  • 创建了Tcell应用程序(admin>应用程序)
  • 确保nginx安装在目录中:$ nginx_install_dir。
  • 允许出站HTTPS连接到TCell云:tCell代理连接到哪些ip ?
  • 下载了代理和配置文件:
    1. 单击Top Nav Bar中的“Tcell Admin”。
    2. 点击“下载代理”。
    3. 点击“Web服务器代理”。
    4. 选择“nginx”代理。
    5. 选择“Create New API Key”(默认)。
    6. 下载焦油。xz文件。
    7. 单击“下载配置文件”以下载代理的配置文件(将预先填充应用程序和关键信息)。

安装

模块和配置路径

本节假设nginx.conf路径为/etc/nginx/nginx.conf.conf.,模块目录位于in-modules-path.运行以下内容以查找您的特定路径:nginx - v

在输出中,搜索-modules-pathconf

  1. 确保你有/etc/nginx/nginx.conf.conf.和模块目录。如有必要,创建它们。

  2. 解压下载的nginx代理tar。xz文件。

  3. 放在ngx_http_tcell_agent_module.so文件对应于你的OS和NGINX版本-modules-path.(包包含为Ubuntu X-Y,CentOS X-Y,Amazon Linux构建的版本。)

  4. 添加一行load_module模块/ ngx_http_tcell_agent_module.so;到nginx.conf *之前事件块。例子:

               
    1
    用户nginx
    2
    worker_processes汽车;
    3.
    4
    error_log日志/ error.log;
    5
    error_log日志/ error.log通知;
    6
    ERROR_LOG日志/错误.LOG INFO;
    7
    pid日志/ nginx.pid;
    8
    9
    load_module /道路/ ngx_http_tcell_agent_module.so;
    10.
    11.
    事件{
    12.
    worker_connections 1024;
    13.
    }
  5. 放在tcell_agent.config.文件在与nginx.conf相同的目录下。

  6. 添加一行tcell_app_id APP_ID;的事件块/etc/nginx/nginx.conf.conf.文件。例如:http {tcell_app_id krtest-CeOCq;......}

  7. 重新启动nginx.

如果您遇到类似于Nginx: [emerg] module "modules/ngx_http_tcell_agent_module. "所以" is not binary compatible in /usr/local/nginx/conf/nginx.conf,这可能意味着:

  • 您选择了不符合您分发的代理构建
  • 您的nginx构建是一个本地生成的自定义版本。请参阅下面的自定义代理版本。

nginx支持日志滚动,允许代理继续向完整日志文件添加新行。看到设定原木横摇

例如:nginx - v

         
1
根@ 8a5fa88427d8:/ etc / nginx#nginx -v
2
3.
nginx版本:nginx / 1.14.0(Ubuntu)
4
5
2018年9月11日
6
7
启用TLS SNI支持
8
9
——with-cc-opt='-g -O2 -fdebug-prefix-map=/build/nginx-GkiujU/nginx-1.14.0=。-fstack-protector-strong -Wformat -Werror = format-security - fpic -Wdate-time -D_FORTIFY_SOURCE = 2”——with-ld-opt =“- wl -Bsymbolic-functions - wl, - z, relro - wl, - z,现在- fpic '——prefix = / usr / share / nginx——conf-path = / etc / nginx / nginx.conf——http-log-path = / var / log / nginx access.log——error-log-path = / var / log / nginx / error.log——lock-path = / var /锁定/ nginx。锁——pid-path = /运行/ nginx。pid - modules-path = / usr / lib / nginx /模块——http-client-body-temp-path = / var / lib / nginx /身体——http-fastcgi-temp-path = / var / lib / nginx fastcgi——http-proxy-temp-path = / var / lib / nginx /代理——http-scgi-temp-path = / var / lib / nginx scgi——http-uwsgi-temp-path = / var / lib / nginx uwsgi——的调试with-pcre-jit——with-http_ssl_module——with-http_stub_status_module with-http_realip_module——with-http_auth_request_module with-http_v2_module——with-http_dav_module with-http_slice_module——线程with-http_addition_module——with-http_geoip_module =动态with-http_gunzip_module——with-http_gzip_static_module with-http_image_filter_module =动态——with-http_sub_module——with-http_xslt_module=dynamic——with-stream=dynamic——with-stream_ssl_module——with-mail=dynamic

验证

要验证数据正在被发送到tCell,请转到Tcell控制台并确保为您刚刚创建的应用程序列出的web服务器代理的数量大于0。

故障排除

日志文件可以在tcell /日志目录。如果你没有看到一个tcell /日志目录,Tcell代理可能尚未启动。如果是这样的话:

  1. 通过运行以下命令,验证是否正在将TCELL代理添加到服务器启动中:

               
    1
    Ps aux | grep——color tcell
  2. 检查你的简历中有没有错误Catalina.out.out.日志。或者,跑步bin / catalina.sh运行或者bin / catalina.bat运行在Windows上将在前台启动Tomcat,并在启动时打印任何错误。

您可以自定义日志级别tcell_agent.config.通过添加块(如以下内容)的文件:

         
json
1
“logging_options”
2
“启用”真的,
3.
“水平”“信息”
4
}

看到tcell / tcell_agent.config.template例如,

有效日志级别为:

  • 痕迹
  • 调试
  • 信息(默认)
  • 警告
  • 错误

前面的列表指示级别之间的优先级,从上到下。启用日志级别时,还会启用较低的日志级别。例如,如果启用调试,则还启用了“信息”,“警告和错误”。

当日志文件已完整时,日志记录在新日志文件中继续。看到日志滚动为更多的信息。

自定义代理构建

NGINX要求构建模块时使用与它们运行的服务器相同的特性标志,以确保正确的操作。

如果你使用带有自己标志集的定制NGINX构建,Rapid7可以构建一个代理来为你在这个环境中工作。

  1. 让Rapt7知道这是您将拥有的要求。
    • 在概念验证期间,让你的销售团队联系人知道。
    • 如果你已经购买了tCell,现在正在为你的受保护应用程序集添加一个NGINX环境,或者正在更改为自定义NGINX设置,请通过Rapid7客户门户
  2. 在上述支持机制中提供以下信息:
    • 你的NGINX服务器输出-V标志(例如,/ opt / nginx / sbin / nginx - v),最好是作为压缩文本文件附件。
    • 关于NGINX服务器的操作系统和分布的信息。在大多数Linux系统上,该命令提供详细的操作系统信息:CAT / etc / *释放如果可能,将此命令的输出附加到支持用例。
    • 上的信息NGINX构建出处.具体来说,如果NGINX是从源代码构建的,请提供构建步骤和使用的工具。如果使用特定的工具(如apt-get)安装,请提供执行的详细apt-get步骤。
  3. Rapid7将以确认和估算完成时间,在几天内,符合您的nginx构建的自定义模块回复。