宝塔面板+云锁nginx自编译web防护的图文教程

242人参与 |分类: 运维时间|时间: 2019年08月03日

这篇关于宝塔面板+云锁nginx自编译web防护的图文教程主要分享给不会编译云锁nginx自编译模块的用户。首先在操作前,请确认已经配置好宝塔面板,并采用编译方法配置的nginx环境!(不是极速安装,是编译安装)

并妥善备份Nginx文件,以及确定本教程不适用于非宝塔用户以及apache用户其次,本教程只要按照一步一步来,傻瓜都能编译好。官方教程小白看一眼懵逼了,本教程没那么复杂。

配置编译环境,宝塔如果编译好nginx是默认配置好环境的,可以忽略这个配置环境。

yum install -y gcc gcc-c++ pcre-devel openssl openssl-devel

你可以使用SSH工具以ROOT权限登陆之后下载备份nginx,也可以直接使用命令备份nginx

查看nginx位置

ps -elf | grep nginx

进入宝塔nginx目录

cd /www/server/nginx/sbin/

备份宝塔nginx

cp nginx nginx.bak

进入root目录

cd /root

下载云锁防护模块压缩包

wget https://codeload.github.com/yunsuo-open/nginx-plugin/zip/master -O nginx-plugin-master.zip

解压云锁防护模块压缩包

unzip nginx-plugin-master.zip

查看宝塔编译好的nginx加载模块,在重新编译加载云锁防护模块的时候仍需加载这些模块。

nginx -V

注意这个命令是大写的V,如果小写v是不会显示模块的。

宝塔面板+云锁nginx自编译web防护的图文教程-第1张图片

将./configure arguents:之后的内容复制到记事本备用,比如我的是:

--user=www --group=www --prefix=/www/server/nginx --with-openssl=/www/server/nginx/src/openssl --add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module --add-module=/www/server/nginx/src/ngx_cache_purge --add-module=/www/server/nginx/src/nginx-sticky-module --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-http_concat_module --with-ld-opt=-Wl,-E --with-jemalloc --without-http_upstream_session_sticky_module --with-pcre=pcre-8.40

(我的仅供参考,实际以自己的为准)

进入nginx源码目录,对nginx进行重新编译,操作之前请确认自己的nginx是编译模式安装的,而不是宝塔面板的极速安装。

cd /www/server/nginx/src

编译内容

./configure 上一步记事本中的备用内容 --add-module=/root/nginx-plugin-master

./configure和记事本复制的内容之间有个空格,后面的--add-module前面也有个空格,比如我的:

./configure --user=www --group=www --prefix=/www/server/nginx --with-openssl=/www/server/nginx/src/openssl --add-module=/www/server/nginx/src/ngx_devel_kit --add-module=/www/server/nginx/src/lua_nginx_module --add-module=/www/server/nginx/src/ngx_cache_purge --add-module=/www/server/nginx/src/nginx-sticky-module --with-http_stub_status_module --with-http_ssl_module --with-http_v2_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-http_concat_module --with-ld-opt=-Wl,-E --with-jemalloc --without-http_upstream_session_sticky_module --with-pcre=pcre-8.40 --add-module=/root/nginx-plugin-master

等待命令结束,输入编译命令

make

完成后将系统中原有的nginx用重新编译生成的nginx文件替换

停止nginx

service nginx stop

删除原来的nginx,操作之前请确认自己的nginx已经备份

rm -rf /www/server/nginx/sbin/nginx

复制新编译的nginx

cp /www/server/nginx/src/objs/nginx /www/server/nginx/sbin/

启动nginx

service nginx start

通过PC端登陆云锁,PC端刷新后可以看到已识别nginx插件(由灰色变为绿色)

宝塔面板+云锁nginx自编译web防护的图文教程-第2张图片

输入你的网址后面加上/?order%20by,测试云锁,如果提示被拦截说明已经搞定。

宝塔面板+云锁nginx自编译web防护的图文教程-第3张图片