为Ghost博客配置Gmail SMTP邮件服务

生活 Mar 09, 2020
1

在服务器部署完 Ghost 博客后,接下来最重要的事就是为博客配置 SMTP 服务,以便找回丢失的密码和发邮件邀请其他作者。

Ghost 默认使用Nodemailer 0.7直接发送邮件,但多数服务器如阿里云、Google Cloud 均不支持这种方式。更可靠的方案是使用外部服务来设置邮件。

Ghost 官方建议 采用 Mailgun 作为smtp  服务器,当然你也可以使用 SendGrid。 不过这两种方式都需要注册对应账号,绑定信用卡、验证域名。操作相对复杂。

当然,我们也可以使用 Gmail SMTP 服务作为 Ghost 邮件服务器。

a.  启用 Gmail  IMAP

在 Gmail 邮箱 → 设置 → 转发和 POP/IMAP  → IMAP访问中启用 IMAP

b. 启用 Gmail 安全性较低的应用的访问权限

打开链接Less secure,将“不够安全的应用访问权限"设置为"启用"。

如果 Google 账户已启用两步验证,则需要使用应用专用密码才能访问不够安全的应用。

转到您的 Google 帐号

在左侧导航面板中,选择安全性

在“登录 Google”面板中,选择应用专用密码。如果您没有看到此选项,则可能是:

  • 您的帐号未设置两步验证。
  • 您只为两步验证设置了安全密钥。
  • 您使用的是通过单位、学校或其他组织获取的帐号。
  • 您已为帐号开启了“高级保护”。

在页面底部,点击选择应用,然后选择您要使用的应用。

点击选择设备,然后选择您要使用的设备。

选择生成

记录下应用专用密码(即设备上的黄条中显示的 16 个字符的密码)。

选择完成

c. 配置 Ghost 服务器

使用ftp 或ssh  编辑根目录下config.production.json,修改mail{}部分,如果没有启用两步验证,pass赋值 Gmail 密码,如果启用了两步验证,pass 赋值 第2步生成的应用专属密码。

 "mail": {
    "transport": "Direct"
  },
  
  # 修改为:
  
  "mail": {
    "transport": "SMTP",
    "options": {
        "service": "Gmail",
        "auth": {
            "user": "你的 Gmail 邮箱地址",
            "pass": "你的 Gmail 邮箱密码或第2步生成的应用专属密码"
			}
		}
	}
}

d. 测试是否生效

  1. 保存回传修改后的config.production.json ,重启服务器。
  2. 在 Ghost 后台通过邀请 Staff 测试是否生效。

席一舟

四野八荒,苦茶清禅。渔樵江渚,浊酒西风。 螽斯蓝寿,稀禾芡菱。嬉笑怒骂,行藏自由。 策马悬崖,雕弓满月。惊涛拍岸,毕力遐方。 银鞍白马,一剑寒霜。此生谁料,咸是妙明。

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.