配置你的第一台e-mail服务器(上)

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

SendMail最初是1979年由EricAllman编写而成。它起先运行在BSD4.0平台上。但这个程序不够灵活,每次编译的时候都需要重新配置。随着TCP协议和其他方面的发展,它本身的不灵活性已经明显不能满足日益增长的需求。EricAllman决定重新编写SendMail,从而诞生了现在的MTA标准。这是对SendMail的简短介绍.我们这篇文章主要是示范如何在一台新装的redhat7.1上用配置SendMail8.11.2服务,构架你的e-mail服务器。

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[page]

  
但这个仅仅表示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来查看是不是已经更改了.如你所看到的,SendMail的监听端口现在是eth0的ip地址:192.168.100.134了。

以下为引用的内容:
  [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已经可以接收来自外部的连接了。我们还需要设定SendMail允许接收的域名。这个可以在/etc/mail/local-host-names文件中设定。就把域名输入进去就可以了:
  

以下为引用的内容:
  #local-host-names-includeallaliasesforyourmachinehere.
  blank.com

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

时间: 2024-11-08 19:37:23

配置你的第一台e-mail服务器(上)的相关文章

J2EE应用程序部署:每台应用程序服务器上部署一个应用程序还是多个应用程序

引言 J2EE 规范 对将 J2EE 应用程序打包成一个文件扩展名为 EAR(Enterprise Archive( 企业压缩文档))的文件进行了定义,并且规定这些应用程序彼此独立.然而,该规范对 于如何最佳部署应用程序却只字未提.您是应该选择在每台应用程序服务器上只部署一个 J2EE 应用程序(EAR 文件)?还是应该在单独一台应用程序服务器上部署多个 J2EE 应用 程序(EAR 文件)? IBM WebSphere Application Server支持这两种选择.您应该选择哪种方式 ?

Google创业时第一台自攒服务器曝光

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断淘宝客 站长团购 云主机 技术大厅 应该说是第一套服务器集群 可以看到每台Pc有两个Intel处理器和两块IDE硬盘,这也是google pizza box的典型配置. 再看看现在

问个应该不难的问题:文件能不能上传到另一台服务器上??

问题描述 请高手指点一个问题:最近公司在写套系统,需要上传文件,因为文件比较大,而且多个分公司都要使用,所以想代码放在一台共用的服务器上(比较方便修改更新),而上传的文件,每个分公司一台服务器,上传的文件分别放在自己的服务器上.(通过登录账号可以判断出是那个分公司的人在用.)这样的效果能否实现? 解决方案 解决方案二:既然多个分公司都要使用,那么为什么不把文件都放到同一个服务器上,每个分公司一个文件夹,而要分别放到多个服务器上?非要这么做也不是不可以,不过你要保证每个分公司的服务器互相都能访问,

Fedora 12服务器上安装Apache2+PHP+MySQL

LAMP是Linux, Apache, MySQL, PHP的缩写.这篇教程将教你如何在一台Fedora 12服务器上安装Apache2web服务器+PHP(mod_php) +MySQL . 我已经测试无误,你可以放心使用. 1. 前言 在这篇教程中,我使用的主机名为server1.example.com,ip地址是192.168.0.100.这些设置可能与你想要的有所不同,所以你必须在适当的地方修改一下. 2 安装MySQL5 用下列命令安装MySQL: yum install mysql

各位大神们,帮帮小弟!javaweb下载ftp不是下载到本机,而下载到服务器上!怎么才能下载到本机!

问题描述 publicstaticbooleandownFile(Stringurl,//FTP服务器hostnameintport,//FTP服务器端口Stringusername,//FTP登录账号Stringpassword,//FTP登录密码StringremotePath,//FTP服务器上的相对路径StringfileName,//要下载的文件名StringlocalPath//下载后保存到本地的路径){booleansuccess=false;FTPClientftp=newFTP

WIN2008 R2 Active Directory 之一 部署企业中第一台Windows Server 2008 R2域控制器_win服务器

前言 对于活动目录(AD)来讲,从Windows 2000到现在有非常多的文章在对其进行探讨,微软公司每推出一代新的Windows系统,这一重要服务技术不管是从功能上还是从性能上都在不断进步.在此,以最新Windows Server 2008 R2(以后简称WIN08R2)系统为例,从零开始讲述关于WIN08R2活动目录相关技术.希望能一直坚持写完! --胖哥 通过多年来AD在企业中的部署,技术人员几乎都知道与活动目录相关的一系列概念了,如:域.域树.域林.OU和站点,还有域控制器(DC)等.那

配置Win2003自带mail服务器

  一.安装POP3和SMTP服务组件 Windows Server 2003默认情况下是没有安装POP3和SMTP服务组件的,因此我们要手工添加. 1.安装POP3服务组件 以系统管理员身份登录Windows Server 2003 系统.依次进入"控制面板→添加或删除程序→添加/删除Windows组件",在弹出的"Windows组件向导"对话框中选中"电子邮件服务"选项,点击"详细信息"按钮,可以看到该选项包括两部分内容:

同一javaweb项目在同样配置的两台Linux服务器上,一台能正常访问,另一台就报错!

问题描述 同一javaweb项目在同样配置的两台Linux服务器上,一台能正常访问,另一台就报错! java.lang.reflect.InvocationTargetException sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) sun.reflect.Delega

《精通Nginx》一1.3 配置Web或者mail服务器

1.3 配置Web或者mail服务器 Nginx是一个独一无二的高性能Web服务器,它也被设计成为一个邮件代理服务器.根据你构建Nginx的目标,可将其配置成一个Web加速器.Web服务器.邮件代理,或者是集所有为一体.你可以将任何服务安装在一个二进制文件中,这样做的好处是可以通过配置文件来设置Nginx服务器的角色,或者根据需要在高性能的环境中安装一个瘦身的二进制Nginx文件. 1.3.1 邮件代理的配置选项 表1-3是邮件模块独有的配置选项. 对于典型的mail代理,我推荐将Nginx配置