CentOS7开启Firewalld防火墙日志记录获取被拦截的IP

0    42    1

👉 本文共约1469个字,系统预计阅读时间或需6分钟。

之前有写过CentOS7下如何利用Firewalld防火墙实现IP+Port细粒度访问控制

问题场景:

在实际生产环境时使用该方法进行ES数据库白名单访问控制,但遇到业务侧反馈无法访问到ES数据库端口,需要加入到白名单,但业务侧用的IP 业务侧无法准确给出

于是通过如下面的方法解决这个问题

1、firewalld的默认配置是不记录日志

可以看到默认是off状态

可以看到LogDenied=off :即不记录被拒绝的包

图片

(图片可点击放大查看)

2、可以通过修改配置文件,使Firewalld防火墙记录日志

从而通过防火墙记录的日志,查询出拒绝的非法ip

具体步骤如下

set-log-denied设置为all,表示记录所有被拒的包

图片

(图片可点击放大查看)

3、通过日志来判断出被拒绝的IP

由于业务侧反馈无法访问到ES数据库端口,业务侧无法判断出自己的IP地址 这时就该方法在Firewalld上开启Log记录,通过日志来判断出被拒绝的IP

进行nc端口测试,触发日志(或者让业务侧复现重试一次)

图片

(图片可点击放大查看)

图片

(图片可点击放大查看)

或者

图片

(图片可点击放大查看)

4、根据最小化原则,给这个IP开放ES的端口

5、测试可以正常访问ES 9200端口

图片

(图片可点击放大查看)

图片

本人提供Oracle、MySQL、PG等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!

(图片可点击放大查看)

接下来就可以关闭Firewalld的日志记录

扩展

  • 1、开启日志记录,可以将kernel的日志使用rsyslog发送到graylog

  • 2、当异常IP尝试去访问ES数据库,通过配置GraylogAlert将所匹配到的firewalld拦截日志进行告警推送

    图片

    (图片可点击放大查看)

这里就不详细介绍如何实现,可以参考之前的文章

参考

https://mp.weixin.qq.com/s/m6K11TqXKUChfJ9EAkYZ8w

标签:

头像

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

10 + 5 =

 

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部
返回顶部