Postfix 连接到负载均衡器,如何拒绝 mail.log 中的连接/断开连接消息

Postfix 连接到负载均衡器,如何拒绝 mail.log 中的连接/断开连接消息

我们有几个 Postfix 服务器连接到我们的 F5 负载均衡器,它每隔几秒钟检查端口 25 上的连接以确保服务器可用。不幸的是,这会在日志中产生大量噪音,如果负载均衡池断开连接,我宁愿从负载均衡器而不是邮件服务器查看此信息。

每隔几秒就会出现如下消息:

Oct 19 10:34:46 mail postfix/smtpd[14755]: connect from unknown[x.x.x.x]
Oct 19 10:34:46 mail postfix/smtpd[14755]: lost connection after CONNECT from unknown[x.x.x.x]
Oct 19 10:34:46 mail postfix/smtpd[14755]: disconnect from unknown[x.x.x.x]
Oct 19 10:34:49 mail postfix/smtpd[14755]: connect from unknown[x.x.x.x]
Oct 19 10:34:49 mail postfix/smtpd[14755]: lost connection after CONNECT from unknown[x.x.x.x]
Oct 19 10:34:49 mail postfix/smtpd[14755]: disconnect from unknown[x.x.x.x]
Oct 19 10:34:51 mail postfix/smtpd[14755]: connect from unknown[x.x.x.x]
Oct 19 10:34:51 mail postfix/smtpd[14755]: lost connection after CONNECT from unknown[x.x.x.x]
Oct 19 10:34:51 mail postfix/smtpd[14755]: disconnect from unknown[x.x.x.x]

我宁愿只查看与邮件服务器和发送邮件相关的信息 - 但对于与这两个 IP 地址(负载均衡器)的连接和断开连接相关的任何信息我都不太关心,也不愿意让这些信息向日志中发送垃圾邮件。

我在这里有什么选择?我的 Postfix 配置非常简单/基本,除了默认配置外,我没有进行任何类型的日志记录或调试(除了smtpd_helo_restrictions = warn_if_reject check_helo_access static:reject我用来跟踪 HELO 以防止我们被列入黑名单,但与此无关)。

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
inet_protocols = all
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
mydestination = mail.contoso.com, localhost.localdomain, localhost
myhostname = mail.contoso.com
mynetworks = 10.0.0.0/8 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relayhost = smtp-relay.gmail.com
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_helo_restrictions = warn_if_reject check_helo_access static:reject
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes

答案1

假设您正在运行默认设置,这实际上是一个 syslog 问题而不是 postfix 问题,因为 postfix 将这些事件发送到 syslog,然后 syslog(可能是 rsyslog)进行处理。

您将需要过滤掉以下消息:

:msg, contains, "from unknown[x.x.x.x]" ~

@version: 3.5 filter f_F5 {message not ("from unknown[x.x.x.x]");};

答案2

您在 BIG-IP 上使用什么监视器来检查 SMTP 节点健康状况?如果您使用的是仅查找套接字连接的基本 TCP,那么这是可以修复的。

您可以配置 SMTP 监视器,使其运行 EHLO/QUIT 以彻底关闭连接。这是另一个好处,因为它将等到节点重置后 SMTP 服务可用,而不是 TCP 可用。

如果可以的话,请查看这个:https://devcentral.f5.com/questions/difference-between-tcp-monitor-and-smtp-monitor

虽然您可以清除日志,但最好还是修复问题。请记住,在意外关闭 SMTP 服务器之前,先进行预生产测试。

-追赶

相关内容