开始新对话

此帖子已超过 5 年

Solved!

Go to Solution

6823

2013年8月5日 20:00

自动发送邮件设置没有效果

设置好自动发送邮件的命令但是每天备份结束后没有收到相关的邮件。将命令在命令窗口中运行报如下错误:

0 13754858 2 0 0 0 3048 4848 0 chgpwr8cinc04 smtpmail 2  %s 1 0 43 protocol error: didn't get "OK" from server

telnet 和ping 都可以连通邮件服务器。

设置的命令如下:

smtpmail - s"chgpwr8cinc04 Backup Status Notification" -h xx.xxx.xxx.25 -p 25 xxxx.@xxxx

1.2K 消息

2013年8月7日 00:00

想问下,你这里说的telnet能通,是指用telnet能从SMTP 25端口连通Exchange Server,还是说不仅能连通,后续测试邮件也能顺利从telnet里发出和被收件人收到?

telnet是能直接以命令行的方式发测试邮件的,建议你telnet 在25端口连通Exchange 服务器后,再后续执行如下命令进行测试。从你描述的症状看,貌似是这个分站点和Exchange服务器之间的网络连接,防火墙,转发配置(Relay)或是其他等因素造成的。所以用最基本的telnet来发测试邮件能有效的排查这些可能的问题。

运行telnet,然后执行  open 你Exchange邮件服务器的FQDN 25 ,连上后先打下 EHLO 命令。然后依次执行如下命令:

MAIL FROM: <发件人的邮件地址,可随意填,例如abc@test.com>

正常情况下,这条命令应该返回250 Sender OK, 表示发件人地址被允许。如直接报错请帖出具体的错误提示来

RCPT TO: <收件人的邮件地址,例如你上述用xxxx@xxxx隐藏的实际地址>

正常情况下,这条命令应该返回250 Recipient OK, 表示收件人地址被允许。如直接报错请帖出具体的错误提示来

DATA

DATA命令后直接回车,正常情况下,应该提示你类似354 Start mail input,表示你可以开始输入测试邮件的内容。随便输入点文字,例如 this is a test email sent by using telnet commands. 输入完后,连续的敲 回车 句号 回车 这个3键各一次来表示邮件内容输入完毕。

正常情况下应该返回250 Queued mail for delivery, 表示Exchange服务器已经收下了你的测试邮件。如直接报错请帖出具体的错误提示来。

2 Intern

 • 

1.2K 消息

2013年8月5日 23:00

由于smtpmail是一个SMTP协议命令,所以不需要NetWorker也可以独立使用。在操作系统命令行里运行该命令,结果如何?是否也报错无法收到邮件?如果是的话,请联系你的邮件服务器管理员来检查邮件服务器或SMTP设置,并且我们可以说这个问题和NetWorker无关,因为NetWorker只是借助SMTP协议来发送邮件。

如果在操作系统命令行里运行该命令可以发送邮件而NetWorker不可以(这种情况发生可能性不大),那么我们可能要看下NetWorker是否有设置不对的地方。

另外,从你的命令来看,-s后面应该有空格。25是密码? xxxx.@xxxx 这种邮件格式不对吧?

关于配置NetWorker邮件通知的更多信息,请参考:https://community.emc.com/message/709953#709953

smtpmail的用法:

http://www.mkssoftware.com/docs/man1/smtpmail.1.asp

1.6K 消息

2013年8月6日 00:00

我建议检查检查exchange server的Relay Restrictions

Open the Exchange System Manager;

Go in Administrative Groups -> Administrative group name -> Server -> Server name -> Protocols -> SMTP;

Right click on Default SMTP Virtual Server -> properties;

Access tab -> Relay buttom;

或者http://technet.microsoft.com/en-us/library/aa996446(v=EXCHG.65).aspx

2 Intern

 • 

1.2K 消息

2013年8月6日 20:00

在操作系统的命令行里试过这个命令吗?如果操作系统里面运行该命令也出错,那就是网络或者邮件服务器或邮件客户端有问题了,恐怕需要联系你们的网络或邮件服务器管理员来诊断一下。

1 Rookie

 • 

79 消息

2013年8月6日 20:00

不好意思,可能没有完全说清楚。客户有几个不同地方的分公司使用的配置是一样,但是就这个广州的有问题。另外这段命令我在解释一下:

smtpmail - s"chgpwr8cinc04 Backup Status Notification" -h xx.xxx.xxx.25 -p 25 xxxx.@xxxx

其中-p后面跟的是邮件服务器的端口号,另外由于保密客户的邮件地址和邮件服务器的地址我就用x表示了。

1.8K 消息

2013年8月6日 23:00

确定防火墙那边畅通么?测试下双向端口都通么?

1 Rookie

 • 

79 消息

2013年8月6日 23:00

对的,在操作系统的命令行里试过这个命令了,还是报错。就是一开始帖子里的错误信息。在Netwroker中没有报错信息,也没有邮件发出。

1 Rookie

 • 

79 消息

2013年8月6日 23:00

双向端口?Networker Server ping和telnet Exchange server都是通的。自身还需要开什么端口吗?其他几个不同地方的Netwroker Server都是好的

1 Rookie

 • 

79 消息

2013年8月7日 00:00

只是能够telnet能从SMTP 25端口连通Exchange Server,exchange上的设置我要去找专门管理的人试试了。另外我把这个接受邮箱放到了其他正常的机器上去了。明天看看结果先。

1 Rookie

 • 

79 消息

2013年8月7日 01:00

好的,明天看结果。谢谢

2 Intern

 • 

4K 消息

2013年8月7日 01:00

为了防止open mail relay,多数公司会在SMTP服务器上限制发送者的域名。如果确认Exchange Server正常的话,那就指定一下from address为公司域名的邮箱地址看看。

1.2K 消息

2013年8月7日 01:00

其实,只要收件人的邮件域名地址是Exchange Server所负责的邮件域名(即在其Authoritative Domain列表上),发件人的域名无所谓是什么,Exchange Server都不会认为Relay,因为收件人是本组织内的local用户。当然,如果要通过公司A的Exchange Server把邮件发送到公司B的邮件域名地址(公司B的邮件域名地址不属于公司A Exchange Server的Authoritative Domain),那么这个就是Relay了。一般如确有Relay的需要,Exchange Server上可以指定特定的某台或某个网段内的主机通过Exchange Server进行Relay。

具体是啥问题,还是明天等楼主拿进一步的测试结果来看吧,如果是Relay的问题,telnet测试里直接能看到类似 5.4.1 Unable to Relay 或Relay Access Denied的报错。

1 Rookie

 • 

79 消息

2013年8月16日 02:00

终于搞定了,谢谢各位。最后可能还是开端口的家伙工作不地道

1.8K 消息

2013年8月17日 04:00

问题解决就好。

您说的开端口,是否就是我之前提到的防火墙、端口问题?

1 Rookie

 • 

79 消息

2013年8月17日 20:00

不知道,是猜测的。用户又将需要开通的信息上报给网络管理部门。过了一天后就发现好了

找不到事件!

Top