强制 Dovecot 不记录连接/断开连接消息

squ*_*cle 5 linux email-server logging imap dovecot

/var/log/mail.log经常被 Dovecot 连接/断开连接消息淹没,如下所示:

Mar 29 18:15:48 summit dovecot: IMAP(foo@bar.baz): Disconnected: Logged out bytes=63/2126          
Mar 29 18:15:50 summit dovecot: imap-login: Login: user=<baz@bar.foo>, method=PLAIN, rip=4.3.2.1, lip=1.2.3.4, TLS
Run Code Online (Sandbox Code Playgroud)

这些是无限重复的(每天 11MB 的日志),并且它们掩盖了更重要的身份验证失败和 Postfix 交付/接收。我已经检查了Dovecot 的 wiki 页面以进行记录,但没有选项可以阻止这些消息。我可以在其中设置任何配置变量dovecot.conf来阻止将这些消息发送到mail.log吗?

澄清:我仍然希望 Dovecot 登录mail.log;我只是不希望它记录这些无聊的连接/断开消息。

Jur*_*873 5

如果您使用 rsyslog 或 syslog-ng,您可以过滤 syslog 消息。以下是 rsyslog 帮助中的示例:

用一个简单的语句:

:msg, contains, "imap-login" ~
Run Code Online (Sandbox Code Playgroud)

或使用 if-else 脚本语言:

if $programname == 'dovecot' then {
   action(type="omfile" file="/var/log/dovecot.log")
   if $msg contains 'imap-login' then
     action(type="omfile" file="/var/log/dovecot-login.log")
   else
     action(type="omfile" file="/var/log/dovecot.log")
}
Run Code Online (Sandbox Code Playgroud)

http://www.rsyslog.com/doc/rsyslog_conf_filter.html

  • Dovecot 没有用于此的配置参数,这真是令人遗憾。 (2认同)