您的位置:首页 > 大数据 > 人工智能

suse配置sendmail

2010-08-03 08:24 183 查看
根据图19-1的流程分析可知,MTA主要的功能就是收信与信件转发,即Relay,上一小节提到收信的部分主要与监听接口以及主机名称有关,那能否应用Relay的功能呢?这就是本小节所需要了解的内容。

在SendMail的默认情况下只有SendMail服务器本机(localhost)可以进行信件转发,其他任何客户端都无法使用这台MTA。也就是说,除非您在这台MTA上使用Mail指令,或者使用X Window内的MUA来发信,其他的非本机用户都没有应用Relay的能力。那么这台MTA还有什么用途呢?所以,需要针对客户端的Relay功能进行开放。这个设置需要十分小心,从而避免MTA变成Open Relay的不良状态。

SendMail使用/etc/Mail/access文件来设置开放Relay或者是抵挡Relay的功能,这个文件内的格式如下。

• 规范的范围或规则:SendMail的操作。
• IP/部分IP/主机名/E-mail等:RELAY/DISCARD/REJECT。

在这两个字段之间最好使用键作为分隔,假设要让内部的192.168.1.0/24网段、140.116.44.202主机,以及在中国台湾地区教育部门(ncku.edu.tw)所管辖范围内的主机名称都能使用这台MTA的话,可进行如下设置:

 

[root@linux ~]# vi /etc/Mail/access
localhost.localdomain           RELAY
localhost                       RELAY
127.0.0.1                       RELAY
192.168.1                       RELAY
140.116.44.202                  RELAY
.edu.tw                         RELAY

[root@linux ~]# cd /etc/Mail
[root@linux Mail]# makemap hash access < access
# 上面这个操作在“制作出hash格式的数据库”,请利用man makemap 即可了解

 

进行上述操作后,整个内部网段以及外部的其他固定IP主机都能够使用您的MTA来进行Relay了。不过非固定IP还是会有点困扰,因此还可以利用其他认证方式来开放使用权限。更多的Access用法将在Postfix章节中进行介绍。

对SendMail进行上述设置后,您的MTA已经可以接收信件了,也可以接收内部或特定IP的Relay信件,其他更多的设置方式可以参考SendMail的官方网站。由于Postfix本来就是用于兼容SendMail的,所以下面继续介绍Postfix的相关设置方法,您也可以用在SendMail的配置上。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

以前没有用过suse,现应公司要求,在suse 10上配置sendmail,原以为和redhat as3 中的配置一样呢?最后结果,让我迷惑啊!!!
以下是我用outlook测试时的错误信息:
    登录邮件服务器时出错。“用户名”被拒绝。 帐户: '192.168.1.11', 服务器: '192.168.1.111', 协议: POP3, 服务器响应: '-ERR Unknown AUTHORIZATION state command', 端口: 110, 安全(SSL): 否, 服务器错误: 0x800CCC90, 错误号: 0x800CCC91

   也就是他要求输入用户,密码,进行验证.但怎么通不过验证.

那位suse高手,大侠请指点,小弟不胜感谢!!!!!!

zzw1 发表于 2006-08-11 15:59
请suse linux指点啊,小弟等待中..:P

zzw1 发表于 2006-08-11 16:11
那位大侠如果用过suse sendmail,请不吝赐教啊,小弟快疯了!!!:roll:

zzw1 发表于 2006-08-11 23:04
怎么没有高手参与呢?
那位高手帮看看,小弟向:lol:你鞠躬了!!!!

kenduest 发表于 2006-08-11 23:40
原帖由 zzw1 于 2006-8-11 15:50 发表
以前没有用过suse,现应公司要求,在suse 10上配置sendmail,原以为和redhat as3 中的配置一样呢?最后结果,让我迷惑啊!!!
以下是我用outlook测试时的错误信息:


你启动的是 imap 软件包的 pop3/imap 服务,该版本只有支援 over ssl 存取,纯密码登入验证被禁止。

详细部份请先看 /usr/share/doc/packages/imap*/ 内的文档。

你可以考虑选择使用 qpopper。

==

zzw1 发表于 2006-08-12 09:47
小弟先谢过大侠了,我回头试试!!!!!

fish007 发表于 2006-08-12 10:37
最好最快的方法就是先向novell技术员咨询

zzw1 发表于 2006-08-12 11:08
楼上的大侠,你说的没那么容易哦,我用的没有license,vovell的收费很高的,好几个dollar每份啊!!!我从很多资料了解,都说novell suse linux代表着linux的发展方向啊!!!所以公司从redhat as3改用suse enterprise。唉,这下我惨了,从未和suse linux谋面过,有的系统移植有的搞,所以请求suse的世外高人多多指点啊!!!救小弟于水深火热中。我google和baidu很长时间,很少有suse的资料,请求suse高手不要这么吝惜你们的成长过程中的经历和成名过程中的手稿啊!!请多多传授经验和上传你的宝典资料。给我们这些菜鸟解惑!!!
  小弟再次向你们鞠躬了:lol:

zzw1 发表于 2006-08-12 11:11
kenduest 高人,我试过好像不行:cry:
你能说明的更详细点吗??
小弟,谢谢过了

kenduest 发表于 2006-08-12 12:41
原帖由 zzw1 于 2006-8-12 11:11 发表
kenduest 高人,我试过好像不行:cry:
你能说明的更详细点吗??
小弟,谢谢过了


你在说哪部分不行 ?

请停止你的 imap 软件内提供的 pop3/imap 服务, 你的服务应该是在 /etc/xinetd.d/imap 内开启的, 都把 disable 叙述改成 yes (disable = yes), 然后使用 rcxinetd restart 让变更生效.

rpm -qa | grep qpopper 确定一下该软件包是否有装, 没有就执行 yast -i qpopper 由 cd disc 自动安装上. 而 rpm -ql qpopper 看一下你可以发现到该服务也是 xinetd 启动, 所以请修改 /etc/xinetd.d/qpopper 档案内的 disable 叙述改成 no (disable = no), 然后执行 rcxinetd restart 即可生效.

qpopper 只有 pop3 服务而已,请先注意到这点. 而另外若是你要使用 imap 包内的服务, 你得自己改用 pop3s 与 imaps 的加密连线存取, 不过你得建立 SSL 相关凭证后才可以使用. 这部份请参阅 /usr/share/packages/imap*/ 目录内的 README.SUSE 这类文档的说明.

==

zzw1 发表于 2006-08-12 14:31
好的,我按照的指导做一做,顺便问下,sendmail.cf应该不要修改什么??
谢谢,kenduest!!!!

zzw1 发表于 2006-08-12 14:54
先谢过,kenduest!!!
顺便问下,sendmail.cf应该不要修改什么吧?

zzw1 发表于 2006-08-12 22:22
kunduest,您果然是高手,问题解决了,谢谢,大侠仗义出手帮忙啊!!!
ken大侠,不知能否给小弟一些学习suse的意见呢?说白了suse和 rehat有哪些不同啊!!!
如果kun能给些,suse方面的资料那再好过了,哈哈。网上是在不好找这方面的。
哈哈:lol:,要求多了点,多多包含哦!!!
再次感谢些,ken大侠仗义和江湖侠义风范!!!

kenduest 发表于 2006-08-12 23:10
原帖由 zzw1 于 2006-8-12 22:22 发表
kunduest,您果然是高手,问题解决了,谢谢,大侠仗义出手帮忙啊!!!
ken大侠,不知能否给小弟一些学习suse的意见呢?说白了suse和 rehat有哪些不同啊!!!
如果kun能给些,suse方面的资料那再好过了,哈哈。 ...


都是 linux 发行版本,管理方式几乎根本是大同小异吧?

就我认知 suse 与 redhat 这两者系统配置文档来说,感觉几乎没啥差别,一般人可能感觉有差大概是网路组态的配置方式,因为文档名称配置的确有很大差别。至于其他一般服务配置感觉其实根本一样,重点是基本的系统与服务管理弄清楚就可以了。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

我不知道你们为什么会认为默认sendmail就会监听外部端口!
首先你使用netstat -natp 会看到 127.0.0.1 :25端口被sendmail监听且 eth0的25端口根本就没有被sendmail监听,所以你当然telnet不上去了!另外pop3和imap的端口是其他程序监听的而非sendmail !
默认不监听外部25端口的目的是防止成为垃圾邮件发送站!解决此问题的最快捷方式是编辑/etc/mail/sendmail.cf文件,找到

O DaemonPortOptions=Port=smtp,Addr=127.0.0.1, Name=MTA

把它用“#”号注释掉!然后从新启动sendmail服务!

#service sendmail restart

 

 

 

 

 

 

 

Microsoft 产品线中有 SMTP 的多个不同变体。Microsoft Windows 产品线的 SMTP 服务包含在 Internet 信息服务 (IIS) 中,而在 Microsoft Windows NT Server 4.0 中,SMTP 服务包含在 Option Pack 中。在较新版本的 Windows 中,IIS 已被集成到操作系统中,并且您可以使用“控制面板”中的“添加或删除程序”添加 IIS。此外,Exchange 2000 和 Microsoft Exchange Server 2003 都使用 IIS 中的现有 SMTP 服务及其他功能。Microsoft Exchange Server 版本 4.0、5.0 和 5.5 均包含它们自己的 SMTP 版本,所采用的形式为 Internet Mail Connector (IMC) 或 Internet Mail Service (IMS)。

注意:在 Exchange 5.0 及更高版本中,Internet Mail Connector (IMC) 被重命名为 Internet Mail Service。

在启动 Telnet 会话之前,必须具有要将此测试邮件发送到的目标用户的完整 SMTP 电子邮件地址。该电子邮件地址必须采用以下格式:

User@Site.Domain.com
您也可以具有运行 SMTP 服务的服务器计算机的完全限定域名 (FQDN) 或 IP 地址(例如,10.120.159.1)。如果服务器在您的组织中,您可能已经拥有这些信息。如果服务器是外部服务器,查找这些信息最简单的方法是使用 Nslookup.exe 以找到包含这些信息的 DNS 记录。 有关 NSlookup 的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

200525  (http://support.microsoft.com/kb/200525/ ) 使用 NSlookup.exe
有关如何获取 Internet 邮件交换器记录的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:

203204  (http://support.microsoft.com/kb/203204/ ) XFOR:如何获取 Internet 邮件交换器记录

确保运行 SMTP 服务的服务器上已启动 SMTP。要测试 SMTP 是否已启动,您可以运行本文中列出的基本测试,并验证您是否会收到来自远程服务器的 220 消息。这还将验证 SMTP 是否正在运行。

注意:

有些 Telnet 应用程序要求您打开本地回显功能,以查看键入的命令。要在 Microsoft Telnet 会话中执行此操作,请在命令提示符处键入 set local_echo。

在 Microsoft Windows XP 中,应键入 set localecho 而不是 set local_echo。



回到顶端

基本测试

除本文前面列出的基本测试步骤外,您还可以使用送达回执对邮件进行双向测试。您可以使用此方法验证 SMTP 服务器是否可以接受入站连接,并且为发件人生成一个送达回执以测试 SMTP 服务器的出站连接。

要为测试邮件请求送达回执,请参见本文“基本测试”一节的第 4 步,以确保提供的信息是可以接收送达回执的有效电子邮件地址。然后在本文“基本测试”一节的第 5 步中,在 Telnet 会话中键入以下命令:

RCPT TO:User@Site.Domain.Com notify=success,failure
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息