服务器防文件上传手写waf

一、waf的目录结构,根据自己目录情况进行修改

二、创建文件夹以及文件

复制代码
sudo mkdir -p /www/server/waf-monitor  
sudo mkdir -p /www/server/waf-monitor/quarantine #创建文件夹
chmod 755 /www/server/waf-monitor #赋权

cd /www/server/waf-monitor/

touch waf-monitor.php   # 主脚本
touch waf-monitor.log   # 日志文件
touch waf-monitor.lock  # 锁文件

三、配置脚本内容,设置要监控的目录

脚本:链接:https://pan.quark.cn/s/373546cef157

四、权限设置命令

复制代码
# 设置目录所有权
sudo chown -R www:www /www/server/waf-monitor //我这用了宝塔挂着,所以我的用户是www,根据自己的用户修改

# 设置脚本权限
sudo chmod 750 /www/server/waf-monitor/waf-monitor.php

# 初始化日志文件
sudo touch /www/server/waf-monitor/{waf-monitor.log,waf-monitor.error.log}
sudo chown www:www /www/server/waf-monitor/*.log
sudo chmod 640 /www/server/waf-monitor/*.log

五、运行测试

复制代码
sudo -u www /usr/bin/php /www/server/waf-monitor/waf-monitor.php

新建一个文件就会被删除

六、设置开机自启

步骤 1:编辑 root 用户的 crontab
复制代码
crontab -e

步骤 2:添加启动命令

复制代码
@reboot /usr/bin/php /www/server/waf-monitor/waf-monitor.php > /www/server/waf-monitor/cron.log 2>&1 &

步骤 3:验证服务是否启动

复制代码
ps aux | grep waf-monitor
tail -f /www/server/waf-monitor/waf-monitor.log
相关推荐
Tim风声(网络工程师)3 小时前
不同射频对应不同mac地址(查找无线用户连接AP信息)
服务器·网络·tcp/ip·智能路由器·无线ap
ajassi20004 小时前
开源 C++ QT Widget 开发(十五)多媒体--音频播放
linux·c++·qt·开源
JosieBook5 小时前
【远程运维】Linux 远程连接 Windows 好用的软件:MobaXterm 实战指南
linux·运维·windows
文档搬运工5 小时前
Linux MInt启动速度的优化
linux
Broken Arrows5 小时前
Linux学习——管理网络安全(二十一)
linux·学习·web安全
Light606 小时前
领码方案|Linux 下 PLT → PDF 转换服务超级完整版:异步、权限、进度
linux·pdf·可观测性·异步队列·plt转pdf·权限治理·进度查询
鳄鱼杆6 小时前
服务器 | Docker应用开发与部署的实践以及阿里云镜像加速配置
服务器·阿里云·docker
羚羊角uou6 小时前
【Linux】命名管道
linux·运维·服务器
IT 小阿姨(数据库)7 小时前
PgSQL监控死元组和自动清理状态的SQL语句执行报错ERROR: division by zero原因分析和解决方法
linux·运维·数据库·sql·postgresql·centos
THMAIL7 小时前
量化股票从贫穷到财务自由之路 - 零基础搭建Python量化环境:Anaconda、Jupyter实战指南
linux·人工智能·python·深度学习·机器学习·金融