![使用 sendmail 作为中继邮件的客户端](https://linux22.com/image/557506/%E4%BD%BF%E7%94%A8%20sendmail%20%E4%BD%9C%E4%B8%BA%E4%B8%AD%E7%BB%A7%E9%82%AE%E4%BB%B6%E7%9A%84%E5%AE%A2%E6%88%B7%E7%AB%AF.png)
我正在尝试使用我的中央邮件服务器上的帐户发送来自其他邮箱的所有邮件。我的中央邮件服务器是 itracknetworks.ca,我在那里有一个帐户[电子邮件保护]。我目前在 sendmail.mc 中有以下内容
[root@localhost mail]# cat sendmail.mc | grep -v "^dnl"
divert(-1)dnl
include(`/usr/share/sendmail-cf/m4/cf.m4')dnl
VERSIONID(`setup for linux')dnl
OSTYPE(`linux')dnl
define(`SMART_HOST', `mail.itracknetworks.ca')
define(`confDEF_USER_ID', ``8:12'')dnl
define(`confTO_CONNECT', `1m')dnl
define(`confTRY_NULL_MX_LIST', `True')dnl
define(`confDONT_PROBE_INTERFACES', `True')dnl
define(`PROCMAIL_MAILER_PATH', `/usr/bin/procmail')dnl
define(`ALIAS_FILE', `/etc/aliases')dnl
define(`STATUS_FILE', `/var/log/mail/statistics')dnl
define(`UUCP_MAILER_MAX', `2000000')dnl
define(`confUSERDB_SPEC', `/etc/mail/userdb.db')dnl
define(`confPRIVACY_FLAGS', `authwarnings,novrfy,noexpn,restrictqrun')dnl
define(`confAUTH_OPTIONS', `A')dnl
define(`confTO_IDENT', `0')dnl
FEATURE(`no_default_msa', `dnl')dnl
FEATURE(`smrsh', `/usr/sbin/smrsh')dnl
FEATURE(`mailertable', `hash -o /etc/mail/mailertable.db')dnl
FEATURE(`virtusertable', `hash -o /etc/mail/virtusertable.db')dnl
FEATURE(redirect)dnl
FEATURE(always_add_domain)dnl
FEATURE(use_cw_file)dnl
FEATURE(use_ct_file)dnl
FEATURE(local_procmail, `', `procmail -t -Y -a $h -d $u')dnl
FEATURE(`access_db', `hash -T<TMPF> -o /etc/mail/access.db')dnl
FEATURE(`blacklist_recipients')dnl
EXPOSED_USER(`root')dnl
DAEMON_OPTIONS(`Port=25')
DAEMON_OPTIONS(`Port=26')
FEATURE(`accept_unresolvable_domains')dnl
LOCAL_DOMAIN(`localhost.localdomain')dnl
MASQUERADE_AS(`itracknetworks.ca')dnl
FEATURE(masquerade_envelope)dnl
MAILER(smtp)dnl
MAILER(procmail)dnl
另外我的 /etc/mail/access 中有以下内容
AuthInfo:mail.itracknetworks.ca "U:[email protected]" "I:[email protected]" "P:*****" "M:LOGIN PLAIN"
但当我发送邮件时,我可以看到它仍然从 localhost.localdomain 发送。我读到,只有当所有其他投递方法都失败时,才会使用 SMART_HOST。那么,我如何确保全部邮件通过 /etc/mail/access 中描述的帐户发送吗?
谢谢您的帮助。
答案1
您可以将配置简化为以下内容
include(`/usr/share/sendmail-cf/m4/cf.m4')dnl
VERSIONID(`setup for linux')dnl
OSTYPE(`linux')dnl
FEATURE(`nullclient',`mail.itracknetworks.ca').
摘录自文档
空客户端
这是一个特殊情况——它创建一个配置文件,其中只包含通过本地 SMTP 网络将所有邮件转发到中央集线器的支持。参数是该集线器的名称。
唯一应与此功能结合使用的其他功能是 FEATURE(`nocanonify')。不应定义任何邮件程序。不进行别名或转发。