哈尔滨海月数据恢复,技术亚洲领先 设为首页加入收藏RSS订阅
中国区:哈尔滨(总部)郑州福建深圳沈阳合肥大连包头淄博上海广州
    南京杭州嘉兴武汉济南青岛新疆太原
亚太区:印度韩国泰国新加坡马来西亚澳大利亚
Linux
Linux系统下如何配置e-mail服务器?

  随着互联网的发展,e-mail迅速成长成为主要的网络信息传递工具。面对大量要求能够快速,廉价,和高可信赖的e-mail需求,很多公司和个人都把linux提供的服务作为满足这些需求的解决方案。

  redhat7.1默认安装的时间已经安装了SendMail8.11服务.因为redhat安装使用都非常的简单,我们这里就忽略安装过程,相关资料请查阅redhatCD里的文档.要使你的新e-mail服务器正常工作,必须先解决DNS问题.把你的e-mail服务器的主机名和ip地址加入到DNS中,并用nslookup来确认:

  [root@testmail/root]#nslookup-siltestmail.blank.com

  Server:192.168.100.1

  Address:192.168.100.1#53

  Name:testmail.blank.com

  Address:192.168.100.134

  同样你也要试一下反向域名解析,这个对防止邮件延迟有很重要的作用.现在大部分的邮件服务器都是把反向域名解析作为邮件传送时认证的一部分.所以用的你ip地址来试一下反向域名解析是否正确.

  [root@testmail/root]#nslookup-sil192.168.100.134

  Server:192.168.100.1

  Address:192.168.100.1#53

  134.100.168.192.in-addr.arpaname=TESTMAIL.blank.com.

  正如你所看到的,DNS服务工作正常,接下去就让我们动手来配置SendMail服务.redhat7.1默认安装已经可以使SMTP服务在本机运行.你用netstat-nl可以看到所有后台程序监听的端口,注意这一行:127.0.0.1:25,这个表示SendMail服务已经在监听本机的25(SMTP)端口了:

  [root@testmail/root]#netstat-nl

  ActiveInternetconnections(onlyservers)

  ProtoRecv-QSend-QLocalAddressForeignAddressState

  tcp000.0.0.0:327680.0.0.0:*LISTEN

  tcp000.0.0.0:1110.0.0.0:*LISTEN

  tcp000.0.0.0:220.0.0.0:*LISTEN

  tcp00127.0.0.1:250.0.0.0:*LISTEN

  udp000.0.0.0:327680.0.0.0:*

  udp000.0.0.0:6670.0.0.0:*

  udp000.0.0.0:1110.0.0.0:*

  ActiveUNIXdomainsockets(onlyservers)

  ProtoRefCntFlagsTypeStateI-NodePath

  unix2[ACC]STREAMLISTENING1119/dev/gpmctl

  unix2[ACC]STREAMLISTENING1172/tmp/.font-unix/fs7100

  但这个仅仅表示e-mail服务器只接收你本机的邮件.为了解决这个问题,你必须修改配置,告诉SendMail去监听你对外的网卡地址.假设你的服务器上只安装了一块网卡(eth0),并用ifconfig配置好你的ip地址.这个地址可以和DNS解析的地址不一样,但你要保证DNS可以正确地解析邮件服务器的地址.这里我们使用的地址是一样的(推荐):

  [root@testmail/root]#ifconfig

  eth0Linkencap:EthernetHWaddr00:60:97:DE:E9:99

  inetaddr:192.168.100.134Bcast:192.168.100.255Mask:255.255.255.0

  UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1

  RXpackets:12421errors:0dropped:0overruns:0frame:0

  TXpackets:5errors:0dropped:0overruns:0carrier:0

  collisions:0txqueuelen:100

  Interrupt:10Baseaddress:0xe000

  loLinkencap:LocalLoopback

  inetaddr:127.0.0.1Mask:255.0.0.0

  UPLOOPBACKRUNNINGMTU:16436Metric:1

  RXpackets:6errors:0dropped:0overruns:0frame:0

  TXpackets:6errors:0dropped:0overruns:0carrier:0

  collisions:0txqueuelen:0

  可以看到这台主机的eth0的ip地址是192.168.100.134.现在修改/etc/SendMail.cf文件来配置SendMail的监听端口:

  #SMTPdaemonoptions

  ODaemonPortOptions=Port=smtp,Addr=127.0.0.1,Name=MTA

  更改为

  ODaemonPortOptions=Port=smtp,Addr=192.168.100.134,Name=MTA

  改完后保存退出,并且重新启动SendMail服务:

  [root@testmail/root]#/etc/init.d/SendMailrestart

  ShuttingdownSendMail:[OK]

  StartingSendMail:[OK]

  [root@testmail/root]#

  现在可以用netstat-nl来查看是不是已经更改了.

  [root@testmail/root]#netstat-nl

  ActiveInternetconnections(onlyservers)

  ProtoRecv-Qsend-QLocalAddressForeignAddressState

  tcp000.0.0.0:327680.0.0.0:*LISTEN

  tcp000.0.0.0:1110.0.0.0:*LISTEN

  tcp000.0.0.0:220.0.0.0:*LISTEN

  tcp00192.168.100.134:250.0.0.0:*LISTEN

  udp000.0.0.0:327680.0.0.0:*

  udp000.0.0.0:6670.0.0.0:*

  udp000.0.0.0:1110.0.0.0:*

  ActiveUNIXdomainsockets(onlyservers)

  ProtoRefCntFlagsTypeStateI-NodePath

  unix2[ACC]STREAMLISTENING1119/dev/gpmctl

  unix2[ACC]STREAMLISTENING1172/tmp/.font-unix/fs7100

  [root@testmail/root]#

  如你所看到的,SendMail的监听端口现在是eth0的ip地址:192.168.100.134了.

  现在SendMail已经可以接收来自外部的连接了.我们还需要设定SendMail允许接收的域名.这个可以在/etc/mail/local-host-names文件中设定.就把域名输入进去就可以了:

  #local-host-names-includeallaliasesforyourmachinehere.blank.com保存退出后重新启动SendMail服务:/etc/init.d/SendMailrestart.这样SendMail就可以接收来自多个域的信件了.如果你需要再增加新的域,只有修改这个文件就可以了.

  现在的e-mail服务器在本机上已经可以完全正常的工作.它已经可以接收来自任何地方的信件(允许的域),但如果想要发送和传递邮件,则必须在这台电脑上执行.如果你的用户都直接登录到你的服务器上来发送邮件,则不需要更改任何配置,如果你希望大部分或者所有的用户可以在远程主机上使用该e-mail服务器,例如利用KMail和OutlookExpress等客户端工具,则你必须更改配置来允许这些主机使用你的e-mail服务器.你需要在/etc/mail/access文件中加入下面一行,保存后运行makeaccess.db的命令来生成access.db文件.

  blank.comRELAY

  改完后的access文件应该是这样的:

  #Checkthe/usr/share/doc/SendMail-8.11.2/README.cffilefora

  description

  #oftheformatofthisfile.(searchforaccess_dbinthatfile)

  #The/usr/share/doc/SendMail-8.11.2/README.cfispartofthe

  SendMail-doc

  #package.

  #

  #bydefaultweallowrelayingfromlocalhost...

  localhost.localdomainRELAY

  localhostRELAY

  127.0.0.1RELAY

  blank.comRELAY

  然后运行:

  [root@testmailmail]#makeaccess.db

  [root@testmailmail]#

  这个makeaccess.db命令把你的新的设定添加到SendMail的hash数据库里.SendMail用它来判断允许那些主机通过你的e-mail服务器来传递邮件.而且这样还可以通过设定子网(例如:192.168)来限制该域.但你要注意,这样设定就对外开放了,可能会有人发大量的垃圾信件来攻击你的系统.

  现在你可以收到所有来自外部的邮件.并且允许信赖的客户在远程传递信件.接下去你想要做的可能是如何在远程收取这些信件.要达到这个目的,你需要安装IMAP或者POP.redhat7.1默认安装的时候并没有安装POP/IMAP,所以你需要安装imap-2000-9rpm包.要查看这个包的安装状态,可以用下面的命令:rpm-aq grep-iimap.如果发现没有安装,那就把redhat7.1第二张安装光盘放到光驱里.然后运行如下命令:

  [root@testmailmail]#mount/dev/cdrom/mnt/cdrom

  mount:blockdevice/dev/cdromiswrite-protected,mountingread-only

  (SuccessfulMountofRead-OnlyMedia)

  mount上光盘后运行这个命令来安装这个包:rpm-Uvh/mnt/cdrom/RedHat/RPMS/imap-2000-9.i386.rpm.

  [root@testmailmail]#rpm-Uvh/mnt/cdrom/RedHat/RPMS/imap-2000-9.i386.rpm

  Preparing...###########################################[100%]

  1:imap###########################################[100%]

  再运行一次rpm-aq grep-iimap

  IMAP包就罗列出来了。

  [root@testmailmail]#rpm-aq grep-iimap

  imap-2000-9

  [root@testmailmail]#

  当正确的包被安装后你要打开POP3的连接端口,这需要修改/etc/xinetd.d/下面的ipop3文件,把disable的值改成no。这个文件大致是这样的:

  #default:off

  #description:ThePOP3serviceallowsremoteuserstoaccesstheirmail

  #usinganPOP3clientsuchasNetscapeCommunicator,mutt,

  #orfetchmail.

  servicepop3

  {

  socket_type=stream

  wait=no

  user=root

  server=/usr/sbin/ipop3d

  log_on_success+=USERID

  log_on_failure+=USERID

  disable=no

  }

  接下去重新启动xinetd来是它生效:

  [root@testmailxinetd.d]#/etc/init.d/xinetdrestart

  Stoppingxinetd:[OK]

  Startingxinetd:[OK]

  [root@testmailxinetd.d]#

  现在就可以发送一封测试邮件到你的e-mail服务器,并且用你熟悉的收信工具来收取这封信。应该是没有问题的。

  下面优化一下服务器的性能。或许你会收到这样的抱怨,说是当客户端程序运行在防火墙后面的话会发生连接pop端口速度变慢。

  造成这个延时的原因是你的e-mail服务器初始一个IDENT会话来确认客户端的身份。如果这个询问没有反应,那服务器就会在5秒后发出一个超时信号。这个值可以降低到1秒,从而减少IDENT产生影响。修改/etc/SendMail.cf文件,把timeout的值改成你想要的值。

  #timeouts(manyofthese)

  #OTimeout.ident=5s

  changeto

  OTimeout.ident=1s

  现在你的e-mail服务器可以给你的用户提供服务了。Linux将会为你的e-mail服务提供一个稳定的,******的平台。如果想了解更多的关于SendMail的知识

 
客户服务 +more
上门服务
服务承诺
异地恢复
收费标准
付款方式
疑难解答
服务特色 +more
·免费检测
·免费提供3天备份
·专业工程师提供服务
·免费清洁送修的介质
·数据恢复前报价,客户确认后工程师开始数据恢复
·数据恢复不成功不收费
·与客户签订保密协议,对客户的数
 据严格保密,整个恢复过程不会对
 客户的原盘有任何的写操作,以确
 保原盘的数据完全

·免费参观恢复全过程

·工程师在线免费咨询

·专业工程师提供服务
服务器数据恢复 点击这里给我发消

息
数据库修复
点击这里给我发

消息
硬盘数据恢复
点击这里给我发消

息