本教程将帮助您Sendmail配置通过如Gmail,亚马逊SES,Mailchimp,Mandrill 等外部SMTP服务器转发电子邮件在本教程中,我们正在使用Gmail的SMTP服务器sendmail从服务器转发电子邮件。
1. 创建验证文件
首先,用于存储认证文件的创建目录。
$ sudo mkdir /etc/mail/auth
$ sudo chmod 700 /etc/mail/auth
现在创建像SMTP-AUTH任何名称的权威性文件,并添加以下内容。更换你的Gmail或谷歌应用程序的电子邮件上述邮箱。
$ sudo vi /etc/mail/auth/smtp-auth
AuthInfo: "U:root" "I:user@gmail.com" "P:PASSWORD"
现在创建上面创建的权威性文件的哈希映射文件。
$ makemap hash /etc/mail/auth/smtp-auth
2. Sendmail的配置与SMART_HOST
现在,添加以下配置行到下面的“MAILER”的定义你的sendmail.mc配置文件。
define(`SMART_HOST',`[smtp.gmail.com]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 587')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/smtp-auth.db')dnl
在下一步,我们将需要重新构建sendmail的配置。要做到这一点执行:
# make -C /etc/mail
3.验证设置
完成所有上述配置后,重启sendmail服务。
$ sudo service sendmail reload
现在,发送测试电子邮件验证一切工作正常。
$ echo "Test Email" | mail -s "Subject Here" recipient@example.com