当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > RedHat6.2服务器配置方案大全(六):Sendmail

Linux服务器
linux下用cron定时执行任务的方法
.htaccess绑定域名到子目录的方法
linux apache下虚拟主机配置方法
apache 局域网访问配置方案
linux Apache服务器系统安全设置与优化
linux中mac地址绑定方法
linux托盘不断闪烁之解决方法
Apache配置 虚拟转向实例
Apache No space left on device的解决办法
Apache rewrite的重写相关的参数说明
LINUX入门级常用命令20条整理
Ubuntu设置开机自动挂载所有格式硬盘分区
5个可能被你忽略的Linux安全设置方法
学习Apache的mod rewrite、access写法
改版时保留原链接,创建新的URL的方法
rsync中文手册之使用rsync实现网站镜像和备份linux
rsync 数据同步使用详解
linux URL的301重定向代码分析
eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
Apache服务器二级域名的完美实现

Linux服务器 中的 RedHat6.2服务器配置方案大全(六):Sendmail


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 65 ::
收藏到网摘: n/a


作者:汤海京

第六章Sendmail
6.1简介
邮件服务是用户所需要的最重要的网络服务。Web的通信量很大,但邮件主要用于个人之间的通信,而人-人的通信是商务的基础。没有邮件服务的网络是不完整的网络。换句话说,如果不能给用户提供完整的TCP/IP下的邮件支持,这样的网络操作系统也不值得信赖。

配置sendmail是一件大而复杂的工作,但也不完全都是这样,与其他一些网络服务器系统只安装SMTP服务器软件的情况相比,Linux已经配置好了多数的设置。在多数系统下,缺省配置都能良好的运行。我将在本章中给出一些配置的建议,主要的一些配置参数建议大家不要随意更改。

6.2所需系统资源
6.2.1配置文件:

文件来源

/etc/sendmail.cfsendmail-8.9.3-20.i386.rpm

/etc/sendmail.cwsendmail-8.9.3-20.i386.rpm

6.2.2相关工具:

文件来源

/etc/rc.d/init.d/sendmail sendmail-8.9.3-20.i386.rpm

6.3配置方案
1./etc/sendmail.cfsendmail的主配置文件

作用:

控制sendmail运行时的配置。完整的sendmail配置应该包括7部分:

LocalInfo(本地信息):这部分定义了本地主机的信息

Options(选项):用来设置定义sendmail环境的选项。

MessagePrecedence(消息的优先级):sendmail消息的优先级

TrustedUsers(信任用户):定义发送邮件时允许改变发送地址的用户

FormatofHeaders(头格式):定义在sendmail中插入的邮件头信息

RewritingRules(改写规则):这部分保存着改写邮件地址命令使用该命令可以将邮件地址从用户邮件程序的地址形式改写为邮件发送程序所需要的地址形式。

MailerDefinition(邮寄者说明):定义发送邮件的程序,改写规则是邮件者使用的规则,在本部分定义。

其实,配置一个完整的sendmail服务器是一件极其复杂的工程,然而对于我们所适用的范围来说,很多的功能是没有必要的,所以我想以一个简单的例子来说明我们的配置,也就是说,没有被提出的配置在一般情况下是不需要我们的管理员来考虑的,你按照默认的做就可以了。

实例:

V8/Berkeley

Cwlocalhost

Fw/etc/sendmail.cw

CP.

DYuunet.uu.net

CPUUCP

DSthj.mycompany.com

CO@%!

C..

C[[

Kmailertablehash-o/etc/mail/mailertable

#制作db库

Kdomaintablehash-o/etc/mail/domaintable

Kgenericshash-o/etc/mail/genericstable

Kvirtuserhash-o/etc/mail/virtusertable

Kaccesshash-o/etc/mail/access

Kmxservedbestmx-z:-T

Kresolvehost-a-T

FR-o/etc/mail/relay-domains

DR

DH

Kdequotedequote

CMroot

DMthj.mycompany.com

#设置邮件服务器名称

DnMAILER-DAEMON

CPREDIRECT

DZ8.9.3

OSevenBitInput=False

OEightBitMode=pass8

OAliasWait=10

OAliasFile=/etc/mail/aliases,/etc/mail/majordomo

OMinFreeBlocks=100

#规定最小空闲块

OMaxMessageSize=1000000

#指定用户一次最大发送的邮件大小

OBlankSub=.

OHoldExpensive=False

ODeliveryMode=background

OAutoRebuildAliases=true

OTempFileMode=0600

OHelpFile=/etc/mail/sendmail.hf

OSendMimeErrors=True

OForwardPath=$z/.forward.$w:$z/.forward

OConnectionCacheSize=2

OConnectionCacheTimeout=5m

OUseErrorsTo=False

OLogLevel=9

#记录到日志文件的事件等级

OCheckAliases=False

OOldStyleHeaders=True

OPrivacyOptions=authwarnings,noexpn,novrfy

OQueueDirectory=/var/spool/mqueue

OTimeout.queuereturn=4d

OTimeout.queuewarn=4h

OSuperSafe=True

OStatusFile=/var/log/sendmail.st

ODefaultUser=8:12

OSmtpGreetingMessage=$jSendmail$v/$Z;$b

OUnixFromLine=From$g$d

OOperatorChars=.:%@!^/[]+

Pfirst-class=0

Pspecial-delivery=100

Plist=-30

Pbulk=-60

Pjunk=-100

Ft-o/etc/mail/sendmail.ct

Troot

Tdaemon

Tuucp

R$*$#[email protected]$:"550Relayingdenied"

#以上是Linux默认的选项,不允许客户机使用mail服务器收发邮件,如果允许客户机收发的话应将上边一句话改成

R$-$@ok

#注意:中间是两个tab键

#一下是邮件头信息

H?P?Return-Path:<$g>

HReceived:$?sfrom$s$.$?_($?s$|from$.$_)

H?D?Resent-Date:$a

H?D?Date:$a

H?F?Resent-From:$?x$x<$g>$|$g$.

H?F?From:$?x$x<$g>$|$g$.

H?x?Full-Name:$x

H?M?Resent-Message-Id:<$t.$i@$j>

H?M?Message-Id:$t.$i@$j

#以上是邮件头信息

2.管理员需要执行touch/etc/mail/aliases和touch/etc/mail/majordomo来创建两个文件,然后重新启动sendmail,利用sendmail.cf里生成db库的配置来生成两个库文件:aliases.db和majordomo.db;当然,管理员也可以通过执行makemaphashmailertable
6.4测试及管理方法
1.管理员可以通过执行/etc/rc.d/init.d/sendmailrestart来使更改的配置生效。

2.管理员通过执行fetchmail-uyournameyourserver来为没有邮件用户制定他们的口令,用户需要在客户端作相应的设置。

3.管理员应该打开pop3服务,即更改配置文件

4.管理员在服务器上可以通过执行echotest|/usr/sbin/[email protected]来测试建立好的邮件用户是否能够正常工作。

6.5本章小结
其实我们只要设置其中的几个地方就可以实现mail服务器的功能,这是因为sendmail有很强的适用性,并且它是在不断更新的。所以现在提供给我们的sendmail的配置方案已经经过实践检验,不需要管理员做太大改动,就可以实现强大的sendmail功能。