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

Linux服务器
linux下用cron定时执行任务的方法
.htaccess绑定域名到子目录的方法
linux apache下虚拟主机配置方法
apache 局域网访问配置方案
linux Apache服务器系统安全设置与优化
linux中mac地址绑定方法
linux托盘不断闪烁之解决方法
Apache配置 虚拟转向实例
Apache No space left on device的解决办法
Apache rewrite的重写相关的参数说明
LINUX入门级常用命令20条整理
Ubuntu设置开机自动挂载所有格式硬盘分区
5个可能被你忽略的Linux安全设置方法
学习Apache的mod rewrite、access写法
改版时保留原链接,创建新的URL的方法
rsync中文手册之使用rsync实现网站镜像和备份linux
rsync 数据同步使用详解
linux URL的301重定向代码分析
eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池
Apache服务器二级域名的完美实现

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


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