首页 > 其他分享 >银河麒麟v10(Sword)(aarch64架构)安装zhongkui-waf

银河麒麟v10(Sword)(aarch64架构)安装zhongkui-waf

时间:2024-06-20 14:33:40浏览次数:8  
标签:aarch64 zhongkui v10 nginx usr openresty waf local

银河麒麟v10(Sword)(aarch64架构)安装zhongkui-waf

系统:Kylin Linux Advanced Server release V10 (Sword)
waf官网地址:https://github.com/bukaleyang/zhongkui-waf
需要安装的组件:OpenResty、ZhongKui、libmaxminddb和geoipupdate

官方提供了install.sh脚本可以安装,但是脚本没有安装依赖环境,所以自己运行大概率会报错,我们按照脚本自己手动安装。

注意:v1.2版本开始,一些数据统计依赖Mysql数据库,因此需要配置Mysql数据库并自行创建database(zhongkui_waf),waf启动后,表结构会自动创建。如果不安装数据库的话,无法查看攻击日志

软件 版本
openresty 1.21.4.3
zhongkui-waf v1.2
libmaxminddb 1.7.1
libinjection master
luaossl 20220711

你是不是有疑问?为什么不要雷池waf呢,因为不支持:
image

一、安装openresty

软件通用规则:用稳定的,不用最新的。所以这次我们选择openresty 1.21.4.3版本,不用 OpenResty 1.25.3.1版本

image

我们直接用yum安装,因为我们的服务器可以联网,所以就直接安装了。

1、添加yum源并安装openresty
cd /etc/yum.repos.d/
wget https://openresty.org/package/centos/openresty.repo
vim openresty.repo
# 把 $releasever 改成 8,然后按:输入wq,保存并退出。

# 生成缓存
yum clean all
yum makecache

# 查询openresty,可以看到默认是最新版本的openresty,我们需要安装1.21.4.3版本
yum list all | grep openresty

# 安装
yum install openresty-1.21.4.3

# 查看(openresty配置文件路径:/usr/local/openresty)
openresty -v

# 配置软连接(因为我习惯了用nginx)
ln -s /usr/bin/openresty /usr/bin/nginx
nginx -v

# 测试lua功能是否正常
cd /usr/local/openresty/nginx/conf
vim nginx.conf
#在默认的server配置中增加
        location /hello {
            default_type text/html;
            content_by_lua_block {
                ngx.say("<p>hello, world</p>")
            }
        }

# 启动openresty查看是否生效
systemctl start openresty

# 测试正常
curl 127.0.0.1/hello

至此 openresty安装成功

二、安装zhongkui-waf模块

mkdir -p /home/download
cd /home/download
# 下载zhongkui-waf模块
wget -O /usr/local/src/zhongkui-waf-master.zip https://github.com/bukaleyang/zhongkui-waf/archive/refs/heads/master.zip --no-check-certificate
unzip zhongkui-waf-master.zip
mv ./zhongkui-waf-master /usr/local/openresty/zhongkui-waf

三、安装libmaxminddb

处理 MaxMind 数据库文件的库

cd /home/download
wget https://github.com/maxmind/libmaxminddb/releases/download/1.7.1/libmaxminddb-1.7.1.tar.gz
tar -zxvf libmaxminddb-1.7.1.tar.gz
cd ./libmaxminddb-1.7.1
./configure
make -j 4 && make install
echo /usr/local/lib >> /etc/ld.so.conf.d/local.conf
ldconfig

四、安装libinjection

开源的sql注入和xxs攻击词法解析库

cd /home/download
wget -O /usr/local/src/libinjection-master.zip https://github.com/client9/libinjection/archive/refs/heads/master.zip
unzip libinjection-master.zip
cd ./libinjection-master
make all
mv ./src/libinjection.so /usr/local/openresty/lualib/libinjection.so

五、安装luaossl

lua中的OpenSSL模块

cd /home/download
wget -O /usr/local/src/luaossl-rel-20220711.tar.gz https://github.com/wahern/luaossl/archive/refs/tags/rel-20220711.tar.gz
tar -zxvf luaossl-rel-20220711.tar.gz
cd ./luaossl-rel-20220711
make all5.1 includedir=/usr/local/openresty/luajit/include/luajit-2.1 && make install5.1

image

六、maxminddb数据库文件自动更新

cd /home/download
wget https://github.com/maxmind/geoipupdate/releases/download/v7.0.0/geoipupdate_7.0.0_linux_arm64.tar.gz
tar -zxvf geoipupdate_7.0.0_linux_arm64.tar.gz
mv ./geoipupdate_7.0.0_linux_arm64/geoipupdate /usr/local/bin/geoipupdate
mkdir -p /usr/local/share/GeoIP
vim /usr/local/etc/GeoIP.conf
AccountID your AccountID
LicenseKey your LicenseKey
EditionIDs GeoLite2-City
DatabaseDirectory /usr/local/share/GeoIP
# 测试
geoipupdate
# 写入计划任务
echo "32 8 * * 1,3 /usr/local/bin/geoipupdate" | crontab -
# 查看
crontab -l

怎么获取AccountID和LicenseKey和GeoLite2-City.mmdb文件请看后面的介绍,

7、安装mysql数据库

8、配置openresty开启zhongkui-waf

假设OpenResty安装路径为:/usr/local/openresty,下载zhongkui-waf文件并放在/usr/local/openresty/zhongkui-waf目录。

# 修改nginx.conf,在http模块下添加zhongkui-waf相关配置:
vim /usr/local/openresty/nginx/conf/nginx.conf
include /usr/local/openresty/zhongkui-waf/conf/waf.conf;
include /usr/local/openresty/zhongkui-waf/conf/admin.conf;
include /usr/local/openresty/zhongkui-waf/conf/sites.conf;
# 修改waf日志文件
# zhongkui.conf基本配置文件
vim /usr/local/openresty/zhongkui-waf/conf/zhongkui.conf
logPath = "/home/logs/nginx/hack/"
mkdir -p /home/logs/nginx/hack/
chown -R nginx:nginx /usr/local/openresty/zhongkui-waf
chown -R nginx:nginx /home/logs/nginx/hack

# 使用sudo visudo命令将下面这行规则添加进去,将nginx用户添加到sudoers,仅允许其执行nginx命令
# nginx ALL=NOPASSWD: /usr/local/openresty/nginx/sbin/nginx
sudo visudo
nginx ALL=NOPASSWD: /usr/local/openresty/nginx/sbin/nginx

# 修改/usr/local/openresty/zhongkui-waf/conf/waf.conf配置文件,不然会报[crit] ngx_slab_alloc() failed: no memory
vim /usr/local/openresty/zhongkui-waf/conf/waf.conf
lua_shared_dict dict_cclimit 100m;
lua_shared_dict dict_accesstoken 50m;
lua_shared_dict dict_blackip 100m;
lua_shared_dict dict_locks 10m;
lua_shared_dict dict_config 10m;
lua_shared_dict dict_config_rules_hits 10m;
lua_shared_dict dict_req_count 50m;
lua_shared_dict dict_req_count_citys 100m;
lua_shared_dict dict_sql_queue 100m;
# 检测
nginx -t 
# 启动
systemctl start openresty
# 测试
curl http://localhost/?t=../../etc/passwd

至此zhongkui-waf安装完成

标签:aarch64,zhongkui,v10,nginx,usr,openresty,waf,local
From: https://www.cnblogs.com/wltian-one/p/18255918

相关文章

  • zhongkui-waf具体配置说明
    zhongkui-waf具体配置说明Zhongkui-WAF内置了管理界面,但你依然可以通过直接修改相应配置文件来进行自定义配置。Zhongkui-WAF的基本配置在/conf/zhongkui.conf文件中,你可以对它进行修改。ip黑名单列表可以配置在/conf/zhongkui.conf文件中,也可以配置在path-to-zhongkui-waf/rul......
  • YOLO家族中谁才是轻量级网络模型的王者,让我们实验探索分析【YOLOv3—YOLOv10】系列,挖
    在我们前面的系列博文中,我们基于YOLOv3-YOLOv10众多系列的YOLO模型开发实践了非常多的检测模型,在以往的项目开发过程中,我们大多是关注单个系列模型下纵深方向的不同参数分支对比实验结果,比较少去站在不同YOLO系列的角度来进行横向的对比分析。又是一年一度的618了,晚上正好有点......
  • 【YOLOv10改进[注意力]】使用迭代注意力特征融合(iterative attentional feature fusio
    本文将进行使用迭代注意力特征融合(iterativeattentionalfeaturefusion,iAFF)改进c2f ,助力YOLOv10目标检测效果的实践,文中含全部代码、详细修改方式以及手撕结构图。助您轻松理解改进的方法。改进前和改进后的参数对比: 目录一AttentionalFeatureFusion(2020)二使用......
  • 【YOLOv10改进[注意力]】在YOLOv10中添加坐标注意力CoordAtt + 含全部代码和详细修改
    本文将进行在YOLOv10中添加坐标注意力CoordAtt的实践,助力YOLOv10目标检测效果的实践,文中含全部代码、详细修改方式以及手撕结构图。助您轻松理解改进的方法。改进前和改进后的参数对比: 目录一CoordAtt二在YOLOv10中添加注意力CoordAtt的实践1整体修改......
  • 【YOLOv10改进[注意力]】在YOLOv10中使用注意力MLCA的实践+ 含全部代码和详细修改方式
    本文将进行在YOLOv10中添加注意力MLCA的实践,助力YOLOv10目标检测效果的实践,文中含全部代码、详细修改方式以及手撕结构图。助您轻松理解改进的方法。改进前和改进后的参数对比: 目录一MLCA二在YOLOv10中使用注意力MLCA的实践1整体修改......
  • [YOLOv10涨点改进:注意力魔改 | 轻量级的 Mixed Local Channel Attention (MLCA),加强通
    本文属于原创独家改进:一种轻量级的MixedLocalChannelAttention(MLCA)模块,该模块考虑通道信息和空间信息,并结合局部信息和全局信息以提高网络的表达效果1.YOLOv10介绍论文:[https://arxiv.org/pdf/2405.14458]代码:https://gitcode.com/THU-MIG/yolov10?utm_source=c......
  • 首途第三十三套清新简约卡片风格蓝紫渐变色短视频模板 | 苹果CMSV10主题
    下载地址:首途第三十三套清新简约卡片风格蓝紫渐变色短视频模板|苹果CMSV10主题首途第三十三套清新简约卡片风格蓝紫渐变色短视频模板|苹果CMSV10主题我们的简约风格,以纯洁的白色和深邃的紫色为主色调,为您提供了一种清新、时尚的浏览体验。在这个简洁而美丽的界面中,您可以......
  • 银河麒麟V10系统项目发布手把手教学
    第一步 安装及配置jdk创建一个目录用于存放安装包mkdir-p/usr/local/mytools上传jdk本次jdk用jdk-8u151版本演示rz解压到/usr/local目录tarzxvfjdk-8u151-linux-x64.tar.gz-C/usr/local/配置环境变量  切记!!修改jdk路径vi/etc/profile#将以下代码添加......
  • [蜻蜓固件] 创维M101海思MV100芯片卡刷固件分享,可救砖!!
    本固件是创维M101海思MV100芯片盒子,目前只测试了8188wifi芯片,其余未测试,不一定通刷,请看好盒子芯片及板型再进行刷机,刷机有风险。本固件默认使用乐家桌面,无线正常,可支持双端语音。盒子主板照片如下(不同主板切勿通刷,否则可能会打不开无线) 刷机方法:1、准备一个8G以上U盘,......
  • 中兴ZXV10 B863AV3.1-M2 线刷教程教学ROM下载
     中兴ZXV10B863AV3.1-M2线刷教程教学ROM下载 适用于:B863AV3.1-M2默认盒子桌面简洁纯净版,安卓9,网线版和WIFI版功能,下载后解压刷机包USB_Burning_Tool线刷,需要短接器和双公头usb线使用的是盒子桌面,多主题应用市场,有软件推送,栅格主题,win主题,简洁主题,教育主题,可上锁,自由......