Logwatch 不发送电子邮件

Logwatch 不发送电子邮件

我正在尝试将日志发送到我的电子邮件。我通过 SSH 执行此操作。我编辑了文件:

/usr/share/logwatch/default.conf/logwatch.conf

并编辑了这些行:

Output = mail
Format = html
Encode = none

MailTo = [email protected]

我努力了:

须藤日志观察

但该命令只是挂在那里,但仍然有响应。例如,我仍然可以按 Enter 键转到下一行。

我尝试过手动执行此操作:

sudo logwatch --detail Low --mailto email@address --service all --range 昨天

同样的问题。

几分钟后它停止了,我可以输入另一个命令。我检查了我的电子邮件,但 logwatch 没有任何信息。即使在我的垃圾邮件/垃圾文件夹中。

知道发生了什么吗?

编辑:我安装了 iptables、fail2ban 和 ufw。如果这有什么区别的话。

我也尝试过:

echo "This is a test" | mail -s Testing [email protected]

我在垃圾邮件文件夹中收到了该电子邮件。我觉得问题出在Logwatch上。

答案1

可能的原因是您没有使用sendmail而是mail发送电子邮件:

nano /usr/share/logwatch/default.conf/logwatch.conf

查找和替换:

#mailer =“/usr/sbin/sendmail -t”

邮件程序 =“/usr/bin/mail”

或使用您选择的可执行文件。

然后测试

sudo /usr/sbin/logwatch --output mail --format html --range yesterday --service all

可以测试常规邮件发送的发送

echo "This is the body of the email" | mail -s "This is the subject line" [email protected]

答案2

例如,请查看 MTA 的日志文件/var/log/exim4/mainlog并留意 SMTP 错误。

我建议这样做,因为我遇到过非常相似的情况,我的电子邮件提供商的 SMTP 服务器将 logwatch 生成的电子邮件归类为垃圾邮件,拒绝转发它们。正如您所展示的,其他电子邮件已通过。

解决方法:

就我而言,它有助于将 logwatch 的输出保存到文件中并将其附加到电子邮件中:

#!/bin/bash
tmpfile="/tmp/logwatch.txt"
/usr/sbin/logwatch > $tmpfile
echo "attached." | mail -s "logwatch output" -A "$tmpfile" email@provider

在 debian 上,logwatch 附带一个由 cron 调度的脚本(位于/etc/cron.daily)。您可以使用此代码片段来修改它。

相关内容