SendGrid 是一项基于云的 SMTP 服务,使您无需管理邮件服务器即可实现邮件发送。
注意:端口25 默认关闭,在我们的虚拟机上无法连接(默认设置)。如果您想开启 25 端口,请购买 Mail Bridge 并进行配置,在Starlight™ Manager中完成。
要在 WHM 上配置Mailgun邮箱,请参考本指南。
请按照以下步骤,在 WHM 端为您的域名配置SendGrid服务和邮件系统:
步骤 1:注册SendGrid:

填写所有联系信息后,点击“继续”。
步骤 2:您将被重定向到浏览器的新标签页以验证您的邮箱账户。复制发送到您邮箱的验证码,输入到“验证码”字段并点击“验证”:

步骤 3:输入发送到您手机的验证码,在“输入认证码”字段中填写并点击“验证”以验证您的手机号:

步骤 4:随后,您将获得恢复码,在丢失手机或无法访问验证设备时非常有用。请复制该代码并保存,然后点击“继续”。也可以选择将代码下载为文件:

步骤 5:在下一个页面填写您的联系信息,然后点击“下一步”:

步骤 6:在下一个页面,请打开您的 SendGrid 控制台:

步骤 7:进入后,前往“设置” >> “API 密钥”菜单,在此创建新的 API 密钥:

步骤 8:在打开的菜单中,输入API 密钥名称,将API 密钥权限设置为“完全访问”选项,并保存配置:

步骤 9:设置SendGrid 发件人身份验证。有两种方式:
方法一:单一发件人验证
单一发件人验证——这是一种快速验证方法,允许在使用 SendGrid 账户时添加授权收件人(单个或多个邮箱地址)。例如,如果您想通过 cPanel 服务器中添加的 john.doe@example.com 向 jane.doe@gmail.com 发送邮件,则需将 jane.doe@gmail.com 添加到 SendGrid 的单一发件人验证中。
注意:单一发件人验证仅推荐用于测试。
注意:您只能从已验证的地址发送邮件,而不能从已认证域名的任意地址发送。
要设置单一发件人验证,请在 SendGrid 控制台中进入“设置” >> “发件人身份验证”菜单 >> 点击“验证单一发件人”按钮:

在下一个页面,填写联系信息创建发件人,然后点击“创建”以保存所有内容:

之后,您将收到来自 SendGrid 的验证邮件。要确认添加邮箱地址,请在邮件中点击“验证单一发件人”按钮:

方法二:域名身份验证(推荐)
点击“设置” >> 进入“发件人身份验证”菜单 >> 在“域名身份验证”区域下,点击“认证您的域名”:

在下一个页面,通过回答第一步和第二步中的问题来认证您的域名,然后点击“下一步”:

注意:在截图中,我们对第二个问题选择了“否”。不过,这个回答是可选的。
之后,输入所需的域名,如有需要可设置其他选项,然后点击“下一步”:

现在需要通过配置相应的 CNAME 和 TXT DNS 记录来验证域名。
为域名创建 DNS 记录后,在第 2 步勾选“我已添加这些记录”框,并点击下方的“验证”:

注意:DNS 记录可能需要 24-48 小时才能生效。
步骤 10:下一步是配置 SMTP 设置,用于 WHM 端的邮箱账户。
操作方法:进入 WHM >> “服务配置” >> “Exim 配置管理器” >> 打开“高级编辑器”标签页。查找“Section: AUTH”,并在其中添加以下代码:sendgrid_login:driver = plaintextpublic_name = LOGINclient_send = : apikey : <API_KEY_VALUE>
请确保将<API_KEY_VALUE>替换为第 8 步生成的 API 密钥。
步骤 11:之后,查找“Section: POSTMAILCOUNT”,并在其中添加以下代码:send_via_sendgrid:driver = manualroutedomains = ! +local_domains.ifdef SRSENABLED# if outbound, and forwarding has been done, use an alternate transporttransport = ${if eq {$local_part@$domain} \{$original_local_part@$original_domain} \{sendgrid_smtp} {sendgrid_forwarded_smtp}}.elsetransport = sendgrid_smtp.endifroute_list = "* smtp.sendgrid.net::587 byname"host_find_failed = deferno_more
步骤 12。查找“Section: TRANSPORTSTART”,再添加一段代码:sendgrid_smtp:driver = smtphosts = smtp.sendgrid.nethosts_require_auth = smtp.sendgrid.nethosts_require_tls = smtp.sendgrid.net
步骤 13:保存 SMTP 配置。
步骤 14:发送一封邮件以测试系统是否正常工作。邮件头中会包含“SendGrid”字样。