目录
一、问题描述
fail2ban 用了好几年,第一次看见这样的打印,大家遇到过吗?
因为第一次遇见,还一次性出现这么多,
所以我比较重视,到处找资料,想知道其出处和好坏。
因此有了下面整理的资料。
二、为什么会有这样的日志?
这是由 fail2ban 的配置文件 /etc/fail2ban/jail.local 中的 usedns 控制的。
其默认值是 usedns = warn 。
所以,日志中有对应处理的信息。
具体如下图:
翻译出来就是:
usedns
用来指定 jails 是否应该信任日志中的主机名(域名),
是否当执行反向域名解析时发出警告,或是忽略日志中的所有主机名。
yes:如果遇到主机名,将执行反向DNS查找。
warn:如果遇到主机名,将执行反向DNS查找,但它将被记录为警告。
no:如果遇到主机名将不被用于ban,但它将以info级别记录在日志中。
三、这个日志是好还是坏,需要处理吗?
根据上方资料提供的解释如下:
It's basically to prevent people manipulating PTR record of their attack IPs to inject false values in your logs.
【翻译】
这基本上是为了防止,攻击者操纵他们的攻击IP的PTR记录,将PTR记录改成错误信息,进而在你的日志中注入错误的值。
The solution is to set all services not to do reverse DNS lookups and instead to log IP addresses only.
【翻译】
解决方案是设置所有的服务都不允许反向域名解析,而是仅记录IP地址。
The warning given by fail2ban (Determined IP using DNS Lookup) indicates that some service is logging hostnames.
【翻译】
fail2ban(使用DNS查找确定IP)发出的警告表明某些服务正在记录主机名。
The best solution is to determine which service that is, and disable DNS lookups for it.
【翻译】
最好的办法是针对性处理,设置指定服务不允许反向域名解析。
Setting usedns = no stops the warnings and will prevent blocking of spoofed PTR networks,
but leaves the service that is logging hostnames completely unprotected by fail2ban.
【翻译】
设置 usedns = no ,
好处是,停止警告,并将防止伪造的 PTR 网络攻击阻塞。
坏处是,记录主机名的服务完全没有受到 fail2ban 保护。
四、我的解决方案
试一试最简单的方法:
在 /etc/fail2ban/jail.loca 中,设置 usedns = no 。
注:更改配置文件后,需要重启
sudo service fail2ban restart
新的日志打印如图:
【20231027 此处待完善,暂时还没有看到最新内容,后期补上】
五、补充知识点:PTR
在网络通信中,"PTR" 通常指的是 "Pointer Record"(指针记录)。
PTR 记录是一种用于将 IP 地址映射到域名或主机名的 DNS 记录类型。
它的作用与标准的 DNS 记录类型 "A" 记录(Address Record)相反,
后者用于将域名映射到 IP 地址。
具体而言,PTR 记录用于进行反向 DNS 查询,即通过已知的 IP 地址查找对应的域名或主机名。
这在网络管理和安全领域中经常用于确定 IP 地址的所有者或服务器名称。
例如,通过 PTR 记录,您可以将某个服务器的 IP 地址(例如 192.168.1.1)转换为域名(例如 server.example.com)。
PTR 记录对于网络管理和诊断非常有用,同时也在邮件服务器配置中用于验证发件服务器的合法性,以减少垃圾邮件和欺骗性的电子邮件。
【注】
正向地址解析:域名解析到IP地址。
反向地址解析:IP地址到域名解析。
我是程序员娟娟,
致力将工作中遇到的问题和解决方案记录下来,
分享给更多需要的同行。
如果对你有帮助,不妨点个关注吧!
关于英语翻译,我理解有误的,请大家提出点评。谢谢啦!