服务器今日报价
·20万条报价,5万多款产品!
·注册淘宝会员购买便宜服务器

·北京 ·上海 ·广州
·杭州 ·深圳 ·合肥
·天津 ·西安 ·宁波
·南京 ·重庆 ·南宁

IT热点
  • 电脑硬件
  • 手机
  • MP4
  • 品牌机
  • 办公产品
  • 投影机
  • 服务器
  • 奥林巴斯
  • 尼康
  • 佳能
  • 阿尔卡特
  • 索尼
  • 微星
  • 七彩虹
  • 笔记本
  • 数码相机
  • 数码摄像机
  • 惠普
  • 戴尔
  • 联想
  • 诺基亚
  • 摩托罗拉
  • 索尼爱立信
  • LG
  • 西门子
  • 飞利浦
  • 华硕
  • 硕泰克
  • 首页 >> 服务器 >> 服务器教程指导
    [指导]Sendmail升级速成 [服务器教程指导]
    :http://noc.cstnet.net.cn
    2006-2-27 16:34:00 文/
      Sendmail作为邮件服务软件,一直以来,始终为各IT行业厂家的邮件服务器广泛使用,但由于Sendmail在设计当初,只考虑为用户提供邮件发送和接收等服务,并未对网络安全作过多考虑,因此这就为日后的网络黑客提供了攻击他人邮件服务器的可乘之机,即我们通常所说的"邮件转发"。

      邮件黑客正是利用了Sendmail的这一漏洞,利用某些服务器的SMTP不设防的缺陷,将自己的私人邮件通过他人的邮件服务器发向目的地,以满足一己私欲;更有甚者,利用他人邮件服务器,肆意的向外界的任意地址发送"垃圾邮件",这样做,不仅给他人的网络维护造成巨大损失,同时也给接收方带来的诸多不便。

      由于Sendmail自始至终一直作为邮件服务器的标准后台进程,并为广大服务器生产厂家所采纳,因此现阶段,想通过其它软件替代Sendmail做为邮件服务,似乎有远水难解近渴之感;当务之急,只有通过升级Sendmail来达到防止"邮件转发"的目的。

      鉴于篇幅有限,现只对Sendmail的实现做具体说明,有关Sendmail的详细原理,请读者查询相关文档。

      一. Sendmail的获取

      在一般情况下,将sendmail升级到sendmail.8.9.3即可达防止邮件服务器转发的功能。

      TIPS:可到以下WWW或FTP站点下在最新的sendmail版本:

      http://www.sendmail.org

      ftp://ftp.ncic.ac.cn

      ftp://ftp.pku.ac.cn

      ftp://ftp.tsinghua.edu.cn

      sendmail的源代码文件为:sendmail..8.9.3.tar.gz

      在获得sendmail.8.9.3.tar.gz后,可通过gunzip和tar命令将此文件解包。

      二. Sendmail的生成

      这是sendmail升级过程中较为重要的一步,它将生成sendmail可执行文件。

      1. 进入当前目录下的/src目录,编辑文件Makefile.m4

      将:MAPDEF= ifdef(`confMAPDEF', `confMAPDEF')

      改为:MAPDEF= ifdef(`confMAPDEF', `confMAPDEF',`NDBM')

      2. 在/src目录下,运行./Build进行编译。

      TIPS:在编译过程中,可能会出现:sh groff not found 的提示信息。

      可将Makefile.m4文件中有关groff的行注释掉即可:

      #NROFF= ifdef(`confNROFF', `confNROFF', `groff -Tascii')

      若想将编译结果直接安装到缺省目录下,可通过:

      ./Build install 来实现。

      若出现gcc not found 或cc not found,可在/usr/bin下做如下软连接:

      ln -s /usr/bin/gcc gcc的实际位置,或 ln -s /usr/bin/cc cc的实际位置。

      如果还出现上述信息,则需要你重新安装gcc或cc编译器。

      三. 生成配置文件sendmail.cf

      1. 进入sendmail-8.9.3目录下的cf/cf目录,编辑tcpproto.mc文件:

      将源代码:

      divert(0)dnl

      VERSIONID(`@tcpproto.mc 8.10 (Berkeley) 5/19/1998')

      OSTYPE(*Your Os Type)

      DOMAIN(*Your Domain Name)

      FEATURE(access_db,dbm -o /etc/mail/access)

      FEATURE(blacklist_recipients)

      FEATURE(nouucp)

      MAILER(local)

      MAILER(smtp)

      TIPS:在*Your Os Type一项中填写"你的系统类型"(例如:solaris2),该型文件可在sendmail-8.9.3目录下的/cf/ostype目录下查到。

      在*Your Domain Name一项中填写你的域名,并用单引号括起(例如:'cstnet.net.cn')

      这其中FEATURE(blacklist_recipients),也可省略。

      2. 进入sendmail-8.9.3目录下的cf/domain目录,将文件"generic.m4"更名为"你的域名.m4"(例如:cstnet.net.cn.m4)。

      3. 用m4编译生成sendmail.cf文件。在sendmail-8.9.3/cf/cf目录下执行: m4 ../m4/cf.m4 tcpproto.mc>sendmail.cf 在m4编译过程中不应该出现任何错误提示。

      四. 重新启动sendmail 在重新启动sendmail之前,需要做一些配置工作:

      1. 检查在/etc目录下是否存在sendmail.cw和aliases文件,若没有,需要建立此二文件:touch /etc/sendmail.cw /etc/aliases

      2. 检查是否存在/etc/mail目录,若没有,则建立此目录并在该目录下建立文本文件access,此文件非常重要,它是用来控制可用此邮件服务器发送邮件的IP地址。此文件将在后面做具体说明.

      3. 在sendmail-8.9.3/makemap目录下,运行./Build,此时在当前目录下会生成一个obj.xxx目录,在此目录下,已经生成了makemap可执行文件。

      TIPS:此时,可在/usr/bin下做makemap的软连接,以备将来使用: Ln -s /usr/bin/makemap makemap的实际位置

      4. 下面,我们对access文件的格式加以说明: 左边 右边 解释说明
      左边 右边 解释说明
      159.226.8.5 RELAY RELAY必须大写,表示允许159.226.8.5主机通过此邮件服务器发送和接收邮件,其余IP格式相同。
      159.226.8 RELAY RELAY必须大写,表示允许159.226.8这一个C通过此邮件服务器发送和接收邮件,其余网段格式相同。
      *aaa@cstnet.net.cn OK或RELAY OK或RELAY必须大写,表示允许aaa@cstnet.net.cn这个邮箱可通过此邮件服务器发送和接收邮件。
      *@cstnet.net.cn OK或RELAY OK或RELAY必须大写,表示允许域名 为cstnet.net.cn邮箱通过此邮件服务器发送和接收邮件。
      注释:带*号的格式在实际升级过程中往往不成立,一般情况下请读者不要使用。

      TIPS:在m4编译工程中,有可能出现:m4 not found的提示信息,此时之需要输入m4的完整路径(例如:/usr/bin/m4 ../m4/cf.m4 tcpproto.mc>sendmail.cf)即可。

      如果还未找到m4,那就需要你重新安装m4编译器了。

      这时,可将生成的sendmail.cf文件拷贝到/etc目录下,以备日后使用。

      5. 接下来需要用makemap(上文中已提到)将文本文件/etc/mail/access生成库文件:

      makemap dbm /etc/mail/access
      运行后,将在/etc/mail/目录下生成access.dir和access.pag两个库文件。

      6. 最后启动Sendmail

      执行:/usr/lib/sendmail -bd -q15m

      如果sendmail在缺省目录下,可直接执行:sendmail -bd -q15m

      如果sendmail.cf不再缺省目录下,则执行:/usr/lib/sendmail -bd -q15m -C"sendmail.cf的实际位置"。

      五. 升级维护

      当你需要添加/删除某些用户,允许/禁止他们通过本邮件服务器转发邮件时,只需按照以上格式修改/etc/mail/access文本文件,并执行:

      makemap -dbm /etc/mail/access

    ·IT产品报价大全
    更多相关: 服务器 手机
    在百度中更多内容: 服务器 手机



    ·诺基亚手机常用技巧完全手册
    ·摄影精品:中国最美的十大瀑布
    ·05年台湾电子营收五哥排名落定
    ·个人网站的五个发展阶段!
    ·老鸟谈数码相机,你会选择谁?
    ·办公族防衰老锦囊 懒人清理术
    ·日出日落拍摄技巧之三好法则
    ·真实拍摄假尼姑的变身术(图)
    ·女人故事:一个肯背你上楼的男人
    ·成都第一美女 回头率1000%辣妹
    ·钟丽缇大扮妖妇 FIFA小姐写真
    ·女人最消魂部位 让你放弃抵抗

    打印此页 投稿与建议 返回顶部

    相关文章