我需要帮助查明auth.log
Ubuntu 服务器上文件中的一些错误。几周前,我在 SSH 端口 (22) 上发现了大量登录尝试auth.log
,因此我更改了 SSH 端口。它干净了一个星期,然后我发现另一批通过不同端口进行的登录尝试。
我得到了很多重复的红色线条(在图像中)。重复行如下:
saslauthd[1140]: pam_unix(smtp:auth): check pass; user unknown
saslauthd[1140]: pam_unix(smtp:auth): authentication failure; logname= uid=0 euid=0 tty= ruser= rhost=
saslauthd[1140]: DEBUG: auth_pam: pam_authenticate failed: Authentication failure
saslauthd[1140]: do_auth : auth failure: [user=roselia] [service=smtp] [realm=mail.mydomain.com] [mech=pam] [reason=PAM auth error]
我可以看出他们正在尝试登录我的邮件服务器(因为领域是mail.mydomain.com
),但我无法确切地知道他们正在尝试做什么,因为我不知道 PAM 是什么。什么是 PAM?我应该怎么做才能阻止我的邮件服务器(端口 25)上的这些身份验证尝试?
我偶尔也会在我auth.log
的 PAM 中获得一些与 PAM 相关的 CRON 日志,如果有人能告诉我这些也是什么意思,那就太好了:
CRON[32236]: pam_unix(cron:session): session opened for user root by (uid=0)
CRON[32235]: pam_unix(cron:session): session opened for user root by (uid=0)
CRON[32236]: pam_unix(cron:session): session closed for user root
CRON[32235]: pam_unix(cron:session): session closed for user root
首先,这在邮件服务器上并不少见。 如果端口 25 暴露给网络,Internet 上的每个邮件服务器都会看到这些。甚至我工作场所的邮件网关和邮件服务器也会受到这些攻击,其中许多尝试被过滤和阻止的原因是网络边界上的 IDS/IPS(信任检测/预防系统),它引用了许多来源OSINT(开源情报)创建一组基于信誉的不良 IP,这些 IP 被阻止。其中一些探测通过,但在尝试时并不成功。
很可能,它不是针对您的服务器的有针对性的暴力破解,而是“Internet 的扫描仪和探测器”对每个面向 Internet 的 SMTP 服务器进行操作。这些可能是试图探测开放中继的垃圾邮件程序,如果他们没有找到开放中继,他们可能会尝试尝试访问帐户,以便将 SMTP 服务器用作邮件中继。或者它是一个服务扫描程序,试图查看您是否有任何“弱密码”在起作用,以便他们可以利用它们,然后利用您的服务器通过您的邮件服务器发送他们自己的邮件。
只要您遵循强密码的其他安全实践,除非用户需要,否则不授予用户访问权限等,就他们不会闯入您的服务器而言,您应该很好。我不太关心身份验证失败,而更关心身份验证是否成功。
另一个安全选项是设置 Fail2Ban,它可以禁止用户,但是我还没有让这个功能正常运行,也没有时间深入研究它,让我的邮件服务器在失败时自动禁止 IP验证太多次)。不过,请小心行事,因为如果您不小心,它也会阻止您。(一旦我有一个“工作”的 Fail2Ban 配置,我将分享它作为对此答案的评论,但是让它按照我想要的方式运行是很棘手的)
至于您的 中的
cron:session
条目auth.log
,这只是说明系统的cron
守护程序正在运行cron
来自/etc/crontab
、/etc/cron.{d,daily,hourly,monthly,weekly}/*
和root
用户 crontab 的任务,每个 cron 作业的时间表设置为 root 用户(其中 crontab 设置为运行root
)。这些通常没问题,前提是您实际上检查了 root 帐户下的每个 crontab,以确保没有任何“坏”作为root
.