2团
Published on 2025-11-28 / 1 Visits
0
0

网站2025年Nginx日志分析报告

网站介绍

2团日志是我的个人博客,自更新域名后已稳定运行近一年,主要记录技术文章、开发经验与个人生活随想。近期突发奇想,利用Nginx日志进行了一次简单的运营分析,试图挖掘一些有趣的数据。

在分析中,我发现AI Bot的访问量与种类正呈上升趋势。

尤为有趣的是,我本人既是Claude的付费用户,同时也成为了其数据爬取的对象。


一、数据总览

  • 总访问请求: 416,179 次(已排除管理员IP)

  • 检测到的攻击: 37,392 次

  • 攻击IP数量: 2087 个

  • 黑名单拦截IP: 11530 个

  • 独立访问IP: 39036 个

  • 正常访问用户数: 19874 个

说明:

  • 文中所有IP地址已脱敏处理(保留前两段,后两段用hash值替换)

  • 正常访问用户: 指非Bot、非攻击的真实用户访问,按独立IP统计

核心发现

流量构成:

  • 正常用户访问: 42.6% (177,375次)

  • Bot流量(含搜索引擎/SEO/AI等): 47.1% (196,199次)

  • 无UA请求: 10.2% (42,605次)

  • 网站Bot流量是真实用户的 1.1倍

安全态势:

  • 检测到 37,392 次攻击尝试,占总流量的 9.0%

  • 黑名单系统已拦截 11,530 个恶意IP,有效保护网站安全

AI爬虫活动:

  • 识别到 29,228 次AI爬虫访问,主要来自GPTBot、ClaudeBot、Bytespider等

  • AI爬虫活跃度呈波动趋势,反映AI技术发展对内容获取的需求

二、访问者类型分布

2.1 访问者分类统计

类型

请求数

占比

判断标准

正常用户

177,375

42.62%

User-Agent包含Mozilla和AppleWebKit特征,模拟真实浏览器行为

未知Bot

69,511

16.70%

未匹配已知Bot特征,但不符合正常浏览器特征

搜索引擎

45,785

11.00%

搜索引擎爬虫,用于索引网页内容以提供搜索服务

无UA请求

42,605

10.24%

请求中不包含User-Agent字段,通常是自动化工具

SEO爬虫

37,877

9.10%

SEO分析工具,用于网站排名分析和竞争对手研究

AI爬虫

29,228

7.02%

AI公司爬虫,用于收集训练数据或提供AI服务

恶意Bot

9,635

2.32%

自动化工具发起的请求,通常用于漏洞扫描或攻击

监控扫描器

4,163

1.00%

安全研究机构的互联网设备扫描工具

2.2 Bot识别规则说明

SEO爬虫:

  • 描述: SEO分析工具,用于网站排名分析和竞争对手研究

  • 识别特征: User-Agent中包含以下关键词之一

    1. SemrushBot

    2. AhrefsBot

    3. MJ12bot

    4. DotBot

    5. BLEXBot

搜索引擎:

  • 描述: 搜索引擎爬虫,用于索引网页内容以提供搜索服务

  • 识别特征: User-Agent中包含以下关键词之一

    1. Googlebot

    2. bingbot

    3. Baiduspider

    4. YandexBot

    5. Sogou

    6. YisouSpider

AI爬虫:

  • 描述: AI公司爬虫,用于收集训练数据或提供AI服务

  • 识别特征: User-Agent中包含以下关键词之一

    1. GPTBot

    2. ChatGPT

    3. ClaudeBot

    4. anthropic-ai

    5. PerplexityBot

    6. Bytespider

    7. Meta-ExternalAgent

监控扫描器:

  • 描述: 安全研究机构的互联网设备扫描工具

  • 识别特征: User-Agent中包含以下关键词之一

    1. CensysInspect

    2. Shodan

    3. Nmap

    4. masscan

    5. ZmEu

恶意Bot:

  • 描述: 自动化工具发起的请求,通常用于漏洞扫描或攻击

  • 识别特征: User-Agent中包含以下关键词之一

    1. python-requests

    2. curl/

    3. wget

    4. Go-http-client

    5. Scanner

三、时间序列分析

3.1 按月流量统计

月份

总请求

正常访问用户

Bot请求

攻击

黑名单拦截

错误

2025-01

10,479

2,821

4,059

1051

3,119

12,027

2025-02

32,185

10,001

13,450

2040

8,447

29,834

2025-03

44,914

20,129

11,639

6055

18,408

43,869

2025-04

38,184

15,077

12,838

2468

10,231

37,597

2025-05

32,725

12,443

10,347

3097

10,676

36,812

2025-06

42,886

18,162

10,420

4307

17,142

51,077

2025-07

52,106

18,536

9,303

6449

28,651

58,911

2025-08

45,535

17,358

13,398

2818

19,096

49,161

2025-09

35,870

12,346

10,288

2192

13,885

41,895

2025-10

38,988

11,094

12,285

2058

16,562

45,221

2025-11

42,307

19,497

9,023

1672

13,763

39,189

3.2 按日流量统计(最近30天)

日期

总请求

正常访问用户

Bot请求

攻击

黑名单拦截

错误

2025-10-30

2,075

457

1,294

13

345

972

2025-10-31

1,044

336

381

30

329

1,237

2025-11-01

1,006

210

443

71

335

1,246

2025-11-02

1,372

458

471

28

569

1,430

2025-11-03

2,117

465

652

36

531

2,279

2025-11-04

2,479

1,521

401

30

583

1,529

2025-11-05

2,301

1,684

300

66

421

1,179

2025-11-06

1,110

480

340

24

305

870

2025-11-07

889

218

296

57

418

904

2025-11-08

1,519

439

381

32

606

1,281

2025-11-09

1,479

357

475

89

632

1,345

2025-11-10

2,659

1,567

593

20

502

1,140

2025-11-11

1,064

542

291

17

260

1,322

2025-11-12

1,609

460

310

54

756

1,508

2025-11-13

2,310

1,406

226

111

517

1,417

2025-11-14

1,339

600

251

17

533

1,488

2025-11-15

1,294

351

230

74

793

1,541

2025-11-16

851

317

229

41

328

865

2025-11-17

1,163

557

202

33

357

1,943

2025-11-18

1,663

556

254

41

391

2,008

2025-11-19

1,288

664

277

31

363

1,178

2025-11-20

1,748

730

404

121

664

1,854

2025-11-21

1,442

893

312

19

357

941

2025-11-22

1,671

797

167

189

836

1,571

2025-11-23

1,431

557

369

32

346

1,003

2025-11-24

1,613

986

255

172

786

1,948

2025-11-25

1,133

599

233

63

227

1,491

2025-11-26

1,235

529

267

111

458

1,499

2025-11-27

1,878

1,119

327

50

579

1,720

2025-11-28

644

435

67

43

310

689

关键时间节点:

  • 整体流量高峰月: 2025-07 (52,106 请求)

  • 用户活跃高峰月: 2025-03 (20,129 用户请求)

  • 攻击高峰月: 2025-07 (6449 次攻击)

  • 黑名单拦截高峰月: 2025-07 (28,651 次拦截)

3.3 周访问模式分析(高流量时段TOP 20)

时间段

总请求

正常访问用户

Bot

用户占比

周一 22:00

7,232

4,743

622

65.6%

周日 11:00

5,361

2,492

638

46.5%

周一 21:00

5,299

3,331

660

62.9%

周一 18:00

4,863

2,850

1,499

58.6%

周三 05:00

4,666

2,309

583

49.5%

周五 06:00

4,425

2,475

705

55.9%

周四 16:00

4,192

907

822

21.6%

周日 13:00

4,135

2,082

781

50.4%

周四 10:00

4,049

2,617

874

64.6%

周一 11:00

3,973

2,012

849

50.6%

周日 09:00

3,947

1,564

662

39.6%

周日 22:00

3,916

1,721

773

43.9%

周四 11:00

3,795

1,346

743

35.5%

周四 01:00

3,761

2,036

592

54.1%

周三 09:00

3,579

1,271

1,135

35.5%

周一 10:00

3,561

2,119

763

59.5%

周二 14:00

3,535

2,079

531

58.8%

周一 01:00

3,522

1,354

650

38.4%

周日 05:00

3,490

1,595

728

45.7%

周五 14:00

3,399

1,414

1,036

41.6%

四、Bot行为深度分析

4.1 SEO爬虫

  • 总请求数: 37,877

  • 独立IP数: 2296

  • 平均频率: 16.5 请求/IP

月度活跃度分布:

  • 2025-04: 5,343 请求

  • 2025-08: 4,613 请求

  • 2025-05: 4,592 请求

  • 2025-07: 4,457 请求

  • 2025-06: 3,800 请求

  • 2025-09: 3,721 请求

  • 2025-10: 3,240 请求

  • 2025-03: 3,117 请求

  • 2025-02: 2,316 请求

  • 2025-11: 1,919 请求

  • 2025-01: 759 请求

最常访问路径(TOP 10):

User-Agent示例:

Mozilla/5.0 (compatible; DotBot/1.2; +https://opensiteexplorer.org/dotbot; help@moz.com)
Mozilla/5.0 (compatible; MJ12bot/v2.0.2; http://mj12bot.com/)

4.2 搜索引擎

  • 总请求数: 45,783

  • 独立IP数: 4111

  • 平均频率: 11.1 请求/IP

月度活跃度分布:

  • 2025-03: 6,570 请求

  • 2025-10: 5,587 请求

  • 2025-11: 5,526 请求

  • 2025-04: 5,403 请求

  • 2025-02: 5,391 请求

  • 2025-08: 3,508 请求

  • 2025-06: 3,366 请求

  • 2025-09: 3,297 请求

  • 2025-05: 3,017 请求

  • 2025-07: 2,293 请求

  • 2025-01: 1,825 请求

最常访问路径(TOP 10):

User-Agent示例:

Mozilla/5.0 (iPhone; CPU iPhone OS 10_3 like Mac OS X) AppleWebKit/602.1.50 (KHTML, like Gecko) CriO
Baiduspider ( http://www.baidu.com/search/spider.htm)

4.3 AI爬虫

  • 总请求数: 29,228

  • 独立IP数: 1989

  • 平均频率: 14.7 请求/IP

月度活跃度分布:

  • 2025-02: 5,529 请求

  • 2025-08: 4,766 请求

  • 2025-10: 2,943 请求

  • 2025-09: 2,846 请求

  • 2025-06: 2,790 请求

  • 2025-05: 2,447 请求

  • 2025-07: 2,066 请求

  • 2025-04: 1,767 请求

  • 2025-03: 1,655 请求

  • 2025-01: 1,368 请求

  • 2025-11: 1,051 请求

最常访问路径(TOP 10):

User-Agent示例:

Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.2; +https://openai.com/gptbo
Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; GPTBot/1.0; +https://openai.com/gptbo

4.4 监控扫描器

  • 总请求数: 4,162

  • 独立IP数: 496

  • 平均频率: 8.4 请求/IP

月度活跃度分布:

  • 2025-11: 527 请求

  • 2025-10: 515 请求

  • 2025-08: 511 请求

  • 2025-07: 487 请求

  • 2025-06: 464 请求

  • 2025-09: 424 请求

  • 2025-04: 325 请求

  • 2025-03: 297 请求

  • 2025-05: 291 请求

  • 2025-02: 214 请求

  • 2025-01: 107 请求

最常访问路径(TOP 10):

User-Agent示例:

Mozilla/5.0 (compatible; Nmap Scripting Engine; https://nmap.org/book/nse.html)
masscan/1.3 (https://github.com/robertdavidgraham/masscan)

五、AI爬虫趋势分析

5.1 正常访问用户 vs AI爬虫对比

指标

正常访问用户

AI爬虫

比例

请求总数

157,464

29,228

5.39:1

独立IP数

19874

1989

9.99:1

平均请求/IP

7.9

14.7

-

流量占比

37.84%

7.02%

-

洞察:

  • 正常访问用户流量是AI爬虫的 5.4倍,网站主要服务真实用户

5.2 AI爬虫时间线分析

随着AI技术的发展,AI爬虫活动呈现以下趋势:

AI爬虫月度活跃趋势:

月份

AI爬虫请求数

占当月总请求比例

增长率

2025-01

1,368

13.05%

-

2025-02

5,529

17.18%

+304.2%

2025-03

1,655

3.68%

-70.1%

2025-04

1,767

4.63%

+6.8%

2025-05

2,447

7.48%

+38.5%

2025-06

2,790

6.51%

+14.0%

2025-07

2,066

3.96%

-25.9%

2025-08

4,766

10.47%

+130.7%

2025-09

2,846

7.93%

-40.3%

2025-10

2,943

7.55%

+3.4%

2025-11

1,051

2.48%

-64.3%

5.3 AI爬虫类型分布

各类AI爬虫请求分布:

AI爬虫类型

请求数

占比

说明

Bytespider

14,484

49.6%

字节跳动爬虫,可能用于豆包等AI产品

GPTBot

6,972

23.9%

OpenAI官方爬虫,用于训练GPT模型

ClaudeBot

4,159

14.2%

Anthropic官方爬虫,用于训练Claude模型

Meta-ExternalAgent

3,613

12.4%

Meta(Facebook)AI爬虫,用于Llama等模型

AI爬虫发展趋势洞察:

  • 主流AI爬虫: Bytespider,占AI爬虫流量的 49.6%

  • 整体趋势: AI爬虫活动相对稳定

六、爬虫工具技术栈分析

6.1 爬虫工具编程语言分布

分析恶意Bot和未知Bot使用的工具和编程语言:

工具/语言

请求数

占比

说明

OTHER

56,007

84.5%

其他自定义客户端或工具

GO

4,693

7.1%

Go语言爬虫,特征:包含Go-http-client/golang/fasthttp关键字

PYTHON

3,196

4.8%

Python语言爬虫,特征:包含python/requests/urllib/scrapy等关键字

CURL

2,251

3.4%

curl命令行工具,特征:包含curl/关键字

JAVA

124

0.2%

Java语言爬虫,特征:包含java/apache-httpclient/okhttp关键字

NODEJS

18

0.0%

Node.js爬虫,特征:包含node/axios关键字

WGET

11

0.0%

wget下载工具,特征:包含wget关键字

主流爬虫工具对比分析:

编程语言爬虫:

  • Python vs Go 比例: 0.68:1

  • Python和Go势均力敌

  • Python优势: 生态丰富,开发快速(requests/scrapy/selenium)

  • Go优势: 高性能,并发能力强,适合大规模扫描

命令行工具:

  • curl: 2,251次 - 灵活的HTTP客户端,支持多种协议

  • wget: 11次 - 专注于文件下载的工具

  • 命令行工具合计占比: 3.4%

6.2 爬虫工具详细分类

Bot类型

Python

Go

curl

wget

Java

Node.js

Unknown

Other

总计

恶意Bot

1,708

4,544

2,251

11

0

0

0

579

9,093

未知Bot

1,488

149

0

0

124

18

0

55,428

57,207

七、正常访问用户行为分析

用户概况:

根据网站统计数据,真实访问用户数量相对较少,以下是基本概况:

  • 识别到正常访问用户IP: 19,874 个(已排除管理员和Bot)

  • 正常访问用户总请求数: 177,375

  • 平均每用户请求数: 7.9

  • 流量占比: 42.62%

用户活跃度分布:

  • 轻度用户 (< 10次): 18,186 人 (91.5%)

  • 中度用户 (10-49次): 1,358 人 (6.8%)

  • 重度用户 (≥ 50次): 330 人 (1.7%)

分析结论: 网站主要流量来自Bot和爬虫(196,199次, 47.1%),真实用户访问量较少。

7.1 周访问模式分析

分析全年日志,统计一周中每天访问最高峰和次高峰时段:

正常访问用户访问模式:

星期

最高峰时段

访问量

次高峰时段

访问量

周一

22:00-22:59

4,743

21:00-21:59

3,331

周二

14:00-14:59

2,079

10:00-10:59

1,877

周三

05:00-05:59

2,309

14:00-14:59

1,741

周四

10:00-10:59

2,617

01:00-01:59

2,036

周五

06:00-06:59

2,475

09:00-09:59

1,683

周六

12:00-12:59

1,138

00:00-00:59

995

周日

11:00-11:59

2,492

13:00-13:59

2,082

Bot访问模式:

星期

最高峰时段

访问量

次高峰时段

访问量

周一

18:00-18:59

1,499

11:00-11:59

849

周二

10:00-10:59

948

09:00-09:59

877

周三

09:00-09:59

1,135

10:00-10:59

975

周四

18:00-18:59

1,302

23:00-23:59

1,029

周五

11:00-11:59

1,120

14:00-14:59

1,036

周六

04:00-04:59

838

22:00-22:59

796

周日

12:00-12:59

1,136

08:00-08:59

949

八、安全威胁分析

8.1 攻击类型分布及判断标准

攻击类型

次数

占比

判断标准

信息泄露探测

27,393

73.3%

探测敏感配置文件,如环境变量、Git仓库、IDE配置等

命令注入

4,521

12.1%

尝试执行系统命令,如Shell脚本、PHP eval函数等

CVE漏洞利用

4,104

11.0%

针对已知CVE漏洞的利用尝试,如Laravel、PHPUnit、Solr等框架漏洞

路径遍历

726

1.9%

使用…/等方式尝试访问上级目录文件

暴力破解

609

1.6%

大量尝试登录页面,可能进行密码暴力破解

SQL注入

38

0.1%

通过构造SQL语句尝试访问或操纵数据库

XSS攻击

1

0.0%

注入恶意脚本代码,尝试在用户浏览器执行

8.2 攻击特征详细说明

命令注入 (4,521 次)

  • 描述: 尝试执行系统命令,如Shell脚本、PHP eval函数等

  • 检测模式: 请求路径或User-Agent匹配以下特征之一

    1. /GponForm/diag_Form

    2. eval-stdin.php

    3. ;.*shs+

    4. ${.*}

信息泄露探测 (27,393 次)

  • 描述: 探测敏感配置文件,如环境变量、Git仓库、IDE配置等

  • 检测模式: 请求路径或User-Agent匹配以下特征之一

    1. /.env

    2. /.git/

    3. /.DS_Store

    4. /.vscode/

    5. /config.json

    6. /actuator/env

SQL注入 (38 次)

  • 描述: 通过构造SQL语句尝试访问或操纵数据库

  • 检测模式: 请求路径或User-Agent匹配以下特征之一

    1. '.*or.*'.*=.*'

    2. union.*select

    3. select.*from

XSS攻击 (1 次)

  • 描述: 注入恶意脚本代码,尝试在用户浏览器执行

  • 检测模式: 请求路径或User-Agent匹配以下特征之一

    1. <script

    2. javascript:

    3. onerror=

    4. onload=

路径遍历 (726 次)

  • 描述: 使用…/等方式尝试访问上级目录文件

  • 检测模式: 请求路径或User-Agent匹配以下特征之一

    1. ../..

    2. %2e%2e

CVE漏洞利用 (4,104 次)

  • 描述: 针对已知CVE漏洞的利用尝试,如Laravel、PHPUnit、Solr等框架漏洞

  • 检测模式: 请求路径或User-Agent匹配以下特征之一

    1. /vendor/phpunit/phpunit

    2. /_ignition/execute-solution

    3. /telescope/requests

    4. /debug/default/view

    5. /solr/admin

暴力破解 (609 次)

  • 描述: 大量尝试登录页面,可能进行密码暴力破解

  • 检测模式: 请求路径或User-Agent匹配以下特征之一

    1. /wp-login.php

    2. /admin/login

    3. /login.php

8.3 黑名单拦截分析

OpenResty黑名单脚本统计:

  • 被拦截IP总数: 11530 个

  • 拦截请求总数: 159980 次

  • 拦截标准: 返回403状态码的非正常业务请求

九、关键洞察与发现

9.1 流量构成分析

  • 正常用户访问: 42.6% (177,375次) - 核心价值流量,来自真实用户浏览

  • Bot流量: 47.1% (196,199次) - 主要是合法的SEO和搜索引擎爬虫

  • 无UA请求: 10.2% (42,605次) - 自动化工具或脚本

  • 攻击流量: 9.0% (37,392次) - 需重点防护的恶意请求

  • 黑名单拦截IP比例: 29.5% - OpenResty脚本有效拦截

9.2 安全防护效果

  • 黑名单脚本共拦截 159,980 次恶意请求

  • 覆盖 11530 个恶意IP

9.3 用户行为特征

  • 平均每用户请求数: 7.9

  • 轻度用户主导: 91.5% 用户访问少于10次

  • 重度用户贡献: 1.7% 用户产生大量互动

9.4 Bot活动特征

  • 搜索引擎: 平均每IP请求 11.1 次

  • SEO爬虫: 平均每IP请求 16.5 次

  • AI爬虫: 平均每IP请求 14.7 次

  • 监控扫描器: 平均每IP请求 8.4 次


Comment