我、实战nginx+naxsi(WAF)之一

差不多,一个星期多的时间都过去了。但是还是感觉时间过的太快,总是不禁的让人长叹一声,关于nginx和(naxsi)WAF这个问题,也算是只走出了第一步,在遇到了各种乱七八糟的错误之后总算是想要静下心来写一些自己这小段时间里的一些感受或者是算不上总结的总结。参考的文章也很多,我在这里把所有的东西都融到一起,像我一样的小白希望你们遇到的时候能帮的上你们,而对于熟悉Linux环境和各种错误的人也希望能帮助到你们。

言归正传,我们开始我们的实战之旅。

第一部分---安装nginx+naxsi

首先,我说一下我的环境是ubuntu14.04LTS版本,并且是在root用户下进行操作的,省去了很多麻烦,至于其他的版本也应该是大同小异的,区别也极有可能只是命令的不通而已。

1 下载nginx源码:wget http://nginx.org/download/nginx-1.7.9.tar.gz

2 下载naxsi源码:wget https://naxsi.googlecode.com/files/naxsi-core-0.51-1.tgz

(注意:这个网址是在谷歌,所以自己想办法下载,我当时使用办法是在windows系统下下载好之后再挪进虚拟机的。为什么要这样做我想你能懂。)

3 安装开发包  apt-get install libpcre3-dev libpcre3 gcc make zlib1g-dev

(注意:这些安装包还是先安装比较好,省去以后需要时才安装带来的麻烦,当然以后要是需要其他的开发包等时,可以那时再安装。)

4 解压缩、编译

(我之前把所有的包全部放在了统一的目录下方便进行操作)

tar xzvf nginx-1.7.9.tar.gz

tar xzvf naxsi-core-0.51-1.tar.gz

执行编译:

在编译安装nginx之前请确定你没有安装apache,如果已经安装请你先卸载在安装。

./configure --add-module=/home/stone/Downloads/naxsi-core-0.51-1/naxsi_src --prefix=/home/stone/Downloads/nginx(这一步要在解压之后的nginx文件目录下执行)

附图解释:

执行 make&& make install;

结束,之后在我的Downloads目录下生成了一个nginx文件夹,这就是安装之后的nginx。

5 运行nginx

生成的可执行的nginx文件在/home/stone/Downloads/nginx/sbin目录下,即你编译生成的nginx文件夹下的sbin文件夹里面。(当时我不知道之前的编译命令是什么意思,结果在指定安装目录的时候我就写的是nginx1.7.9,就生成了一个nginx1.7.9的文件夹)

执行命令:./nginx(启动nginx)

访问127.0.0.1出现欢迎界面:

这里的nginx的目录就是你指定的目录,比如,我的就是/home/stone/Downloads/nginx1.7.9

我们下面可以测试一下我们定制安装的nginx是否已经安装成功了:

我的命令是这样的:./nginx -t

注意:有的文章上面写的是nginx -t,如果在我的那个目录下也敲nginx -t命令的话会出现这样的状况:

我们可以看到了,系统应该是已经自带有安装包的,如果你执行了安装命令的话,我们使用源码安装的意义就没有了,所以,个人觉得命令应该是./nginx -t。

接下来,我们需要将nginx配制成反向代理,

6 配置反向代理

第一,首先我们要清楚的知道nginx的安装目录,我的安装目录是指定到了/home/stone/Downloads/nginx1.7.9

接着,我们进入naxsi的目录下,将naxsi的核心配置拷贝到nginx的配置文件夹下(即nginx1.7.9/conf文件夹下)。也可以用命令行的形式进行这个过程:

cp /home/stone/Downloads/naxsi-core-0.51-1/naxsi_config/naxsi_core.rules /home/stone/Downloads/nginx1.7.9/conf/
      完成这一步之后,我们要配置一下nginx.conf的配置文件,加入配置,让其包含naxsi的核心规则库文件:

然后需要定义一个虚拟主机的安全规则,我参考的内容如下,并且我将它命名为naxsi_nbs.rules(你可以将它命名为test.rules否可以):

然后这个文件在conf文件夹下,之后在配置配置文件的时候需要将该文件包含在配置文件中,

形如:include  /home/stone/Downloads/nginx1.7.9/conf/

到此为止,我们的nginx+naxsi安装以及关联已经告一个小小的段落,之后还有一些详细的配置文件的内容介绍,我将在下一篇随笔里面介绍。

在这过程之间,我曾遇到过一下问题,如果你们也遇到了和我一样的问题,那么我之前的时候记录的一篇关于遇到的一些问题思路或解决方法的随笔也许可以帮到你们:

http://www.cnblogs.com/stone-dan-dan/p/stone.html

时间: 2024-10-25 22:30:02

我、实战nginx+naxsi(WAF)之一的相关文章

Nginx 支持 WAF 防护功能实战

WAF(Web Application Firewall),中文名称叫做“Web应用防火墙 WAF的定义是这样的:Web应用防火墙是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品,通过从上面对WAF的定义中,我们可以很清晰地了解到:WAF是一种工作在应用层的.通过特定的安全策略来专门为Web应用提供安全防护的产品.用途: 用于过滤post,get,cookie方式常见的web攻击 防止sql注入,本地包含,部分溢出,fuzzing测试,xss,SSRF等we

实战nginx前端反代mogfilefs及负载均衡

实战nginx前端反代mogfilefs及负载均衡 =============================================================================== 实验描述: 使用Nginx代理请求至tackers,实现通过键就可以访问到文件: 在配置nginx做反代将用户的请求调度至后端的MogileFS,此实验依赖于nginx-mogilefs-module模块,需在编译时加上此模块. 实验环境: 再准备一台CentOS 7的虚拟主机,来作为前

LNMP架构应用实战——Nginx配置虚拟主机

LNMP架构应用实战--Nginx配置虚拟主机        前面介绍了nginx服务的安装与配置文件,今天介绍下它的另一种实用配置--"虚拟主机",每个虚拟主机可以是一个独立的网站,可以具有独立的域名,同一台服务器上的不同的虚拟主机之间是独立的,用户访问不同虚拟主机如同访问不同的服务器一样,因此它不需要为一个单独的WEB站点提供单独一个nginx服务器和一个单独的nginx进程 1.nginx虚拟主机简单介绍 同apache服务一样,它也有三种不同的虚拟主机,基于域名的虚拟主机.基于

LNMP架构应用实战——Nginx服务配置文件介绍

LNMP架构应用实战--Nginx服务配置文件介绍 nginx的配置文件比较简单,但功能相当强大,可以自由灵活的进行相关配置,因此,还是了解下其配置文件的一此信息 1.Nginx服务目录结构介绍 安装完成后,在安装路径下就会有Nginx目录信息 [[email protected] application]# tree nginx nginx +-- client_body_temp +-- conf          #nginx服务配置文件目录 |   +-- fastcgi.conf  

实战Nginx:Nginx服务器的安装与配置

----------------------------------------------------------------------------------------------- Nginx下载地址:http://www.nginx.net [email protected] 黑眼诗人 <www.chenwei.ws>---------------------- Nginx在Window下的安装 => '开始' - '运行' - 'cmd',执行如下DOS命令 d: cd d

实战Nginx负载均衡高冗余高可用WEB架构

最近公司主力网站之一改版完成终于上线了,牵扯了我大半年的时间,现在终于有时间坐下来写点东西,总结沉淀一下自己的技术心得.此次,根据服务器的数量和质量,我采用负载均衡高冗余的架构,考虑单点故障,WEB也抛弃了apache,而使用的是nginx,数据库还是使用主.从架构.该架构目前承载80W的PV,没有大的压力. 这里简单谈一下web的选择疑问,是使用nginx还是apache,很多朋友在规划网站的时候都出现难以选择的问题,甚至有朋友在建设初用apache后期改成nginx.接下来我说一下我的规划选

我的第一篇——nginx+naxsi总结篇

今天是我正式在Linux下安装nginx的第一天吧,搜索,查看,安装,这之间肯定是或多或少的遇到了很多的问题,不管是大的还是小的,都应该记录下来,或许以后还会用到,或许会帮到其他人. 首先,先说一下,我是在virtualbox上装了ubuntu13.01这个版本下安装并配置nginx.naxsi的.之前我用的是ubuntu server这个版本,但是因为下载谷歌上的某一文件所以选择了桌面版,可以复制文件并且这样可以在主机和虚拟机之间拖动方便. 那么,我以下总结的重点就不放在安装的具体过程上面了,

nginx添加WAF模块

WAF全称叫Web Application Firewall,web应用防火墙 最近公司网页发现有人天天在刷单,ELk真心不错,能多维度的发现这些问题.所以现在考虑给nginx增加个WAF模块,找了个老外的ModSecurity,下面讲下如何安装 1.安装依赖rpm包 yum -y install gcc gcc-c++ ncurses-devel libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel autoconf

生产场景:实战nginx源码编译安装

生产场景:nginx实战安装 一.准备环境: 1.1 操作系统:centos 6.7     安装常用软件 yum install tree telnet dos2unix sysstat lrzsz nc nmap zip unzip -y 1.2 官网下载ngnx源码包nginx-1.12.2.tar.gz,并隐藏nginx版本号和修改nginx软件名 下载nginx源码包nginx-1.12.2.tar.gz,并隐藏nginx版本号和修改nginx软件名(此步骤省略). 二.开始安装ngi