nginx安全设置(Nginx+ModSecurity安全模块部署的实现)
类别:服务器 浏览量:1769
时间:2021-10-02 01:07:48 nginx安全设置
Nginx+ModSecurity安全模块部署的实现目录
- 一、下载
- 二、部署
- 1.Nginx部署
- 2.ModSecurity部署
- 3.添加ModSecurity模块
- 4.配置Nginx虚拟主机
为演示已安装Nginx而未添加ModSecurity的情况,以下操作为先安装Nginx,后添加ModSecurity模块。
ModSecurity是一个开源的跨平台Web应用程序防火墙(WAF)引擎,,完美兼容nginx,是nginx官方推荐的WAF,并且支持支持OWASP规则。
中文网站:http://www.modsecurity.cn
应用实战可参考:http://www.modsecurity.cn/practice/
一、下载1.Nginx下载
wget http://nginx.org/download/nginx-1.14.2.tar.gz
2.ModSecurity下载
wget http://www.modsecurity.cn/download/modsecurity/modsecurity-v3.0.4.tar.gz
1.Nginx部署
1.1安装依赖
yum install -y pcre* openssl* gcc c++ make
1.2 编译安装
解压文件
tar -xvf nginx-1.14.2.tar.gz cd nginx-1.14.2/
配置模块
./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre
执行编译
make make install
创建账号和目录
useradd nginx -s /sbin/nologin mkdir /var/tmp/nginx/
2.ModSecurity部署
2.1 安装依赖
yum install -y gcc-c++ flex bison yajl yajl-devel curl-devel curl GeoIP-devel doxygen zlib-devel pcre-devel lmdb-devel libxml2-devel ssdeep-devel lua-devel libtool autoconf automake
2.2 编译安装
解压文件
tar -xvf modsecurity-v3.0.4.tar.gz cd modsecurity-v3.0.4/
编译安装
./configure make make install cp modsecurity.conf-recommended /usr/local/modsecurity/modsecurity.conf cp unicode.mapping /usr/local/modsecurity/
3.添加ModSecurity模块
3.1查看Nginx编译参数
/usr/local/nginx/sbin/nginx -V
3.2下载ModSecurity模块
git clone https://github.com/SpiderLabs/ModSecurity-nginx.git 或至下载 https://github.com/SpiderLabs/ModSecurity-nginx
3.3重新编译Nginx
解压模块
unzip ModSecurity-nginx-master.zip #仅在下载安装包情况下,如果是git clone 则不需要
编译安装
./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre --add-module=../ModSecurity-nginx #此处需要注意/ModSecurity-nginx路径 make make install /usr/local/nginx/sbin/nginx -V #查看已经有了ModSecurity模块
添加配置文件
mkdir /usr/local/nginx/conf/modsecurity cp /usr/local/modsecurity/modsecurity.conf /usr/local/nginx/conf/modsecurity/ cp /usr/local/modsecurity/unicode.mapping /usr/local/nginx/conf/modsecurity/
4.配置Nginx虚拟主机
4.1虚拟主机配置
vim /usr/local/nginx/conf/nginx.conf modsecurity on; modsecurity_rules_file /usr/local/nginx/conf/modsecurity/modsecurity.conf; #在http节点添加表示全局配置,在server节点添加表示为指定网站配置
4.2Modsecurity配置
vim /usr/local/nginx/conf/modsecurity/modsecurity.conf #更改一下部分 SecRuleEngine On SecAuditLogParts ABCDEFHZ #追加到配置文件 Include /usr/local/nginx/conf/modsecurity/crs-setup.conf Include /usr/local/nginx/conf/modsecurity/rules/*.conf
4.3下载规则文件
wget http://www.modsecurity.cn/download/corerule/owasp-modsecurity-crs-3.3-dev.zip #Modsecurity中文网下载 wget https://github.com/coreruleset/coreruleset #github下载
4.4 配置规则
unzip owasp-modsecurity-crs-3.3-dev.zip cd owasp-modsecurity-crs-3.3-dev/ cp crs-setup.conf.example /usr/local/nginx/conf/modsecurity/crs-setup.conf cp -r rules /usr/local/nginx/conf/modsecurity/ cd /usr/local/nginx/conf/modsecurity/rules mv REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.example REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf mv RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.example RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf
4.5测试
#浏览器 或 curl访问测试,返回403 curl -I 'http://localhost/?id=1 AND 1=1'
到此这篇关于Nginx+ModSecurity安全模块部署的实现的文章就介绍到这了,更多相关Nginx ModSecurity部署内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!
您可能感兴趣
- 如何采集nginx的日志(Filebeat 采集 Nginx 日志的方法)
- nginx怎么配置静态文件(Nginx 过滤静态资源文件的访问日志的实现)
- nginx报网络连接错误(Nginx 502 Bad Gateway错误原因及解决方案)
- nginx怎么实现反向代理(nginx反向代理时如何保持长连接)
- nginx配置静态资源访问(nginx 多个location转发任意请求或访问静态资源文件的实现)
- nginx的请求处理(nginx处理http请求实现过程解析)
- nginx配置文件位置(查看nginx配置文件路径和资源文件路径的方法)
- 如何提高nginx性能(提升Nginx性能的一些建议)
- nginx设置https访问(基于Nginx实现HTTPS网站设置的步骤)
- nginx配置两个前端web服务(你真的了解如何将Nginx配置为Web服务器吗)
- nginx配置目录(nginx配置文件使用环境变量的操作方法)
- 宝塔web服务器如何安装(宝塔面板开启Nginx/Apache防火墙四层防御的方法)
- nginx负载均衡5种方法(Nginx如何配置负载均衡)
- django框架全面讲解(Django uwsgi Nginx 的生产环境部署详解)
- nginx如何配置多个域名访问(Nginx同一个域名配置多个项目的实现方法)
- docker如何访问nginx(基于docker启动nginxssl配置)
- 这个全椒人被通报表彰,看看你认识吗(这个全椒人被通报表彰)
- 全椒人,38年集体回忆 1980-2018 ,看完不要哭(全椒人38年集体回忆)
- 董元奔吟咏历代文人 1012新旧均可 全椒人张璪 1022 -1093(董元奔吟咏历代文人)
- 泪目 这位 刷屏 的英雄,是全椒人的骄傲(泪目这位刷屏)
- 人从众 火炎焱 全椒再现 正月十六走太平 的魅力(人从众火炎焱全椒再现)
- 官宣 全椒籍明星许海峰 奚秀兰 方芳 王璐瑶携手回家 走太平(全椒籍明星许海峰)
热门推荐
- vue获取图片并展示(vue卡片式点击切换图片组件使用详解)
- html5入门布局(吃透移动端 Html5 响应式布局)
- js的逻辑关系和思路(js Proxy的原理详解)
- angular兄弟组件调用方法(Angular封装WangEditor富文本组件的方法)
- python中jieba库怎么用(详解Python数据可视化编程 - 词云生成并保存jieba+WordCloud)
- word-break、word-wrap、white-space的用法
- js弹出新窗口被拦截的解决方法
- 阿里云ecs负载均衡(阿里云ECS的CPU100%排查)
- web安全漏洞怎么解决(Web服务器常见8种安全漏洞)
- iis运行php程序(Windows2003+IIS7 Express使用FastCgi运行php)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9