阅读视图

发现新文章,点击刷新页面。

本地实现HEXO文章AI摘要

五一假期结束啦!这五天啥也没干,就在宿舍敲代码,都快无聊死了,恰逢找到了一些免费API,就自己实现一个AI摘要吧!利用API生成摘要文本放在文章头部,再通过hexo进行渲染就好啦!

Nginx 集成 ModSecurity 实现 Web 应用防火墙功能

ModSecurity 是一个开源、跨平台的 Web 应用程序防火墙引擎,适用于 Apache 和 Nginx。具有强大的基于事件的编程语言,可抵御针对 Web 应用程序的一系列攻击,并允许进行 HTTP 流量监控、日志记录、实时分析。

安装步骤

首先,需要安装一些必要的依赖包,例如 libxml2/libpcre3/libapr1 等。可以通过包管理器完成,例如在 Debian 或 Ubuntu 系统上使用 apt

1
2
sudo apt update
sudo apt -y install libxml2 libxml2-dev libpcre3 libpcre3-dev libapr1 libapr1-dev libaprutil1 libaprutil1-dev

接着,从 GitHub 克隆 ModSecurity 源代码,编译安装:

1
2
3
4
5
6
git clone --recursive https://github.com/owasp-modsecurity/ModSecurity ModSecurity
cd ModSecurity
./build.sh
./configure
make
sudo make install

安装模块

然后,下载 Nginx ModSecurity 模块并编译 Nginx 以包含模块:

1
2
3
4
5
git clone https://github.com/owasp-modsecurity/ModSecurity-nginx.git
cd /path/to/nginx/source
./configure --add-module=/path/to/ModSecurity-nginx
make
sudo make install

在 Nginx 的配置文件中启用 ModSecurity 并指定规则文件。例如,在 nginx.conf 添加:

1
2
3
4
5
6
7
server {
modsecurity on;
location / {
root /var/www/html;
modsecurity_rules_file /etc/nginx/modsec/main.conf;
}
}

配置规则

可使用默认的 OWASP 核心规则集,这是一个广泛认可的标准规则集,专门用于检测和阻止 Web 应用程序攻击。克隆并将其配置到 ModSecurity 中:

1
2
git clone https://github.com/coreruleset/coreruleset.git /etc/nginx/modsec/coreruleset
cp /etc/nginx/modsec/coreruleset/crs-setup.conf.example /etc/nginx/modsec/coreruleset/crs-setup.conf

修改 /etc/nginx/modsec/main.conf 来包含配置:

1
2
Include /etc/nginx/modsec/coreruleset/crs-setup.conf
Include /etc/nginx/modsec/coreruleset/rules/*.conf

测试防御

最后,重启 Nginx 以应用更改:

1
sudo service nginx reload

可以使用以下命令测试防护功能,如返回 403 Forbidden,说明防护已经生效,此处匹配规则是 User-Agent 中不能包含漏洞扫描器名字:

1
curl -H "User-Agent: Nikto" http://IP

twikoo仿段落评论,实现快速评论功能

先前twikoo的讨论群中提出了一个功能,类似于小说之类的段落评论功能,我思考了一下,感觉这个功能很有意思,评论起来比评论区快多了,于是用我为数不多的JS知识,尝试实现了一下,没想到还真让我给搞出来了。
❌