云锁Nginx1.22.1+宝塔新版开启自编译web防护教程2
今日由于更换服务器,在服务器使用宝塔面板结合云锁为服务器及站点做防护的时候,发现之前博文《云锁Nginx1.22.1+宝塔新版开启自编译web防护教程》教程已失效,现在在更新一遍这一篇内容:
宝塔面板安装:
连接至服务器后,使用官方的
1、首先我们得知道这个系统是32位还是64位,当然以64位居多;
命令:
getconf LONG_BIT
云锁的安装命令自己去云锁官网找最新的,选择对应的版本执行命令即可;直到提示"Install Yunsuo Success."安装完成。
添加服务器到云中心
说明:云锁服务器端安装好了,还要安装一个本地的软件;这一步的命令意思基本上就是让云端的和本地的软件相统一,因为你要在本地的客户端来日常操作。
命令:
/usr/local/yunsuo_agent/agent_smart_tool.sh -u cloud_name -p cloud_passwd
说明:将命令中的 cloud_name 改成你云锁官网注册的账户名; 将cloud_passwd改成你的密码;登录云锁本地客户端,登录云锁官网,都用这组账号密码。
自编译云锁的WEB防护
这里我宝塔安装的环境是Nginx,前提是必须编译安装。以下10步,依次进行。
1、先备份已安装的Nginx文件
通过ps命令查看nginx文件的路径。以下所有步骤都以自身nginx路径为准
# ps -elf | grep nginx # cd /www/server/nginx/sbin/ # cp nginx nginx.bak
2、下载云锁防护模块压缩包
# cd ~ # wget https://codeload.github.com/yunsuo-open/nginx-plugin/zip/master -O nginx-plugin-master.zip
3、解压云锁防护模块压缩包nginx-plugin-master.zip
# unzip nginx-plugin-master.zip
4、获取当前云锁模块所在目录的全路径
# cd nginx-plugin-master/ # pwd
5、查看当前nginx加载的模块,在编译加载云锁防护模块的时候仍需加载这些模块
# cd ~ # /www/server/nginx/sbin/nginx -V
备注:将./configure arguents:之后的内容复制到记事本备用
6、进入nginx源码目录,对nginx进行编译
宝塔面板安装的nginx源码位于/www/server/nginx/src
编译时添加云锁防护模块参数,参数路径为第4步获取的云锁防护模块源码全路径“/root/nginx-plugin-master”
备注:编译内容为(./configure ’上一步记事本中的备用内容 –add-module=/root/nginx-plugin-master)
# cd /www/server/nginx/src # ./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 --add-module=/www/server/nginx/src/nginx-http-concat --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-stream --with-stream_ssl_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-ld-opt=-Wl,-E --add-module=/root/nginx-plugin-master
7、Nginx1.8.0 以上和 Tengine 2.1.2 则需要修改objs/Makefile文件来支持post过滤
在Makefile文件中的CFLAGS=…-Werror -g后追加宏定义 -DHIGHERTHAN8
# vi objs/Makefile
备注:按Insert后找到-Werror -g 添加 -DHIGHERTHAN8 ,添加之后键盘 ESC:wq Enter 回车键;(注意中间的冒号也要键入)。
# make
8、make完成后将系统中原有的nginx用重新编译生成的nginx文件替换,替换后重启nginx使新编译nginx生效
# rm -rf /www/server/nginx/sbin/nginx # cp objs/nginx /www/server/nginx/sbin/ # service nginx restart
9、到此通过PC端连接到服务器端,在PC端的界面上刷新后可以看到已识别nginx插件(由灰色变为绿色)。
10、测试防护是否生效
域名+/?order%20by