Chinaunix首页 | 论坛 | 博客
  • 博客访问: 650356
  • 博文数量: 789
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 4985
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-28 09:29
文章分类

全部博文(789)

文章存档

2011年(1)

2008年(788)

我的朋友

分类:

2008-10-28 09:46:22



  IBM Aix上Qmail的建立
  
    Qmail是一款完全可以替代Sendmail邮件体系的新一代Unix邮件系统,相比Sendmail而言,它具有更高的安全性、可靠性及运行效率,并且安装配置都比较简单。qmail是自由软件,完全免费,遵从GPL版权声明,并且在internet上可以找到大量的qmail附加软件包来增强它的功能,因此,在各类邮件服务器解决方案中它拥有最旺的人气。
  
    我用的*作系统是IBM Aix4.3.3,但在qmail源代码包的README文件里,只有aix4.3.3及其以前版本成功的测试记录。下面介绍一下我在aix4.3.3上的安装过程,这与别的unix*作系统上的安装有些区别。
  
    我用的C编译器是gcc2.95.2,采用较流行的Maildir邮箱存储格式,使用系统用户作为邮件账户来满足最基本的收发邮件需求。通过访或mirror站点下载qmail的核心软件包qmail-1.03.tar.gz,下载pop3用户密码验证程序checkpassword-0.90.tar.gz。
  
  先解压缩软件包并进入解压后的源代码目录:gzip -dc qmail-1.03.tar.gz|tar xvf -;cd qmail-1.03
  
  仔细阅读INSTALL和FAQ文件,并开始按步就班的安装编译源程序。
  
  1、建立/var/qmail目录: mkdir /var/qmail
  
  2、按照INSTALL.ids文件中的方法一一建立qmail各后台进程所要用到的用户和组。如果是通过命令行的方式来建立用户和组的话,则需要修改/etc/security/login.cfg文件,在里面添加/bin/true做为合法的shell,这样有点麻烦,建议直接修改/etc/group和/etc/passwd两个文件来建立用户和组,更方便有效。
  
  3、qmail默认的编译器是cc,而我用的是gcc,所以有必要使得qmail在安装时调用gcc来编译。有两种方式可以解决此问题,一种方式是给gcc建立一个名为cc的象征性链接文件:ln -s /path-to-gcc/gcc /usr/bin/cc;另一种方式是修改conf-cc和conf-ld文件,将其默认的编译器cc替换为gcc。
  
  开始编译及建立Qmail 的目录结构:make setup check
  
  这一步是我在安装时遇到的最大阻碍,编译出错不能通过。凭借我对unix下C编程的一知半解及根据编译出错提示,我修改了dns.c文件,删除第11行“extern int h_errno;”。重新编译,通过,在后来的使用过程中也没有发现有什么问题,正常。在其它的unix*作系统上安装qmail时不会出现这样的情况,但到底在aix上为什么会这样,我目前还不大清楚,希望高人指点。
  
  4、在配置qmail前,请认真阅读INSTALL.ctl和FAQ。配置命令有两个,config和config-fast,config将试图对本机IP地址在DNS上进行反向解析,从而确定本机域名;如果反向解析失败,则配置也就失败。建议用类似./config-fast your.full.host.name这样的命令直接确定本服务器主机域名来配置。
  
  5、阅读INSTALL.alias文件,这里有对添加邮件用户别名的一些介绍。但至少也要给一些不能接收邮件的系统帐户添加别名,并修改/var/qmail/alias目录下所有文件的访问权限来增加安全性。
  
  # (cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root)
  
  # chmod 644 ~alias/.qmail*
  
  6、有必要的话,可以先读一读NSTALL.mbox、INSTALL.maildir和INSTALL.vsm文件,这里介绍了有关qmail邮件存储格式和邮件投递方面的内容。
  
  7、建立/var/qmail/rc。/var/qmail/rc是用来启动qmail的文件,很重要。拷贝/var/qmail/boot/home到/var/qmail/rc。
  
  # cp /var/qmail/boot/home /var/qmail/rc
  
  # chmod 755 /var/qmail/rc
  
  我们采用Maildir邮箱存储格式,对rc文件做相应的修改,修改其中./Mailbox为./Maildir,修改后的内容如下:  
  
  exec env - PATH="/var/qmail/bin:$PATH" \
  
  qmail-start ./Maildir splogger qmail
  
  8、启动qmail: csh -cf '/var/qmail/rc &'
  
  最好将这条命令加到系统的启动文件中,以便以后在系统重启时自动启动qmail。参照TEST.deliver介绍的方法进行测试。
  
  9、如果当前系统上已安装有sendmail并且在使用中,那么请参照SENDMAIL、REMOVE.sendmail、REMOVE.binmail等文件做好从sendmail向qmail的转移。别忘了安装qmail的sendmail外壳:
  
  # ln -s /var/qmail/bin/sendmail /usr/lib/sendmail
  
  # ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail
  
  10. 安装checkpassword。它用于对pop3用户的密码验证,安装也很简单,过程如下:
  
  gzip checkpassword-0.90.tar.gz
  
  tar -xf checkpassword-0.90.tar
  
  cd checkpassword-0.90
  
  make
  
  make setup check
  
  11、编辑/etc/inetd.conf文件,设置qmail-smtpd,用于发信,如下所示(所有文字在同一行):
  
  smtp stream tcp nowait qmaild /var/qmail/bin/tcp-env tcp-env /var/qmail/bin/qmail-smtpd
  
  同样,添加qmail-pop3d,用于收信,如下所示(所有文字在同一行):
  
  pop3 stream tcp nowait root /var/qmail/bin/qmail-popup qmail-popup your.domain.name /bin/checkpassword /var/qmail/bin/qmail-pop3d Maildir
  
  12、重新启动inetd:refresh -s inetd
  
  13、创建邮件用户。在每个用户的初始目录下用命令/var/qmail/bin/maildirmake创建邮箱目录并赋予适当的权限,也可以建立一个Shell脚本程序来完成每个邮件账户的创建,下面是一个简单的例子,请创建好一个名为mailgrp的组,用于将邮件用户加入到此组,如果给此脚本程序命名为qmadd,则增加邮件账户的语法为:qmadd
  
  if test $1
  
  then
  
  echo "creating user $1 and its maildir directory..."
  
  mkuser pgrp='mailgrp' $1
  
  cd /home
  
  chown $1 $1
  
  cd $1
  
  /var/qmail/bin/maildirmake Maildir
  
  echo ./Maildir/ > .qmail
  
  chown $1 Maildir
  
  chown $1 Maildir/*
  
  chown $1 .qmail
  
  passwd $1
  
  echo "$1's account has been created!"
  
  else
  
  echo "Usage: qmadd username"
  
  fi
  
  14、测试。如果邮件服务器是用在internet上,别忘了DNS上的mx记录应指向本服务器的IP地址。在TEST.receive文件中介绍了一些对邮件收发的测试方式。在此我建议在windows客户机上用foxmail或outlook来做收发邮件测试,这样更为简便有效。另外要注意/var/qmail/control目录下一些文件的配置,rcpthosts文件用于对转发信的限止,me文件表示系统的正式域名,timeoutconnect文件用于设置SMTP连接超时时间等。
  
    本文只是介绍了qmail最基本的安装配置,如果要使得qmail有虚拟域支持、邮件列表管理、自动回复、webmail、web方式管理、web方式用户注册等功能,那需要安装另外的附加软件包,相关资料大家可以在internet上查找,有很多,虽然这些资料大都是针对linux*作系统的,不过aix上的安装配置也大同小异,所以在这就不多做介绍了
  
  


  


 相关文章  热门文章











--------------------next---------------------

阅读(388) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~