Ghost 5 配置 SMTP 邮箱服务

邮箱服务

邮箱作用

Ghost 使用 Nodemailer 实现邮件发送服务,可以使用第三方邮箱的 SMTP 服务来发送邮件。

目前 Ghost 中邮箱的作用主要有以下几种:

  • 新设备登陆 Ghost 管理后需要邮箱验证码(默认开启,可关闭)。
  • 邀请用户注册时时需要发送邀请邮件。
  • 新用户注册时需要发送验证邮件。
  • 文章发布时给订阅用户发动订阅邮件。

配置文件

development 环境下为 Ghost 安装目录下的 config.development.json 文件。

production 环境下为 Ghost 安装目录下的 config.production.json 文件。

修改配置文件后,需要重启 Ghost 服务。

关闭登陆时的邮箱验证

如果不希望新设备登陆时使用邮箱验证,可以修改配置文件关闭:

"security": {
  "staffDeviceVerification": false
}

配置 SMTP 邮箱服务

配置 SMTP 邮箱服务需要确保邮箱已开启 SMTP 服务。

Nodemailer 内置了一些常用邮箱配置,可以使用 mail.options.service 配置项来简化配置。

  • <email> 为邮箱地址。
  • <password> 为邮箱密码或者授权码。
  • <service> 为内置的常用邮箱配置名称。
  • <smtp-server> 为邮箱 SMTP 服务地址。
  • <smtp-port> 为邮箱 SMTP 端口地址,一般为 994。

常用邮箱服务

Gmail (需要科学上网才能使用,非海外主机不推荐使用)配置:

"mail": {
  "from": "<email>",
  "transport": "SMTP",
  "options": {
    "service": "Gmail",
    "auth": {
      "user": "<email>",
      "pass": "<password>"
    }
  }
},

QQ 邮箱(需要使用授权码,邮箱独立密码也无法登陆)配置:

"mail": {
  "from": "<email>",
  "transport": "SMTP",
  "options": {
    "service": "QQ",
    "auth": {
      "user": "<email>",
      "pass": "<password>"
    }
  }
},

QQ 企业邮箱(需要 绑定微信,并生成授权码)配置 :

"mail": {
  "from": "<email>",
  "transport": "SMTP",
  "options": {
    "service": "QQex",
    "auth": {
      "user": "<email>",
      "pass": "<password>"
    }
  }
},

通用 SMTP 邮箱服务

通用 SMTP 服务需要填写完整配置:

"mail": {
  "from": "<email>",
  "transport": "SMTP",
  "options": {
    "host": "<smtp-server>",
    "port": <smtp-port>,
    "secureConnection": true,
    "requiresAuth": true,
    "auth": {
      "user": "<email>",
      "pass": "<password>"
    }
  }
},

参考文献