linux nginx服务器安装verynginx防止CC攻击

自己国内重要网站都是用的某些商业防护软件,但是最近增加了个国外的vps,就不方便。

当然我看国外某款waf,也挺便宜的,效果不亚于阿里云的安全产品。

不过网站小,没必要一个月20刀去买,就用nginx简单的弄下防御就好了。

由于vps已经套了Any cast就不怎么担心ddos了,弄下cc防御就好了。

基于nginx关于防御cc攻击的,网上挺多相关脚本模块的,很多都是基于lua开发的,然后用OpenResty,防御效果还是不错的。

我用了verynginx,是觉得有控制面板,功能也挺多的,具体可以到官方看:VeryNginx

一、安装lua模块

由于我没有安装lua模块,就先安装这个吧。我是用的oneinstack安装的环境,所以就安装oneinstack的来。

pushd /root/oneinstack/src
wget -c http://nginx.org/download/nginx-1.12.1.tar.gz
wget -c https://www.zhujitop.com/test/openssl-1.0.2l.tar.gz
wget -c https://www.zhujitop.com/test/pcre-8.41.tar.gz
wget -c http://luajit.org/download/LuaJIT-2.0.5.tar.gz
git clone https://github.com/simpl/ngx_devel_kit.git
git clone https://github.com/openresty/lua-nginx-module.git
tar xzf nginx-1.12.1.tar.gz
tar xzf openssl-1.0.2l.tar.gz
tar xzf pcre-8.41.tar.gz
tar xzf LuaJIT-2.0.5.tar.gz
pushd LuaJIT-2.0.5
make && make install
popd
pushd nginx-1.12.1
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_v2_module --with-http_ssl_module --with-http_gzip_static_module --with-http_realip_module --with-http_flv_module --with-http_mp4_module --with-openssl=../openssl-1.0.2l --with-pcre=../pcre-8.41 --with-pcre-jit --with-ld-opt=-ljemalloc --add-module=../lua-nginx-module --add-module=../ngx_devel_kit
make
mv /usr/local/nginx/sbin/nginx{,_bk}
cp objs/nginx /usr/local/nginx/sbin

如果自己有了, 某些就不用重新下载了,针对verynginx重要的就是LuaJIT、lua-nginx-module、其他的一般都已经安装了,只是要重新编译下nginx

添加变量:

cat /etc/ld.so.conf include ld.so.conf.d/*.conf echo “/usr/local/lib” >> /etc/ld.so.conf ldconfig

然后看看有没有错误: nginx -t

二、安装verynginx

1:创建个文件夹并且进去

mkdir verynginx

cd verynginx

2:下载解压

wget https://github.com/alexazhou/VeryNginx/archive/master.zip

(备份地址:https://www.zhujitop.com/test/master.zip)

unzip master.zip

3:安装

cd VeryNginx-master

python install.py

python install.py install all

如果是自行编译的nginx或OpenResty,就选择install verynginx;一键安装就用install all;还有一个选项是只安装OpenResty:install openresty。

我之前并没有安装OpenResty,所以就用一键安装好了,就是上面的python install.py install all

安装完成了,就会出现上面的提示,一般不用管它,除非你自己要修改。

4:配置

安装完成之后,查看文件:/opt/verynginx/openresty/nginx/conf/nginx.conf

如果已经是下图这样了,就不用管了,如果不是就先修改下,增加三行代码:

include /opt/verynginx/verynginx/nginx_conf/in_external.conf; 添加到http上面

include /opt/verynginx/verynginx/nginx_conf/in_http_block.conf;添加到http里面

include /opt/verynginx/verynginx/nginx_conf/in_server_block.conf;#添加到server里面

由于我之前都做好网站,并且服务器的nginx文件是写到一起的,我就得在本身服务器的nginx配置文件,也去增加上面的三行才管用。

最后重启下nginx

然后去打开下面的地址,看看能否打开。

http://[your domain or ip]/verynginx/index.html

这个也可以绑定你自己域名的。

默认的用户名和密码都是:verynginx 后台可以修改

用做控制面板的ip或者域名最好做好保护,域名也可以上ssl证书的。

至于里面的设置,常见都设置好了,也可以自己增加,可以自己改改。

重要提示:对于不懂匹配规则的,不要乱设置all_request,错误设置你网站就挂了,就只能把verynginx删了。

如果不能进这个页面,就是配置错误,主要就是看看必须的模块有没有,然后再看看相关的路径设置就好了。

如果只是为了CC防御,其实也可以不用这个,这个只是可以实现更多的功能,误杀机率可以更小点。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏我是攻城师

Storm的wordcount实战示例

21430
来自专栏信安之路

初窥火狐浏览器插件后门

1、manifest.json 这个文件是每个插件都必须有的一个文件(其他的文件是可选的),它定义了插件的所有的信息,如权限,要引入哪些脚本,包含哪些资源等等。

15000
来自专栏『不羁阁』 | 行走少年郎专栏

Hexo 博客部署到腾讯云教程

80460
来自专栏IT可乐

Nginx(一)------简介与安装

  说到 Nginx ,可能大家最先想到的就是其负载均衡以及反向代理的功能。没错,这也是当前使用 Nginx 最频繁的两个功能,但是 Nginx 可不仅仅只有这...

19930
来自专栏月牙寂

k8s源码分析-----kube-proxy(1)Config

第一时间获取文章,可以关注本人公众号 月牙寂道长 yueyajidaozhang

32970
来自专栏杂七杂八

scarpy初识

Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。 可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中。Scrapy的一个最主要...

40190
来自专栏macOS 开发学习

Mac开发基础练习:制作一个状态栏(NSStatusBar)上的App(二)

1.1 选中ViewController.m文件,添加鼠标左键点击事件监听,实现代码如下图:

12330
来自专栏GreenLeaves

Oracle 基础系列之1.1 oracle的安装

一、 1、以下是安装Oracle的一些硬件上的条件: (1)、操作系统最后是windows2000(也就是服务器版的操作系统) (2)、内存最好在1G以上,当然...

251100
来自专栏黑白安全

linux忘记mysql密码,如何找回密码?

今天我们主要是讲一下关于linux忘记mysql密码处理方法,下面提供了5种linux忘记mysql密码找回方法哦。

24230
来自专栏云加头条

腾讯云存储最佳实践系列二:对象存储中配置自定义域名支持 HTTPS 访问

对象存储中配置自定义域名支持 HTTPS 访问

59700

扫码关注云+社区

领取腾讯云代金券