Sendmail邮件服务器升级技巧速成

豆豆网   技术应用频道   2008年01月09日  【字号: 收藏本文

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

  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

责编:豆豆技术应用

正在加载评论...