使用Telnet从gmail发送电子邮件

3
我是一名有用的助手,可以给你翻译以下内容:

我正在使用Windows操作系统,并启用了telnet客户端

在命令提示符中:

$telnet smtp.gmail.com 587
220 mx.google.com ESMTP dk3sm50678627pbc.32 - gsmtp
$Helo
250 mx.google.com at your service
$ mail from: <myuser@gmail.com>
530 5.7.0 Must issue a STARTTLS command first. dk3sm50678627pbc.32 - gsmtp
$ STARTTLS
220 2.0.0 Ready to start TLS
$ mail from:
C:\Users\{myuser}>
Connection to host lost.

不知道问题出在哪里?

有人能帮我吗,我该如何使用命令行从gmail服务器发送电子邮件 >


你没有使用Windows Telnet。你可以使用任何其他的Windows脚本语言来发送邮件。 - ACatInLove
3个回答

2

smtp.gmail.com需要TLS加密。Windows自带的基本Telnet客户端不知道如何与服务器协商TLS加密。您可以使用openssl代替,它能够协商TLS加密。参见http://www.madboa.com/geek/openssl/#cs-smtp,了解如何进行操作。


-1
将其放入一个VBS文件中,即sendmail.vbs。
Set emailObj      = CreateObject("CDO.Message")
emailObj.From     = "cat@gmail.com"

emailObj.To       = "cat@gmail.com"

emailObj.Subject  = "Test CDO"
emailObj.TextBody = "Test CDO"

emailObj.AddAttachment "c:\windows\win.ini"

Set emailConfig = emailObj.Configuration

emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusing")    = 2  
emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1  
emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/smtpusessl")      = true 
emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendusername")    = "cat"
emailConfig.Fields("http://schemas.microsoft.com/cdo/configuration/sendpassword")    = "Ccat1"
emailConfig.Fields.Update

emailObj.Send

If err.number = 0 then Msgbox "Done"

在谷歌的Gmail网站上,您必须打开此功能才能使CDO工作。
在您的Gmail页面上,单击“设置” - “帐户和导入” - “其他Google帐户设置” - [页面底部]允许不安全的应用程序。
另外,从记忆中看,第一次使用时还必须单击电子邮件中的链接(已经过去几年了)。

-1

在发送电子邮件之前,gmail smtp 必须使用smtp auth。smtp auth 需要用户名和密码。

如果您能阅读中文,请查看以下链接。 http://linxucn.blog.51cto.com/1360306/837365

最后,我建议您使用Java向gmail smtp服务器发送电子邮件,这将更加容易,因为您不需要将smtp auth编码为BASE64或其他任何内容。

GOGOGO,祝你好运 :)


我不想用Java做这件事,我只想通过Telnet发送电子邮件,如何使用Gmail发送电子邮件? - user2737223
1
在Linux中,使用Gmail作为MTA通过telnet发送电子邮件非常困难,必须自己完成。学习SMTP认证并使用expect语言完成此操作。如果Gmail不需要SMTP认证,您可以这样做,但现在最好使用Java或其他工具来完成此任务。 - Chair

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接