< 自用文儿 > 下载 MaxMind GeoIP Databases 对攻击的 IP 做 地理分析 ...

打印 上一主题 下一主题

主题 1768|帖子 1768|积分 5304

起因

两个 VPM/VPS,安装了 fail2ban 去拦截暗码穷举攻击。每天的纪录都在增长,从前复制屏幕输出就行,一屏的内容还容易粘贴出来的。昨天已颠末 500 条,好奇 fail2ban 是怎样存储这些内容的?就发现它在使用 SQLite3 数据库,有数据库就方便多了。


IP 地理分析实践

1. 从那里下载? 地理位置 IP 数据

我用这个链接: https://www.maxmind.com/en/accounts/1121608/geoip/downloads
先容:

每个连接到互联网的设备都会被分配一个独一无二的 IP 地址,Geo IP 数据库通过收集这些而成,建立起 IP 地址与地理位置之间的对应关系。

Geo IP 数据的应用:



  • 根据用户的地理位置,实现本地化内容。
  • 分析用户的 IP 地址位置,可以辨认出欺骗行为。
  • 根据用户的地理位置,精准广告投放。像百度、美团这些大公司,它们都在干这个,特善于。
  • 分析用户地理位置,可以推算出地域特性,可做为市场调研的数据,向当局、贸易提供决策提数据支持。
  • 辨认标注出恶意 IP 地址,可以采取相应的安全措施。好比 fail2ban 
  • 中华的伟大防火墙也使用 IP 来过滤
  • 应用有很多,不编了。

免费的地理IP数据库

对个人使用而言,国外有几家公司或机构提供 Lite 版的数据库下载。


  • MaxMind GeoLite2
  • P2Location LITE
  • DB-IP Lite
有的需要注册,才能下载使用。我找时, MaxMind 在第一个,顺利注册并下载,就没再看其它的。

2. Fail2Ban

应用先容 :

1)fail2ban 数据库

安装并配置后,数据库文件在: /var/lib/fail2ban/fail2ban.sqlite3
如果在 Ubuntu 中使用数据库,需要安装 sqlite3
  1. apt update
  2. apt install sqlite3
复制代码
打开 fail2ban 数据库:
  1. sqlite3 /var/lib/fail2ban/fail2ban.sqlite3
复制代码
数据库的中结构查看:
a. 哪些表:

  1. sqlite> SELECT name FROM sqlite_master WHERE type='table';
  2. fail2banDb
  3. jails
  4. logs
  5. bans
  6. bips
  7. sqlite>
复制代码
b. 各个表的,纪录个数:

  1. SELECT 'jails' AS table_name, COUNT(*) AS row_count FROM jails
  2. UNION ALL
  3. SELECT 'logs' AS table_name, COUNT(*) AS row_count FROM logs
  4. UNION ALL
  5. SELECT 'bans' AS table_name, COUNT(*) AS row_count FROM bans
  6. UNION ALL
  7. SELECT 'bips' AS table_name, COUNT(*) AS row_count FROM bips;
复制代码
  1. 结果:
  2. jails|3
  3. logs|5
  4. bans|80
  5. bips|592
复制代码
c. 看来 f2bstate 输出用的 bips 表


我最早用的 bans 表内容,在 DashBoard 中显示。
2)MM GeoLite2 数据库

注册后就可以到下载界面:

分类:

三种精度: ASN ,City,Counrty
数据调用方式: APIs ,数据库,CSV
 
我用的版本是 GeoLite2-City_20250131 ,数据库不大,文件不到 56MB。中国区的数据是暗昧的,你知道的原因,只有国家名。

使用:

GeoLite2-City.mmdb 可以在 Pyhone 用 geoip2 
  1. pip install geoip2
复制代码
例,打开数据库:
  1. reader = geoip2.database.Reader('GeoLite2-City.mmdb')
复制代码
详细看:
Geolocate an IP address using Databases | MaxMind Developer Portal
或者问 AI 

3. 应用 Dashboard 

工作原理:
从服务器上用 scp 下载 fail2ban 数据库,用 sqlite 找出 fail2ban.bips 表中的 ip 列内容,在 GeIP 数据库中找到对应的地理位置,分析并统计,最后显示在页面上。
附带功能是,显示安装 fail2ban 后的纪录天数 “ Uptime (Days)”,因为要统计 2 台主机,设计在主页右上角有2个按键来切换主机。
如下:



很好奇:伊朗排第五


AI 期间,还用暗码攻击?



















免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

盛世宏图

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表