首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在NGINX中编译ModSecurity

在NGINX中编译ModSecurity
EN

Stack Overflow用户
提问于 2018-02-10 00:55:28
回答 1查看 1.6K关注 0票数 4

我正在尝试为Nginx服务器编译ModSecurity。我已经遵循了他们的“快速启动指南”的所有指示,但我遇到了一个问题。连接新模块后,配置测试失败。

来自/var/log/nginx/error.log的错误输出是:

2018/02/10 00:47:51 [emerg] 6026#6026: module "/usr/share/nginx/modules/ngx_http_modsecurity_module.so" is not binary compatible in /etc/nginx/modules-enabled/50-mod-http-modsecurity.conf:1

最初,动态模块是用

sh ./configure --with-compat --add-dynamic-module=../ModSecurity-nginx

但这会导致错误。

根据我所读到的,我需要使用与现有Nginx实例相同的选项编译模块。

我使用nginx -V找到当前选项,然后使用所有的输出选项重新运行./configure,但这会产生相同的错误。

有人能把我引向正确的道路吗?

谢谢你的帮助。

更新10/29/18

似乎原始二进制文件也需要使用--with-compat标志进行编译。我已经提交了一份关于这个问题的错误报告,可以在这里找到:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=897926

也许它能得到一些牵引力。

EN

回答 1

Stack Overflow用户

发布于 2019-04-09 07:16:06

我也有过类似的问题。我使用的是Nginx1.10.3,这是Debian拉伸的缺省值。这个版本似乎不适用于最新的Nginx ModSecurity连接器。

我删除了默认的Nginx版本,并从packages.html中安装了最新的稳定版本。在此之后,我能够安装并加载Nginx的ModSecurity模块,而没有出现问题。我遵循了这个指南:https://www.linuxjournal.com/content/modsecurity-and-nginx,用于安装Nginx的ModSecurity模块。

Nginx的最新稳定版本为1.14.2,它支持-具有-compat标志。在编译Nginx源代码时,请确保使用与运行中的Nginx相同的编译器选项。要了解用于构建当前运行的Nginx的编译时选项,请运行以下命令:nginx -V

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48716149

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档