前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Graylog4.2+GeoIP2获取SSH暴力破解攻击者IP的地理位置信息

Graylog4.2+GeoIP2获取SSH暴力破解攻击者IP的地理位置信息

作者头像
yuanfan2012
发布2021-11-25 15:01:47
发布2021-11-25 15:01:47
1.2K00
代码可运行
举报
文章被收录于专栏:WalkingCloudWalkingCloud
运行总次数:0
代码可运行

场景说明

当云服务器位于公网时,并开放了SSH端口,会经常受到SSH暴力破解攻击

通过rsyslog转发云服务器系统日志到GrayLog进行日志分析系统安全日志,结合GeoIP2地址数据库就可以获取SSH暴力破解攻击者IP的地理位置信息

(图片可点击放大查看)

准备条件

1、GrayLog的Marketplace中下载SSH日志Content Pack

https://github.com/xkill/graylog_4.1_ssh

(图片可点击放大查看)

(图片可点击放大查看)

(图片可点击放大查看)

(图片可点击放大查看)

2、GeoIP2 Databases

GeoIP的数据库文件

(图片可点击放大查看)

具体实现的操作方法

1、上传GeoIP地址库文件

GeoLite2-City_20211116.tar.gz文件中GeoLite2-City.mmdb上传到GrayLog服务器的/etc/graylog/server目录中

(图片可点击放大查看)

2、启用GeoIP Resolver

system/configurations中最右下方Geo-Location Processor中 启用Geo-Location Processor

(图片可点击放大查看)

并在Message Processors Configuration中将GeoIP Resolver的顺序放在最下面 拖拽即可

(图片可点击放大查看)

(图片可点击放大查看)

3、上传并安装graylog_4.1_ssh-main-content-pack

(图片可点击放大查看)

(图片可点击放大查看)

4、修改Pipeline SSH的extract_ssh_fields

(图片可点击放大查看)

(图片可点击放大查看)

语法为第三行为has_field("message")

代码语言:javascript
代码运行次数:0
复制
rule "extract_ssh_fields"
when
     has_field("message")
then
    let msg = to_string($message.message);
    let msg2 = regex_replace("Invalid user", msg, "Invalid user by invalid user");
    let parsed = grok(pattern: "%{SSH}", value: msg2, only_named_captures: true);
    set_fields(parsed);
    rename_field("ssh_rip","remote_addr");
    rename_field("ssh_username","username");
end

保存并应用

(图片可点击放大查看)

5、模拟公网IP测试SSH登录失败

这里由于我在内网服务器上操作,可以ifconfig ens192:1起虚拟IP进行模拟

(图片可点击放大查看)

6、查看效果

可以在SSH Dashboard的地图中看到效果

(图片可点击放大查看)

(图片可点击放大查看)

当然,日志分析只是一方面,最重要还是要对SSH进行安全加固

1、云控制台配置安全组规则只允许运维主机访问SSH

2、Fail2ban工具实现动态阻断SSH暴力破解攻击

3、使用TCPwrapper进行SSH登录IP黑白名单

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-11-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 WalkingCloud 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 准备条件
    • 1、GrayLog的Marketplace中下载SSH日志Content Pack
    • 2、GeoIP2 Databases
  • 具体实现的操作方法
    • 1、上传GeoIP地址库文件
    • 2、启用GeoIP Resolver
    • 3、上传并安装graylog_4.1_ssh-main-content-pack
    • 4、修改Pipeline SSH的extract_ssh_fields
    • 5、模拟公网IP测试SSH登录失败
    • 6、查看效果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档