如何测试SMTP服务器?
如何检查SMTP服务器?
工具swaks
在这里派上用场
在Ubuntu上
apt install swaks
然后,你可以运行命令,并看到SMTP对话框
$ swaks --to foo@example.com --server smtp.ionos.de:587
=== Trying smtp.ionos.de:587...
=== Connected to smtp.ionos.de.
<- 220 kundenserver.de (mreue106) Nemesis ESMTP Service ready
-> EHLO lafto
<- 250-kundenserver.de Hello example [<IP redacted>]
<- 250-8BITMIME
<- 250-AUTH LOGIN PLAIN
<- 250-SIZE 140000000
<- 250 STARTTLS
-> MAIL FROM:<foo@example.com>
<** 530 Authentication required
-> QUIT
<- 221 kundenserver.de Service closing transmission channel
=== Connection closed with remote host.
如你所见,它需要认证,这就是我们重新运行的原因
$ swaks --to foo@example.com --server smtp.ionos.de:587 --auth LOGIN
Username: foo
Password: bar
查看手册页以获取更多信息
你还可以使用python客户端来测试smtp服务器并发送电子邮件。
from mailer import Mailer
from mailer import Message
message = Message(From="<sender-ID>",
To="reciever-ID",
charset="utf-8")
message.Subject = "An HTML Email"
message.Html = """This email uses <strong>HTML</strong>!"""
message.Body = """This is alternate text."""
sender = Mailer('<SMTP-Server-IP>', port=<port>, use_tls=False, usr='<SMTP-Login-USER>', pwd='<password>',use_ssl=True, use_plain_auth=True)
sender.send(message)
注:你需要安装python mailer包才能使用此库。
- 还可以使用sendmail客户端测试smpt服务器
- 你还可以设置Postfix和dovcot以及执行邮件操作