当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > 如何使Sendmail邮件服务器的邮件用户与系统用户分离

Linux服务器
linux系统下的TC控制服务器流量全攻略
Linux系统快速定位web路径方法
实例解说Postfix服务配置
LINUX服务器:查看服务端口命令nmap
Linux服务器下的软件安装与卸载
Linux服务器教程:认识Linux系统目录
Linux服务器教程:安装apache和php
Linux学习教程:不同版本Mysql安装
Linux中samba服务器的基本配置
如何加强Linux系统在安全方面的管理
LInux服务器:squid的日志文件经常报错
Linux中的Screen命令使用技巧详解
Linux服务器被黑怎么查?
Linux下Apache+Proftpd构建虚拟主机的安全问题
Linux系统下安装VMware虚拟机
安装Ubuntu 7.10简明教程
如何在VMware上安装Linux系统
新手认识Linux系统
Apache SSL证书安装指南
深入学习Apache模块mod_rewrite

Linux服务器 中的 如何使Sendmail邮件服务器的邮件用户与系统用户分离


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

  Sendmail是目前在互联网上应用得最为广泛的SMTP服务器之一,但在一般情况下,它并不能独立使用,还需要与UNIX/LINUX操作系统自身的mail应用结合。而且每增加一个邮件用户,实际上就是增加一个系统用户。这样做,不仅使用不方便,在用户很多时,还会大大增加系统的开销,影响服务器的性能;同时,由于邮件用户可能来自整个互联网的四面八方,系统用户的口令在网上传送,也增加了系统的危险性。这里介绍一种可以使邮件用户与系统用户分开的方法,供参考。

一.系统环境

以Linux操作系统(Redhat5.2)为例

二.安装mh软件包

1.下载

可在中国自由软件库(http://freesoft.cei.gov.cn)站点下载mh-6.8.4-2.tar.gz软件包。

2.编译

在mh软件包已下载完毕后,即可进行编译,步骤如下:
  
  $tar-zxvfmh-6_8_4-2_tar.gz
  $cdmh-6.8.4
  $cdconf
  $viMH#调整或增加部分参数如下(其余参数用缺省值即可):
  bin/usr/local/bin#执行命令的安装目录
  etc/usr/local/etc/mh#系统调用程序的安装目录
  mandir/usr/local/man#帮助文件的安装目录
  ccoptions#去掉"-traditional",其余不变
  ldoptlibs-lcrypt
  mtssendmail/smtp#用sendmail投递邮件
  popon#支持POP服务
  popdir/usr/local/lib/mh#popd的安装目录
  optionsPOPSERVICE='"pop-3"'
  #pop-3应与/etc/services文件110/tcp端口定义的服务名一致
  optionsPOSIX
  optionsBSD42
  optionsBSD43
  
  (各参数的意义及用法,可参考conf/READ-ME文件)
  
  $vi./config/mtstailor#确定sendmail参数对应sendmail的可执行文件,如:
  sendmail:/usr/sbin/sendmail
  $vi./config/mtstailor#确定sendmail参数对应sendmail的可执行文件,
  如:sendmail:/usr/sbin/sendmail
  $make
  $./mhconfigMH
  $cd../
  $make

3.安装
  
  $su
  #mkdir-p/usr/local/bin/usr/local/lib/mh
  /usr/local/etc/mh/usr/local/man#生成字安装目录
  #makeinst-all#完全安装

三.安装sendmail软件包

1.下载

可在中国自由软件库(http://freesoft.cei.gov.cn)站点下载sendmail.8.11.0.tar.gz软件包。

2.编译

在sendmail软件包已下载完毕后,即可进行编译,步骤如下:
  
  $tar-zxvfsendmail.8.11.0.tar.gz
  $cdsendmail-8.11.0
  $cdsendmail
  $./Build#编译sendmail

3.安装
  
  $./Buildinstall

4.配置
  
  $cd../../cf/ostype
  $vilinux.m4#增加一行:
  define(`POP_MAILER_PATH',`/usr/local/etc/mh/spop')
  ...
  $cd../cf/
  $vigeneric-linux.mc#增加一行:
  MAILER(pop)dnl
  $m4../m4/cf.m4./genric-linux.mc>sendmail.cf
  $su
  #cp./sendmail.cf/etc/mail
  #chmodg-w/etc/mail/sendmail.cf
  #cp/etc/sendmail.cw/etc/mail/local-host-names#存放该服务器的域名,

四.调试

假设邮件服务器的域名为:test.com,现在要新开一个邮箱:[email protected],并进行测试:
  
  #/usr/sbin/useradd-d/home/pop-mpop#生成pop用户
  #passwd-lpop#锁定pop用户
  #chmod755/home/pop
    注:/home/pop为pop系统用户的工作目录,该目录将用来存放邮件用户数据库和用户的所有邮件
  
  #su-pop
  $echo"test::test.box:::[email protected]::::">>POP
    #POP为邮箱的数据库文件,贮存全部的邮箱信息。此操作为增加一个用户test,其电子邮件地址为:[email protected]。test.box为该用户邮箱文件名
  
  $/usr/local/etc/mh/popwrdtest#为test邮件用户设置口令
  Newpassword:
  Retypenewpassword:
  $exit
  #/usr/local/etc/mh/popaka>>/etc/mail/aliases
  #chmodg-w/etc/mail/aliases
  #newaliases
  #/usr/lib/sendmail-bd-q30m#启动sendmail服务进程
  #/usr/local/lib/mh/popd#启动pop服务进程
    以下可使用MicrosoftOutlookupExpress等工具对[email protected]邮箱进行收发邮件测试,以上对这一能使邮件用户和操作系统用户区分开的方法进行了简单的介绍,关于这种组合方法,在使用时还有很多的技术细节,可参考软件包的有关文档资料,进行参数的优化。