我正在尝试让 fail2ban 在 IP 被禁止时向我发送通知。但我在配置方面遇到了麻烦MTA
。这是一项非常棘手的任务。
我已尝试过多个 MTA(mailx、exim……),但未能配置任何这些客户端,因此我又回到了 sendmail。
我在服务器上托管了个人域名邮件服务器yandex
。我创建了一个帐户,用于从我的服务器发送邮件。
这是我的sendmail
MTA 配置。
文件/etc/mail/sendmail.mc
# Adding config for yandex (mydomain.net) #
define(`SMART_HOST',`[smtp.yandex.ru]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 465')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 465')dnl
define(`confAUTH_OPTIONS', `A p')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash -o /etc/mail/authinfo/yandex-auth.db')dnl
当我尝试使用此命令发送邮件时
echo 'e-Mail TEST'| mail -s TEST [email protected]
我得到以下调试输出
Apr 6 11:30:58 crosp sendmail[3138]: v36FUwxd003138: from=crosp, size=221, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Apr 6 11:30:58 crosp sendmail[3139]: v36FUwID003139: <[email protected]>... User unknown
Apr 6 11:30:58 crosp sendmail[3138]: v36FUwxd003138: [email protected], ctladdr=crosp (1000/1000), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30221, relay=[127.0.0.1] [127.0.0.1], dsn=5.1.1, stat=User unknown
Apr 6 11:30:58 crosp sendmail[3139]: v36FUwID003139: from=<[email protected]>, size=221, class=0, nrcpts=0, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1]
Apr 6 11:30:58 crosp sendmail[3138]: v36FUwxd003138: v36FUwxe003138: DSN: User unknown
Apr 6 11:30:58 crosp sendmail[3139]: v36FUwIF003139: from=<>, size=2026, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1]
Apr 6 11:30:58 crosp sendmail[3138]: v36FUwxe003138: to=crosp, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=31245, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (v36FUwIF003139 Message accepted for delivery)
Apr 6 11:30:58 crosp sendmail[3140]: v36FUwIF003139: to=<[email protected]>, delay=00:00:00, xdelay=00:00:00, mailer=local, pri=32196, dsn=2.0.0, stat=Sent
我的配置有什么问题?
顺便说一句,如果有其他更简单的方法来配置fail2ban
邮件通知,请告诉我。
谢谢。