smtp 黑客尝试且日志中没有 IP

smtp 黑客尝试且日志中没有 IP

服务器受到 smtp 登录攻击,但防火墙无法禁止它们,因为日志中没有 IP...就像这样var/日志/消息:

Mar 13 16:00:05 sunucu saslauthd[1484]: do_auth         : auth failure: [user=admin] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
Mar 13 16:00:07 sunucu saslauthd[1483]: do_auth         : auth failure: [user=admin] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
Mar 13 16:00:09 sunucu saslauthd[1485]: do_auth         : auth failure: [user=admin] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
Mar 13 16:00:11 sunucu saslauthd[1482]: do_auth         : auth failure: [user=admin] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
Mar 13 16:00:12 sunucu saslauthd[1484]: do_auth         : auth failure: [user=admin] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
Mar 13 16:00:15 sunucu saslauthd[1482]: do_auth         : auth failure: [user=admin] [service=smtp] [realm=] [mech=pam] [reason=PAM auth error]
...
...

软件版本:

Operating system    CentOS Linux 7.4.1708
Perl version    5.016003
Path to Perl    /usr/bin/perl
BIND version    9.9
Postfix version 2.10.1
Mail injection command  /usr/lib/sendmail -t
Apache version  2.4.6
PHP versions    5.4.16, 7.0.10, 7.1.8
Logrotate version   3.8.6
MySQL version   10.1.31-MariaDB

Dovecot IMAP/POP3 Server Version 2.2.10. 

有办法解决这个问题吗?

答案1

这个问题是一个长期存在的错误在 cyrus-sasl 中,这是由于 auth-pam 代码并未真正提供将主机(或用户)信息传递给 saslauthd 的方法造成的。理论上,修复该问题的补丁应该会纳入 2.2 版本,但我在 2.2.X 发行说明中没有看到任何相关内容。虽然这可能会在 2.1 版本中向后移植(可能在每个发行版的基础上),但我找不到任何证据表明这实际上发生在 RedHat 或 Ubuntu 上。

如果缺乏任何实际解决方案,您可以查看中提出的解决方案https://unix.stackexchange.com/a/480005https://unix.stackexchange.com/a/511997,特别是增加 sendmail 中的日志级别以显示登录失败的 IP,或者使用“连接期间未发出 MAIL/EXPN/VRFY/ETRN”错误作为失败尝试的代理。

答案2

普通 SMTP 服务本身不提供身份验证。经过身份验证的 SMTP 是一种委婉说法,因为通常您必须事先通过 IMAP 或 POP 登录才能使用 SMTP 服务。

通常,向 Internet 开放的 IMAP 端口(更常见的是 POP3 端口)会被暴力破解,作为查找弱登录名/密码的简单方法。

然而,在默认的 postfix+dovecot 配置中,saslauthd出于身份验证目的,通常由dovecot提供 IMAP/POP3 服务的 调用。

因此,您必须查看dovecot日志以了解发生的情况,并查看有问题的 IP 地址。

我认为dovecot日志是 at/var/log/dovecot.log或类似的东西(我有一段时间没有使用 centOS 了)。

如果日志记录对您来说不够,您可以dovecot暂时更改配置,如下所示:

编辑/etc/dovecot/conf.d/10-logging.conf/etc/dovecot/dovecot.conf使用:

auth_verbose=yes
auth_debug=yes
verbose_ssl=yes

进而service dovecote restart

另外作为建议,通过 TLS(pop3s 995/tcp 和 imaps 993/tcp )提供这些服务可能更有意义,而不是以普通形式。它将更加安全,并且您受到的攻击也会少得多。

附言。请向我确认您拥有的配置文件和日志文件的名称,以编辑此答案。

相关内容