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

Linux服务器
Linux上双网卡绑定方法(Suse9SP3)
Linux操作系统调优参数的意义
Linux下使用SSH客户端及其Sftp文件传送
教你恢复被误删除的Linux文件
SQL Server注入大全及防御
Linux无法解析域名的解决办法
Linux系统下安装和配置MyEclipse的方法
Ubuntu下VirtualBox 1.4.0设置文件共享
Windows与Linux系统共享StarDict字典文件
修改Linux下相关的登陆信息
Windows通过SecureCRT远程登录Linux主机
Linux操作系统如何修改SWAP交换区的大小
Linux操作系统下为Apache目录添加密码
Linux时间设置与同步(NTP)
Linux内核补丁AMD旁路转换缓冲(TLB)错误
Linux架设DHCP服务器的方法
Fedora 8下Apache配置与管理
Linux操作系统下用单网卡捆绑双IP的方法
Ubuntu Linux系统环境变量配置文件
SUSE Linux中将Tomcat作为Service运行

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 38 ::
收藏到网摘: 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]邮箱进行收发邮件测试,以上对这一能使邮件用户和操作系统用户区分开的方法进行了简单的介绍,关于这种组合方法,在使用时还有很多的技术细节,可参考软件包的有关文档资料,进行参数的优化。