NGINX
Multi-app支持
该代理支持多个应用程序配置。看到将tCell App id分配给NGINX文件有关整合多个应用程序id的说明。
有些tCell功能不可用
操作系统命令,帐户接管,本地文件,软件包和Vulns。NGINX上没有可用的特性。
支持技术
tCell已经为这些NGINX发行版预先构建了版本。如果你的NGINX发行版不匹配这个列表中的一个,请参见定制代理构建来获取具体的信息。
版本 | 操作系统 | 笔记 |
---|---|---|
1.10.2 | CentOS 6 | Centos 6的NGINX的EPEL版本,由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. Build标志从apt repo版本安装。最初的版本是用-fPIE构建的,但这不能对静态库进行链接,因此将其更改为-fPIC 构建3- nginx.org apt repo兼容版本。从nginx.org APT repo构建标志 |
1.11.2 | CentOS 7 | OpenResty 1.11.2。从OpenResty的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 | OpenResty 1.13.6。从OpenResty的yum repo版本构建标志 |
1.14.0 | Ubuntu仿生 | 用于Ubuntu Bionic的标准NGINX,由apt安装。从apt repo版本构建标志 |
1.14.1 | CentOS 7 | Redhat for RHEL7配置的NGINX从Redhat版本构建标志 |
1.14.2 | Ubuntu款待的 | 稳定的NGINX版本来自nginx.org。从nginx.org APT repo构建标志 |
1.14.2 | 高山3.8 | 标准NGINX阿尔卑斯山3.8,由apk安装。从APK回购版本构建标志 |
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图片(docker pull 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代理。Agent文档和支持要求将同时反映这一变化。看到CentOS临终公告看看你是否受到了影响,以及你能采取什么行动。
先决条件
在开始之前,请确认:
- 设置一个tCell帐户
- 创建一个tCell应用程序(Admin > Applications)
- 确保NGINX安装在:$NGINX_INSTALL_DIR目录下。
- 允许出站HTTPS连接到tCell云:tCell代理连接到哪些ip ?
- 下载座席和配置文件:
- 点击顶部导航栏中的“tCell Admin”。
- 点击“下载代理”。
- 点击“Web服务器代理”。
- 选择“NGINX”代理。
- 选择“Create New API Key”(默认)。
- 下载焦油。xz文件。
- 单击“下载配置文件”下载代理的配置文件(其中预先填充了应用程序和关键信息)。
安装
模块和配置路径
本节假设nginx.conf路径为/etc/nginx/nginx.conf
,模块目录位于in-modules-path
.运行以下命令查找特定路径:nginx - v
在输出中,搜索-modules-path
和conf-path
.
确保你有
/etc/nginx/nginx.conf
和modules目录。如果有必要,创建它们。解压下载的nginx代理tar。xz文件。
把ngx_http_tcell_agent_module.so文件对应于你的OS和NGINX版本
-modules-path
.(包包含Ubuntu x-y, CentOS x-y, Amazon Linux的版本。)添加一行
load_module模块/ ngx_http_tcell_agent_module.so;
到nginx.conf*之前事件
块。例子:1用户nginx2worker_processes汽车;3.4error_log日志/ error.log;5error_log日志/ error.log通知;6error_log日志/ error.log信息;7pid日志/ nginx.pid;89load_module /道路/ ngx_http_tcell_agent_module.so;1011事件{12worker_connections 1024;13}把tcell_agent.config文件在与nginx.conf相同的目录下。
添加一行
tcell_app_id APP_ID;
的事件块/etc/nginx/nginx.conf
文件。例如:http {tcell_app_id krtest-CeOCq;...}
重启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
1root@8a5fa88427d8: / etc / nginx # nginx - v23.nginx版本:nginx/1.14.0 (Ubuntu)452018年9月11日67启用TLS SNI支持89——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代理还没有启动。如果是这样:
运行以下命令,确认tCell代理正在添加到服务器启动中:
1Ps aux | grep——color tcell检查你的简历中有没有错误catalina.out日志。另外,跑步bin / catalina.sh运行或bin / catalina.bat运行将在前台启动tomcat,并在启动时打印任何错误。
您可以在日志列表中自定义日志级别tcell_agent.config文件通过添加一个块,如以下:
json
1“logging_options”:{2“启用”:真正的,3.“水平”:“信息”4}
看到tcell / tcell_agent.config.template了一个例子。
有效的日志级别包括:
- 跟踪
- 调试
- 信息(默认)
- 警告
- 错误
上面的列表显示了级别之间从上到下的优先级。当启用日志级别时,较低的日志级别也会启用。例如,如果您启用DEBUG,那么INFO、WARN和ERROR也会启用。
当日志文件已满时,将在新的日志文件中继续记录日志。看到日志滚动为更多的信息。
定制代理构建
NGINX要求构建模块时使用与它们运行的服务器相同的特性标志,以确保正确的操作。
如果你使用带有自己标志集的定制NGINX构建,Rapid7可以构建一个代理来为你在这个环境中工作。
- 让Rapid7知道这是你的要求。
- 在概念验证期间,让你的销售团队联系人知道。
- 如果你已经购买了tCell,现在正在为你的受保护应用程序集添加一个NGINX环境,或者正在更改为自定义NGINX设置,请通过Rapid7客户门户.
- 在上述支持机制中提供以下信息:
- 你的NGINX服务器输出-V标志(例如,
/ opt / nginx / sbin / nginx - v
),最好是作为压缩文本文件附件。 - 关于NGINX服务器的操作系统和分布的信息。在大多数Linux系统上,该命令提供详细的操作系统信息:
猫/etc/*release
如果可能,将此命令的输出附加到支持用例。 - 上的信息NGINX构建出处.具体来说,如果NGINX是从源代码构建的,请提供构建步骤和使用的工具。如果使用特定的工具(如apt-get)安装,请提供执行的详细apt-get步骤。
- 你的NGINX服务器输出-V标志(例如,
- Rapid7将回复一个确认和估计的完成时间,并在几天内,自定义模块匹配你的NGINX构建。