如何修复使用 gmail 发送电子邮件时出现的错误?
How to fix error with sending email using gmail?
我想在我的 php/laravel 应用程序中发送电子邮件 ubuntu 18 under Digital Ocean 我发现了这个
https://semantiko.com/how-to-fix-php-mail-function-on-ubuntu-server/
文章
我填写了相关的配置文件并发送了几封电子邮件,我在控制台中找到:
grep -riI ssmtp /var/log
...
/var/log/mail.log:Oct 24 14:05:22 nsn-do-lamp sSMTP[16500]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/mail.log:Oct 24 14:05:22 nsn-do-lamp sSMTP[16500]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 b5-v6sm5187045wrr.94 - gsmtp)
/var/log/mail.log:Oct 24 14:05:23 nsn-do-lamp sSMTP[16502]: Creating SSL connection to host
/var/log/mail.log:Oct 24 14:05:23 nsn-do-lamp sSMTP[16502]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/mail.log:Oct 24 14:05:23 nsn-do-lamp sSMTP[16502]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 t198-v6sm6776812wmd.9 - gsmtp)
/var/log/dpkg.log:2018-10-24 05:27:56 install ssmtp:amd64 <none> 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status half-installed ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 configure ssmtp:amd64 2.64-8ubuntu2 <none>
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status half-configured ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status installed ssmtp:amd64 2.64-8ubuntu2
/var/log/syslog.1:Oct 24 05:34:07 nsn-do-lamp sSMTP[10100]: Creating SSL connection to host
/var/log/syslog.1:Oct 24 05:34:07 nsn-do-lamp sSMTP[10100]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 24 05:34:07 nsn-do-lamp sSMTP[10100]: Authorization failed (534 5.7.9 https://support.google.com/mail/?p=WebLoginRequired 130-v6sm4756430wmn.7 - gsmtp)
在我的 https://mail.google.com 帐户下,我找到了电子邮件:
Sign-in attempt was blocked
myaccount@gmail.com
Someone just used your password to try to sign in to your account from a non-Google app. Google blocked them, but you should check what happened. Review your account activity to make sure no one else has access.
CHECK ACTIVITY
单击 "CHECK ACTIVITY" 按钮打开下一页 https://imgur.com/a/fUKlJgO
我想允许使用我的帐户或我,所以我单击 "NO, SECURE ACCOUNT" 并打开下一页
https://imgur.com/a/LfIDTB4
这对我来说很奇怪,因为我不需要更改密码。我想允许邮件服务使用我的 gmail.com 帐户。
你能说说哪里不对吗?
我是不是误解了 gmail 邮件?
修改块 # 2
我尝试按照提供的 link 打开下一个说明:
Use this setting when you want to ensure that access by a less secure
app is unavailable to all. Sign in to your Google Admin console. Sign
in using an administrator account, not your current account
MyNick@gmail.com
... Who is my administrator? Quick definition: A person who manages
Google services or devices for a company, school, or group. Someone in
your company, school, or group Your current account, MyNick@gmail.com,
isn’t managed by an administrator. The account isn’t associated with
any company, school, or group. Instead, it’s a free Google Account
that you can manage yourself.
但是阅读我错过的文档,因为我有空 Google 帐户有没有办法让我自己成为管理员?
如果是,请指出地点和方式?
修改块#3:
在我的 conf 文件中使用了 587 端口:
须藤纳米 /etc/ssmtp/ssmtp.conf :
root=MYNICK@gmail.com
mailhub=smtp.gmail.com:587
hostname=smtp.gmail.com:587
UseSTARTTLS=YES
AuthUser=MYNICK@gmail.com
AuthPass=MYPASSWORD
FromLineOverride=YES
UseTLS=YES
须藤纳米 /etc/ssmtp/revaliases :
root:MYNICK@gmail.com:smtp.gmail.com:587
修改这些文件后我运行命令
服务 apache2 重新启动
并正在测试发送电子邮件 我没有在我的电子邮件中收到电子邮件
我在下一个日志中看到很多“授权失败”错误
grep -riI ssmtp /var/log
var/log/syslog.1:Oct 30 00:34:04 nsn-do-lamp sSMTP[24892]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 00:34:04 nsn-do-lamp sSMTP[24892]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 00:34:05 nsn-do-lamp sSMTP[24892]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 y76-v6sm12958494wmd.37 - gsmtp)
/var/log/syslog.1:Oct 30 01:34:04 nsn-do-lamp sSMTP[25660]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 01:34:04 nsn-do-lamp sSMTP[25660]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 01:34:04 nsn-do-lamp sSMTP[25660]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 60-v6sm16580038wra.35 - gsmtp)
/var/log/syslog.1:Oct 30 02:34:05 nsn-do-lamp sSMTP[26444]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 02:34:05 nsn-do-lamp sSMTP[26444]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 02:34:05 nsn-do-lamp sSMTP[26444]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 t16-v6sm274794wrr.12 - gsmtp)
/var/log/syslog.1:Oct 30 03:34:06 nsn-do-lamp sSMTP[27101]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 03:34:07 nsn-do-lamp sSMTP[27101]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 03:34:07 nsn-do-lamp sSMTP[27101]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 m16-v6sm13164091wmd.35 - gsmtp)
/var/log/syslog.1:Oct 30 04:34:04 nsn-do-lamp sSMTP[27852]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 04:34:04 nsn-do-lamp sSMTP[27852]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 04:34:05 nsn-do-lamp sSMTP[27852]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 143-v6sm17450782wmv.6 - gsmtp)
/var/log/syslog.1:Oct 30 05:34:04 nsn-do-lamp sSMTP[28734]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 05:34:04 nsn-do-lamp sSMTP[28734]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 05:34:04 nsn-do-lamp sSMTP[28734]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 b5-v6sm1822874wrf.15 - gsmtp)
1) 可以是一些更多的服务我需要重新启动 apache2
2) 在我看来,这些日志消息并不是最后的,因为 运行ning :
# date
Tue Oct 30 12:02:40 UTC 2018
我看到了时差,好像没有最后的消息行
有没有办法清除 ssmtp 日志?
3) 在 Digital Ocean 下重启 ubuntu18 没有液滴损坏的安全方法是什么?在某些情况下,我不确定是否要重新启动一些
service 我更喜欢重启系统...
修改块#4:
感谢您的反馈意见!
我试着按照你的指示去做:
1) 我激活了双因素身份验证:https://imgur.com/a/azIZCY0。但是,如果我对这些应用程序做了什么?
2) 我得到了格式为 XXXX XXXX XXXX XXXX
的密码 https://imgur.com/a/ZddUZ31
3) 创建密码后我得到了下一页 https://imgur.com/a/1qkQLDN:
4) 你提到了
“use the app password in your .env file”
这个密码的变量名必须是哪个?喜欢
AuthPass=MYPASSWORD # password without spaces in it?
in /etc/ssmtp/ssmtp.conf 或其他名称?我只需要生成这个新密码?
谢谢!
允许安全性较低的应用程序访问帐户
- 登录到您的 Google 管理控制台。
- 单击“安全”>“基本设置”。
- 在安全性较低的应用下,select 转到安全性较低的应用的设置。
- 在子窗口中,select 允许用户管理他们对安全性较低的应用程序的访问单选按钮。
一旦您设置允许用户管理他们对
selected 组中受影响的用户或
组织单位将能够切换安全性较低的访问权限
应用程序自行打开或关闭。
我们在使用 Google Apps for work 帐户中的一些 "fresh" gmail 地址时遇到了类似的问题。似乎 Google 有某种启发式 运行 用于阻止来自未知应用的应用访问的新地址。
我们的解决方案是启用双因素身份验证并随后生成应用密码。步骤:
- 在 https://myaccount.google.com/signinoptions/two-step-verification
激活双因素身份验证
- 通过https://myaccount.google.com/apppasswords
创建应用密码
- 在您的 .env 文件中使用应用密码
对于您的编辑块 #2,您无法使用常规 Google 帐户让自己成为管理员。要成为您自己的管理员,您必须为 G Suite 付费。
https://gsuite.google.com/
G Suite 不适用于个人。它适用于想要为其公司使用 Google 应用程序的企业。这将为他们提供 admin.google.com 中的管理面板,他们可以在其中更改各种设置以添加和编辑帐户、使用自己的企业邮件、更改应用程序的徽标等等。 (甚至 Android、IOS 和 Chromebook 的设备管理。)
我是公司的 IT 人员,我们使用 G Suite。这些价格对于测试来说太高了。所以,自己做管理员是不可能的,因为对自己来说太贵了。
编辑给你一个价目表:
https://gsuite.google.com/pricing.html
此致,
克里斯
启用安全性较低的应用程序的更新说明
- 在 Gmail 中点击齿轮图标(右上角)
- 点击查看所有设置
- 帐户和导入选项卡
- 单击其他 Google 帐户设置
- 左侧或顶部菜单,安全
- 向下滚动到不太安全的应用程序访问,将其打开
我想在我的 php/laravel 应用程序中发送电子邮件 ubuntu 18 under Digital Ocean 我发现了这个 https://semantiko.com/how-to-fix-php-mail-function-on-ubuntu-server/ 文章 我填写了相关的配置文件并发送了几封电子邮件,我在控制台中找到:
grep -riI ssmtp /var/log
...
/var/log/mail.log:Oct 24 14:05:22 nsn-do-lamp sSMTP[16500]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/mail.log:Oct 24 14:05:22 nsn-do-lamp sSMTP[16500]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 b5-v6sm5187045wrr.94 - gsmtp)
/var/log/mail.log:Oct 24 14:05:23 nsn-do-lamp sSMTP[16502]: Creating SSL connection to host
/var/log/mail.log:Oct 24 14:05:23 nsn-do-lamp sSMTP[16502]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/mail.log:Oct 24 14:05:23 nsn-do-lamp sSMTP[16502]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 t198-v6sm6776812wmd.9 - gsmtp)
/var/log/dpkg.log:2018-10-24 05:27:56 install ssmtp:amd64 <none> 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status half-installed ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 configure ssmtp:amd64 2.64-8ubuntu2 <none>
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status unpacked ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status half-configured ssmtp:amd64 2.64-8ubuntu2
/var/log/dpkg.log:2018-10-24 05:27:56 status installed ssmtp:amd64 2.64-8ubuntu2
/var/log/syslog.1:Oct 24 05:34:07 nsn-do-lamp sSMTP[10100]: Creating SSL connection to host
/var/log/syslog.1:Oct 24 05:34:07 nsn-do-lamp sSMTP[10100]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 24 05:34:07 nsn-do-lamp sSMTP[10100]: Authorization failed (534 5.7.9 https://support.google.com/mail/?p=WebLoginRequired 130-v6sm4756430wmn.7 - gsmtp)
在我的 https://mail.google.com 帐户下,我找到了电子邮件:
Sign-in attempt was blocked
myaccount@gmail.com
Someone just used your password to try to sign in to your account from a non-Google app. Google blocked them, but you should check what happened. Review your account activity to make sure no one else has access.
CHECK ACTIVITY
单击 "CHECK ACTIVITY" 按钮打开下一页 https://imgur.com/a/fUKlJgO 我想允许使用我的帐户或我,所以我单击 "NO, SECURE ACCOUNT" 并打开下一页 https://imgur.com/a/LfIDTB4
这对我来说很奇怪,因为我不需要更改密码。我想允许邮件服务使用我的 gmail.com 帐户。
你能说说哪里不对吗?
我是不是误解了 gmail 邮件?
修改块 # 2 我尝试按照提供的 link 打开下一个说明:
Use this setting when you want to ensure that access by a less secure app is unavailable to all. Sign in to your Google Admin console. Sign in using an administrator account, not your current account MyNick@gmail.com
... Who is my administrator? Quick definition: A person who manages Google services or devices for a company, school, or group. Someone in your company, school, or group Your current account, MyNick@gmail.com, isn’t managed by an administrator. The account isn’t associated with any company, school, or group. Instead, it’s a free Google Account that you can manage yourself.
但是阅读我错过的文档,因为我有空 Google 帐户有没有办法让我自己成为管理员? 如果是,请指出地点和方式?
修改块#3: 在我的 conf 文件中使用了 587 端口: 须藤纳米 /etc/ssmtp/ssmtp.conf :
root=MYNICK@gmail.com
mailhub=smtp.gmail.com:587
hostname=smtp.gmail.com:587
UseSTARTTLS=YES
AuthUser=MYNICK@gmail.com
AuthPass=MYPASSWORD
FromLineOverride=YES
UseTLS=YES
须藤纳米 /etc/ssmtp/revaliases :
root:MYNICK@gmail.com:smtp.gmail.com:587
修改这些文件后我运行命令 服务 apache2 重新启动
并正在测试发送电子邮件 我没有在我的电子邮件中收到电子邮件 我在下一个日志中看到很多“授权失败”错误
grep -riI ssmtp /var/log
var/log/syslog.1:Oct 30 00:34:04 nsn-do-lamp sSMTP[24892]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 00:34:04 nsn-do-lamp sSMTP[24892]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 00:34:05 nsn-do-lamp sSMTP[24892]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 y76-v6sm12958494wmd.37 - gsmtp)
/var/log/syslog.1:Oct 30 01:34:04 nsn-do-lamp sSMTP[25660]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 01:34:04 nsn-do-lamp sSMTP[25660]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 01:34:04 nsn-do-lamp sSMTP[25660]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 60-v6sm16580038wra.35 - gsmtp)
/var/log/syslog.1:Oct 30 02:34:05 nsn-do-lamp sSMTP[26444]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 02:34:05 nsn-do-lamp sSMTP[26444]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 02:34:05 nsn-do-lamp sSMTP[26444]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 t16-v6sm274794wrr.12 - gsmtp)
/var/log/syslog.1:Oct 30 03:34:06 nsn-do-lamp sSMTP[27101]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 03:34:07 nsn-do-lamp sSMTP[27101]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 03:34:07 nsn-do-lamp sSMTP[27101]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 m16-v6sm13164091wmd.35 - gsmtp)
/var/log/syslog.1:Oct 30 04:34:04 nsn-do-lamp sSMTP[27852]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 04:34:04 nsn-do-lamp sSMTP[27852]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 04:34:05 nsn-do-lamp sSMTP[27852]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 143-v6sm17450782wmv.6 - gsmtp)
/var/log/syslog.1:Oct 30 05:34:04 nsn-do-lamp sSMTP[28734]: Creating SSL connection to host
/var/log/syslog.1:Oct 30 05:34:04 nsn-do-lamp sSMTP[28734]: SSL connection using ECDHE_RSA_CHACHA20_POLY1305
/var/log/syslog.1:Oct 30 05:34:04 nsn-do-lamp sSMTP[28734]: Authorization failed (534 5.7.14 https://support.google.com/mail/answer/78754 b5-v6sm1822874wrf.15 - gsmtp)
1) 可以是一些更多的服务我需要重新启动 apache2
2) 在我看来,这些日志消息并不是最后的,因为 运行ning :
# date
Tue Oct 30 12:02:40 UTC 2018
我看到了时差,好像没有最后的消息行 有没有办法清除 ssmtp 日志?
3) 在 Digital Ocean 下重启 ubuntu18 没有液滴损坏的安全方法是什么?在某些情况下,我不确定是否要重新启动一些 service 我更喜欢重启系统...
修改块#4: 感谢您的反馈意见! 我试着按照你的指示去做: 1) 我激活了双因素身份验证:https://imgur.com/a/azIZCY0。但是,如果我对这些应用程序做了什么?
2) 我得到了格式为 XXXX XXXX XXXX XXXX
的密码 https://imgur.com/a/ZddUZ313) 创建密码后我得到了下一页 https://imgur.com/a/1qkQLDN:
4) 你提到了
“use the app password in your .env file”
这个密码的变量名必须是哪个?喜欢
AuthPass=MYPASSWORD # password without spaces in it?
in /etc/ssmtp/ssmtp.conf 或其他名称?我只需要生成这个新密码?
谢谢!
允许安全性较低的应用程序访问帐户
- 登录到您的 Google 管理控制台。
- 单击“安全”>“基本设置”。
- 在安全性较低的应用下,select 转到安全性较低的应用的设置。
- 在子窗口中,select 允许用户管理他们对安全性较低的应用程序的访问单选按钮。
一旦您设置允许用户管理他们对 selected 组中受影响的用户或 组织单位将能够切换安全性较低的访问权限 应用程序自行打开或关闭。
我们在使用 Google Apps for work 帐户中的一些 "fresh" gmail 地址时遇到了类似的问题。似乎 Google 有某种启发式 运行 用于阻止来自未知应用的应用访问的新地址。
我们的解决方案是启用双因素身份验证并随后生成应用密码。步骤:
- 在 https://myaccount.google.com/signinoptions/two-step-verification 激活双因素身份验证
- 通过https://myaccount.google.com/apppasswords 创建应用密码
- 在您的 .env 文件中使用应用密码
对于您的编辑块 #2,您无法使用常规 Google 帐户让自己成为管理员。要成为您自己的管理员,您必须为 G Suite 付费。 https://gsuite.google.com/
G Suite 不适用于个人。它适用于想要为其公司使用 Google 应用程序的企业。这将为他们提供 admin.google.com 中的管理面板,他们可以在其中更改各种设置以添加和编辑帐户、使用自己的企业邮件、更改应用程序的徽标等等。 (甚至 Android、IOS 和 Chromebook 的设备管理。) 我是公司的 IT 人员,我们使用 G Suite。这些价格对于测试来说太高了。所以,自己做管理员是不可能的,因为对自己来说太贵了。
编辑给你一个价目表: https://gsuite.google.com/pricing.html
此致, 克里斯
启用安全性较低的应用程序的更新说明
- 在 Gmail 中点击齿轮图标(右上角)
- 点击查看所有设置
- 帐户和导入选项卡
- 单击其他 Google 帐户设置
- 左侧或顶部菜单,安全
- 向下滚动到不太安全的应用程序访问,将其打开