红联Linux门户
Linux帮助

SMTP服务器的构建( Postfix )遇到的问题

发布时间:2009-06-29 11:37:36来源:红联作者:mingfeng01
[attach]17145[/attach]

帮忙看下图片中的错误提示

220 myhostname ESMTP unknow

请问是什么问题,要如何更正.

请大家帮忙.谢谢!
文章评论

共有 15 条评论

  1. mingfeng01 于 2009-07-01 09:23:48发表:

    谢谢你让我知道了RFC这份资料.

  2. wang7131984 于 2009-06-30 19:15:21发表:

    去RFC看看SMTP协议的过程你就明白了

  3. mingfeng01 于 2009-06-30 19:14:24发表:

    [i=s] 本帖最后由 mingfeng01 于 2009-6-30 19:16 编辑 [/i]

    我用”helo“来尝试,返回结果如下:

    [attach]17175[/attach]


    似乎跟用”ehlo“得到的结果相同。

  4. mingfeng01 于 2009-06-30 18:47:03发表:

    [i=s] 本帖最后由 mingfeng01 于 2009-6-30 19:05 编辑 [/i]

    引用:
    在SMTP服务器输入:telnet localhost 25

    连接上以后输入:ehlo localhost

    然后就开始进行验证用户名和密码的过程


    一般情况是,要验证用户名和密码,就需要输入用户名和密码。

    但上面只是输入了“ehlo“这个命令。如何能验证用户名和密码的对错?

    请问”ehlo“这个命令是已经带有用户名和密码了吗?

    或者:ehlo localhost 这个命令的意思是要SMTP服务自己进行用户名和密码的验证?

  5. mingfeng01 于 2009-06-30 18:39:35发表:

    引用:
    helo是smtp协议,客户机发送给服务器的第一个命令。而ehlo则是esmtp的第一个请求
    wang7131984 发表于 2009-6-30 15:49


    你这句话我分开理解一下,你看对不对。

    客户机发送指令"helo"是给-->smtp协议的服务器。 第一句话理解应该没错。

    第二句是指: 客户机发送请求"ehlo"到-->使用esmtp协议的服务器

    还是:esmtp协议的服务器发送请求"ehlo"至-->客户机。

    刚接触Linux,对她的运作比较陌生。很容易理解为歧义。希望你能理解。

  6. wang7131984 于 2009-06-30 15:49:34发表:

    smtp服务的验证功能应该是一个可选项,你看看你的配置文件是否开启了。另外可以使用helo来尝试。helo是smtp协议,客户机发送给服务器的第一个命令。而ehlo则是esmtp的第一个请求

  7. wang7131984 于 2009-06-30 15:45:11发表:

  8. mingfeng01 于 2009-06-30 13:41:46发表:

    [i=s] 本帖最后由 mingfeng01 于 2009-6-30 13:43 编辑 [/i]

    参照以上解释

    在SMTP服务器输入:telnet localhost 25

    连接上以后打这个命令:ehlo localhost

    然后就开始进行验证用户名和密码的过程

    而我的情况是在这个验证中没有通过(根据顶楼图片中的提示 220 myhostname ESMTP unknow )

    请问对吗?

  9. mingfeng01 于 2009-06-30 13:24:46发表:

    [i=s] 本帖最后由 mingfeng01 于 2009-6-30 13:27 编辑 [/i]

    Google翻译: 220 myhostname ESMTP unknow
    译为:我的主机ESMTP未知

    ESMTP,英文全称是“Extended SMTP”(扩展SMTP),顾名思义,扩展SMTP就是对标准SMTP协议进行的扩展。
    它与SMTP服务的区别仅仅是,使用SMTP发信不需要验证用户帐户,而用ESMTP发信时,服务器会要求用户提供用户名和密码以便验证身份。验证之后的邮件发送过程与SMTP方式没有两样。

  10. mingfeng01 于 2009-06-30 13:06:14发表:

    哦,原来是这样.

    但我还不能解读顶楼图片的中信息.

    比如:
    220 myhostname ESMTP unknow
    这行


    教程说:

    引用:
    验证是否smtp服务器已经开始运行:
    telnet localhost 25

    连接上以后打这个命令:
    ehlo localhost

    如果postfix已经正常启动应该看到这样一行字:

    250-STARTTLS

    以及:

    250-AUTH PLAIN LOGIN

    然后打入:
    quit
    退出这次连接。

  11. wang7131984 于 2009-06-30 12:43:48发表:

    日志文件保存位置根据你的postfix配置文件而定,你可以找找。你上面不是已经看到请求和应答了么。telnet是查看应用层协议最好的工具啊。

  12. mingfeng01 于 2009-06-30 08:23:47发表:

    请问我可以通过日志查看相关信息吗?

    如果可以请问这个日志文件在哪里?

    如果不可以通过日志查看SMTP的请求和答应,那么我如何可以查看SMTP的请求和答应呢?

  13. wang7131984 于 2009-06-29 19:36:17发表:

    这不是那个系统的事情,建议你看看SMTP协议请求和应答的过程。

  14. mingfeng01 于 2009-06-29 16:15:51发表:

    我用的是Centos5.3系统

    请问我怎样才可以进一步确定问题在哪里呢?

  15. wang7131984 于 2009-06-29 13:25:56发表:

    要经过用户名密码认证才能登录smtp服务器进行邮件传输。可能是你的用户名不正确,所以以后返回的都是250直到最后的500(5是严重错误)