温馨提示×

如何用Nginx日志分析流量来源

小樊
65
2025-04-19 16:22:18
栏目: 编程语言

Nginx日志记录了网站所有访问者的信息,包括正常访客和恶意请求,对于分析流量来源至关重要。以下是使用Nginx日志分析流量来源的方法:

日志分析流程

  • 统计:对数据进行基本处理,如请求IP统计、访问地址统计、HTTP状态码统计等。可以使用Excel或Python脚本进行统计。
  • 威胁发现
    • 关键字过滤:查找请求中携带的关键字,如scriptselectfromechobash.sh等,查看异常请求。
    • 行为分析:观察特定IP的行为,如查询IP的威胁情报,某个IP登录了多个账号等。
  • 报告撰写:在报告中重点体现某个IP或某些IP的攻击画像,确定攻击行为。

使用Clickhouse进行Nginx访问日志分析

  • Nginx日志格式:推荐使用以下格式的Nginx日志,以便更好地满足分析场景:
log_format main '$remote_addr - $remote_user [$time_local] '
                '"$request" $status $body_bytes_sent '
                '"$http_referer" "$http_user_agent" '
                '$request_length $request_time';
  • 数据采集与存储:使用日志服务(如帆一日志服务)采集和配置Nginx日志,并存储于ElasticSearch和Clickhouse。
  • 数据分析
    • 使用Clickhouse SQL语法快速分析Nginx日志。
    • 创建可视化dashboard,通过拖拉拽方式进行快速分析。
    • 使用物化视图预聚合数据,进行复杂查询。

威胁情报查询

  • 查找请求IP相关的威胁情报信息,判断是否为恶意IP。
  • 观察请求中的UA标识,判断是否为恶意访问。
  • 分析IP前的一些请求行为,发现是否存在恶意攻击前的撞库攻击。

通过上述方法,可以有效地分析Nginx日志,了解流量来源,及时发现并应对潜在的安全威胁。

0