出  处: rose.dlut.edu.cn
  说明:sendmail的最新版本为8.8.8, 但sendmail的安装基本相同,如有时间的 话我会在此文章的基础上写一篇有关sendmail最新版本安装及配置的文章。 --------------------------------------------------------------------- 发信人: [email protected] (不认识我,别PAGE我!), 信区: Unix 标  题: □Sendmail 8.6.9安装简介□ 发信站: 交大资科_BBS (Tue Dec 13 17:41:16 1994) 转信站: Palmarama!netnews.ntu!news.csie.nctu!news.cc.nctu!news.cis.nctu!cis_nc
 
  □以下内容有任何不正确、令人误解的地方,欢迎指正;本文只定位   自己是一颗「石头」,希望引出真正的玉来。所以希望各高手们能   不吝分享自己的经验(如除了Sun 之外的系统要如何装等等),那  我这个小丑也当得有义意了:)
 
 
                【Sendmail 8.6.9安装简介】     Sendmail对一般的系统管理者而言,往往是个不敢手的「禁区」 ,因为绝大多数系统的使用者对E-Mail的需求与依赖的程度之高,可 说是稍有分毫差错,系统管理者就要准备接受如雪片般飞来的抗议与 抱怨!而Sendmail这个东东的「内函」,似乎又有点不太容易理解: 与设定有关的sendmail.cf 档,如果不是下过一番死功夫,则读起来 如同读天书一样,只知道里面有英文字与数字!所以一般人总是能不 动则不动,只要能用就好。不过,很不幸的,一般跟著机器而来的 sendmail总是有著令人心惊胆跳的「附加功能」,就是常常都有一些 可以让无聊人士作为侵入路径的BUG 或後门,某些BUG 还可以让侵入 者经由Sendmail而取得最高权限的root!一旦root权限被人拿走了, 那麽这机器就可被人任意屠宰,最恶劣的,还可能破坏系统!
      Sendmail 8.6.9是目前Sendmail 8.6.x系列的最高版本。系统安 全方面,是目前评价最好的,目前已知的BUG 都已经改好了。本软体 是一public domain ,可以在网路上各ftp server上找到其source code。由於该软体的发展者把一些必要的设定步骤自动化了,所以, 其实安装这个软体并不是想像中那麽样的困难。如果连compile 的时 间也算下去,顺利的话,不用半个小时就可以安装完毕!所以,「麦 惊」啦!:)
      笔者把Sendmail的安装分成几个步骤: 步骤○:用任何手段(其实大概是用ftp :))抓到此软体。如果在         ftp://ftp.nccu.edu.tw/pub/mail/ 下找到的,会是好几个         名叫"sendmail.8.6.9.XXX"的档案,请使用者至少把:           sendmail.8.6.9.base.tar.gz           sendmail.8.6.9.cf.tar.gz           sendmail.8.6.9.xdoc.tar.gz         这三个档抓回,其中,第一个档是此软体的程式,第二个档         是此软体的设定,此二者是必要的档案;第三个是文件档,         如果不想看,可以不要。         抓回之後,tar 开。强烈建议大家有空读一读此软体的         Document。不过,如果「没有空」读,那麽阅读本文大概也         是装得起来的....
          PS. 以下的符号:"~/sendmail" 是表示抓来的sendmail所         tar 开的目录。
  步骤1:全tar 开後应该会在该目录下建立几个目录,其中程式是在         "~/sendmail/src" 的目录下,设定档在"~/sendmail/cf"         目录下。请转换至"~/sendmail/src" 的目录,用ls可以看         到许多名 Makefile.XXX 的档案。请使用者找到一个适合自         己系统的makefile,如:         假设是用IBM AIX 的系统,那就使用Makefile.AIX;用HP的         系统,那就用Makefile.HP-UX;如果是Sun 系统,那就用         Makefile.SunOS.x.x,但如果是SunOS 4.1.3 ,那得要用         Makefile.SunOS这个makefile档,而是Solaris 2.3 ,则得         要用Makefile.SunOS.5.x。         用vi或任一种编辑器,叫出刚挑出的makefile档,作一点点         必要的修改。所要修改的地方不多,下面是可能要修改的地         方:
          1."CC ="如果原档所用的compiler并不是我们系统的,这才           要改。
          2.本系统是否有安装Berkerlay 的New database?如果有,           跳过本点,到第3 点。           如果没有(如:一般SunOS 都没有装),那麽请修改这几           行(下面以Makefile.SunOS为例,但其他系统也类似):
            A.在  DBMDEF= -DNDBM -DNEWDB -DNIS  一行,请改成:                 DBMDEF= -DNDBM -DNIS             (即去掉-DNEWDB)
            B.把这两行REMARK起来:                 INCDIRS=-I/usr/sww/include/db             --> # INCDIRS=-I/usr/sww/include/db                 LIBDIRS=-L/usr/sww/lib             --> # LIBDIRS=-L/usr/sww/lib
            C.修改LIBS= -ldb -ldbm -lresolv   这一行成:                 LIBS= -ldbm -lresolv             (即去掉-db )
 
          3.把nroff 的"-mandoc "参数改成一般系统可以接受的           "-man"(当然,这得依你的系统而定)。如果不改也并不           会影响sendmail的安装,只是不能看到格式化後的           sendmail相关文件罢了。
 
  步骤2:输入make -f Makefile.XXX (当然,Makefile.XXX是指刚刚         从众里千百度挑出的那个档) 。然後就可以泡杯茶耐心的等         compile完毕。         不过,我们可以乘这个空档把旧的sendmail相关档案备份起         来,以防万一有甚麽不测,还可以向老板交代:)。要备份的         的档,当然是:/usr/lib/sendmail 和 sendmail.cf(後者         所在位置得依原系统而定,不过,一般都是在/etc下或         /etc/mail 之下)。         有一点要记得的是,原来的/usr/lib/sendmail 是个suid         root的程式,备份的请记得执行chmod u-s XXXX,要不然,         留著这样一个suid root 的程式,也是会让人有机可乘的!
  步骤3:此一步骤也是可以在compile 程式时进行的,就是要产生系         统设定档,也就是sendmail.cf 。
          1.请切换至设定档目录~/sendmail/cf/cf 之下。找一个合           适自己系统的XXXX.mc档。笔者一般上是使用tcpproto.mc           这一个不用uucp的档。如果是用tcpproto.mc 这个档,笔           者在solaris 2.3 试了,得记得在档中要加上一行:              OSTYPE(solaris2)           sun 4.1.3 不必,其他系统就不晓得了(在目录           ~/sendmail/cf/ostype 下有几个OSTYPE()可以的档,只           有这个目录有资料的才可能能够OSTYPE()。一句老话,详           情请看DOCUMENT:~/sendmail/cf/README )           。这希望有经验的朋友能够补充:)
       如果不小心忘了加上OSTYPE()会怎样?也不会怎样,只会      有"unknow mailer" 的错误,然後信寄不出去。
          2.好,选定了某一个合意的.mc 档,那接下来可执行m4产生           .cf 档。请下指令:             # m4 XXX.mc > YYY.cf           如果是sun 4.1.3 ,可能系统会抱怨m4的版本太旧了。那           请试一试用:             # /usr/5bin/m4 XXX.mc >YYY.cf           要是还是不行,那就请去抓新版的m4回来compile。
          3.产生出来的YYY.cf一般得要改个地方才能正常的收信。请           寻找"Cw",原来产生的.cf 档,Cw应是:             Cwlocalhost           请在localhost 之後加上你那一台机器所有可能用来当收           信地址的host name ,如:             Cwlocalhost bird.nccu.edu.tw man.nccu.edu.tw           如果这个部步骤忘了作,会有怎样的问题呢?           忘了将会有从外面机器寄信来却收不到,机器会抱怨:           "configure error ...."
 
  步骤4:终於来到令人紧张兴奋的时刻了!这个步骤是要把compile         好的东东install 到系统上去了。
          罗嗦的我还是得再一次提醒您看看:把旧档案备份好了吗?
          好,假设compile 的结果非常没挑战性的没有任何错误,产         生.cf 档过程也没有甚麽值得注意的讯息。所产生的.cf 档         也改好了。而且最重要的:作好旧档的备份(不是我要吓人         ,这是以防万一)。         1.挑个老板没有在用mail的时间,快手快脚的切换至目录           ~/sendmail/src ,下指令:             # make -f Makefile.XXX install           系统会把compile出来的~/sendmail/src/sendmail与man           document拷贝到它们该有的目录(所以你还如果没有备份           /usr/lib/sendmail ,那赶快祈祷待回不要出问题,要不           然就赶快准备泪水哭吧!因为旧的会被compile 出来的           sendmail覆盖)
          2.切换至目录~/sendmail/cf/cf ,把产生出来的YYY.cf档           拷贝到本系统sendmail.cf 应该在的地方,如:/etc或           /etc/mail 。
          3.把旧sendmail daemon 的process 杀掉。(这应该不用我           罗嗦吧!用ps -ax |grep sendmail |grep -v grep 找出           旧daemon的process(或cat /etc/sendmail.pid 或cat           /etc/mail/sendmail.pid),然後用kill -9 processID干           掉它。
          4.启动新daemon。例如下指令:             /usr/lib/sendmail -bd -q30m           当然,保守一点,看旧的daemon怎麽跑,照旧的来下参数           应该是没有问题。
  步骤5:嗯嗯,东东都装上了,这个步骤当然就只是测试罢了。记得         要测:           1.local 的收、发信。           2.remote的收、发信。           3.最好当然能试试不同的domain 或甚至net 的收发情况。         如果一切都正常,那太恭喜你了:)         如果有甚麽问题,可以post到bbs 求救。或者,post到news         的group :comp.mail.sendmail。cms 这个讨论群还可以看         得到sendmail 8.6.X的作者Eric Allman 常在上面为人解答         哩!或者,可以直接mail到:[email protected],         会有专人解答。
 
  ============================================================ 作者:陈彩合 (♂)            Email: [email protected] 日期:1994/12/12日完稿 ============================================================
  -- —————┐ 人和鸟    │Hup ever , Hup forever .□  [email protected]   鸟□守人│  forever HUP hup ......□  这是坏人,没事别page!           └—————————————————————————— -- ☆ [Origin: ◎椰林风情◎] [From: woju.g1.ntu.edu.tw ] [Login: **] [Post: **]
  -- ※ 来源:.碧海青天 bbs.dlut.edu.cn.[FROM: 202.118.65.49]
  | 
 
 
 |