当前位置导航:炫浪网>>网络学院>>操作系统>>Linux教程

我的qmail+vpopmail+igenus的安装历程


  摘要
  对qmail+vpopmail+igenus的安装过程
  
  声明:这个文档是我根据我的配制所编写的,其中可能有些雷同,因为我也是参看那些文档安装而成的,但是,这个文档中包含了一些我在安装过程中出现的问题,以及我如何解决的方法。我曾在red hat 7.2 mandrake solaris8 3个unix系统上安装成功,希望对大家有些帮助。若有不对之处,希望大家批评指教。[email protected]
  
  一. 安装前的准备
  
  1. 下载软件
  
  ftp://cr.yp.to/software/qmail-1.03.tar.gz
   http://www.inter7.com/vpopmail/vpopmail-5.2.1.tar.gz
   http://www.igenus.org/webmail/download/
  http://gd.tuwien.ac.at/infosys/mail/imap/c-client.tar.Z (安装igenus时用)
  
  分别下载这3个包,当然安装为了安装vpopmail和igenus的webmail还需要安装apache,php,mysql。我们认为这些都以安装并以配制进行正常的使用。并且你dns的mx记录都以做好。
  
  2. qmail的安装
  
  tar xvfz qmail-1.03.tar.gz
  mkdir /var/qmail (建立qmail的home目录)
  mkdir /etc/qmail 建立qmail的配制文件
  ln -s /etc/qmail /var/qmail/control
  cd /usr/local/src/qmail-1.03
  cp INSTALL.ids IDS 建立qmail的用户和组的shell文件
  chmod 700 IDS
  /bin/sh IDS
  make setup check
  ./config-fast mail.xxx.com
  cd /var/qmail/
  cp boot/home /var/qmail/rc
  chmod 755 /var/qmail/rc
  vi rc
  
  将rc文件中的qmail-start ./Mailbox splogger qmail中的Mailbox改为“./Maildir/”。记住若./Maildir/中缺少最后的“/”,qmail将不能进行正常的投递!!!(当初我就吃过这亏)
  
  创建3个别名用户文件,qmail将退信等邮件以以下的用户发送,可以将下面的“dave”改为你邮箱的系统用户的名字
  
  echo dave > /var/qmail/alias/.qmail-root
  echo dave > /var/qmail/alias/.qmail-postmaster
  echo dave > /var/qmail/alias/.qmail-mailer-daemon
  chmod 644 /var/qmail/alias/.qmail*
  echo "csh -cf '/var/qmail/rc &' " >> /etc/rc.d/rc.local
  (机器启动时,自动启动qmail)
  ps –ef| grep sendmail
  kill pid-of-sendmail 停掉已运行的sendmail服务
  csh -cf '/var/qmail/rc &' 启动qmail
  
  由于我是采用inetd的方式进行启动qmail的,所以在inetd.conf中加入smtp和pop3的配制
  
  smtp stream tcp nowait qmaild
   /var/qmail/bin/tcp-env tcp-env
   /var/qmail/bin/qmail-smtpd
  pop3 stream tcp nowait root
   /var/qmail/bin/qmail-popup qmail-popup xxx.com
   /var/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir
  
  重起inetd。
  
  在xinetd.d中,添加smtp和pop3
  
  vi smtp
  
  # default: off
  # description: The POP3 service allows remote
  users to access their mail
  # using an POP3 client such as Netscape
  Communicator, mutt,
  # or fetchmail.
  service smtp
  {
  disable = no
  socket_type = stream
  protocol = tcp
  wait = no
  user = qmaild
  server = /var/qmail/bin/tcp-env
  server_args = -R /var/qmail/bin/qmail-smtpd
  log_type = FILE /var/log/maillog
  env = NODNSCHECK=""
  log_on_success = HOST
  log_on_failure = HOST RECORD
  only_from = 0.0.0.0
  }
  
  
  vi pop3
  
  #default: off
  # description: The POP3 service allows remote
  users to access their mail
  # using an POP3 client such as Netscape
  Communicator, mutt,
  # or fetchmail.
  service pop3
  {
  disable = no
  socket_type = stream
  protocol = tcp
  wait = no
  user = root
  server = /var/qmail/bin/qmail-popup
  server_args = mail.ellenzp.com /home/vpopmail/bin/vchkpw
   /var/qmail/bin/qmail-pop3d Maildir
  log_type = FILE /var/log/maillog
  log_type = FILE /var/log/xinetd.log
  log_on_success = HOST
  log_on_failure = HOST RECORD
  }
  
  重起xinetd /etc/rc.d/init.d/xinetd restart mkdir /etc/skel (建立一个样本,每当添加一个新用户的时候自动在他的home目录下建立Maildir目录) /var/qmail/bin/maildirmake /etc/skel/Maildir 测试本地投递:
  
  echo to: [email protected] |/home/qmail/bin/qmail-inject
  
  如果没有报错,你可以在 ~dave/Maildir/new/目录下,看到一封信。
  
  测试远程投递:
  
  telnet mail.xxx.com 25 登陆本机的25端口
   helo mail.xxx.com
   mail from :
   rcpt to : < [email protected]>
   data
   subject : this is a test of qmail
   dear dave:
   this is a test
  . 必须以“.”作为结束
   quit
  
  如果你在你的远程信箱中看见了这封信,那么恭喜你,你的qmail基本配制成功了。
  
  3. Vpopmail的安装
  
  进入解压之后的vpopmail的目录
  
  vi vmysql.h
  
  #define MYSQL_SERVER "localhost" (mysql服务器名)
  #define MYSQL_USER "root" (用户名)
  #define MYSQL_PASSWD "yyyyy" (密码)
  前面的“#”号不能去掉,否则安装时会出错
  groupadd -g 89 vchkpw
  useradd -g vchkpw -u 89 vpopmail
  至于组号89,可以自行修改。
  touch ~vpopmail/etc/tcp.smtp
  建立smtp发信规则文件,不过在我的机上vpopmail
  下并没有etc目录,需要自己手工建立#mkdir etc
  echo "127.0.0.:allow,RELAYCLIENT=""" >
  ~vpopmail/etc/tcp.smtp
  
  由于我的mysql使用rpm安装,所以在安装mysql的时候并不需要进行什么设置,如果你的mysql安装在一个指定的目录,例如你安装在/usr/local/mysql/,那么你在./configure vpopmail的时候,需要指定。
  
  ./configure --enable-mysql=y --enable-mysql-replication=y
   --enable-valias=y --enable-qmail-ext=y --enable-ip-alias-domains=y
   --enable-password=n --enable-tcpserver-file=~vpopmail/etc/tcp.smtp
   --enable-incdir=你mysql的include目录的绝对路径,
  --enable-libs=你mysql的lib目录的绝对路径
  
  make
  make install-strip
   用./vadddomain添加域名和./vadduser添加用户
  cd ~vpopmail/bin/
  ./vadddomain xxx.com
  在添加域名的时候会让你输入postmaster的密码,这个密码可以随意
   ./vadddomain [email protected]
  在添加用户的时候会让你输入用户的密码。
  
  如果没有报错,则在~vpopmail/domain/目录下会看到你添加的域名的目录 xxx.com/,在此目录下可以看见你添加用户的目录 dave/
  
  在mysql库中可以看见一个名为vpopmail的库。
  
  3.igenus的安装
  
  igenus是一个国内制作的webmail,省去了我们还要对国外webmail进行翻译的麻烦。
  
  将解压后的igenus目录放入你web浏览的目录下面,如/usr/local/apache/htdoc/.
  
  进入解压后的目录
  
  mkdir temp
  chown -R vpopmail.vchkpw temp
  cd config
  vi config_inc.php
  
  修改以下部分
  
  $CFG_BASEPATH = "/var/www/iGENUS"; --->是iGNEUS webmail安装在系统的路径
  $CFG_MYSQL_HOST = 'localhost';
  $CFG_MYSQL_USER = 'root';
  $CFG_MYSQL_PASS = 'yyyyy';
  $CFG_MYSQL_DB = 'vpopmail'
  $CFG_HOSTNAME = "http://mail.xxx.com";
  $CFG_LANGUAGE = gb
  $CFG_GMT = +8;
  $CFG_TEMP = $CFG_BASEPATH."./temp";确保浏览的目录和temp的目录在同一路径。
  
  修改默认登录域的设置:
  
  编辑login.php
  
  ellenzp.comTION> ---->默认登录域
  polytrip.com.cnTION> ---->其它域名。
  
  如果在浏览的时候,出现Mkdir 不能创建目录的情况,那么你可以将这个目录的权限设低一点,或者将这个目录的用户和组修改为vpopmail的用户和组。
相关内容
赞助商链接