• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Redhat9.0下安裝qmail+igenus實錄

    發布: 2007-7-13 21:16 | 作者: jacoo  &nb | 來源: 本站原創     | 查看: 64次 | 進入軟件測試論壇討論

    領測軟件測試網

    在REDHAT9.0下安裝igenus
    bluelotus 2003.06.16
    Redhat9.0+Qmail+smtp-auth+Vpopmail+MySQL+Igenus,實例:http://0874.cn/mail

    一、安裝環境及準備工作
    安裝Redhat9.0,安裝時選取安裝apache、php、mysql,可省去以后自已編譯安裝的麻煩,mysql要注意選取mysql-devel開發包,mysql的頭文件和庫文件分別在/usr/include/mysql和/usr/lib/mysql。
    安裝完Redhat9.0后,修改/etc/httpd/conf/httpd.conf,使web服務正常啟用,為mysql添加root用戶的密碼。如果設置了防火墻,要打開服務器的smtp 25和pop3 110兩個端口。

    二、安裝ucspi-tcp-0.88
    1.下載相應軟件及補丁,由于redhat9.0的glibc的版本問題,必須打補丁才能正常編譯。
    wget http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
    wget http://qmail.te8.com/rpms/glibc-2.3.1/ucspi-tcp-0.88.a_record.patch
    wget http://qmail.te8.com/rpms/glibc-2.3.1/ucspi-tcp-0.88.errno.patch
    wget http://qmail.te8.com/rpms/glibc-2.3.1/ucspi-tcp-0.88.nobase.patch
    2.安裝ucspi-tcp-0.88
    #tar zxvf ucspi-tcp-0.88.tar.gz
    #cd ucspi-tcp-0.88
    #patch -p1 < ../ucspi-tcp-0.88.a_record.patch
    #patch -p1 < ../ucspi-tcp-0.88.errno.patch
    #patch -p1 < ../ucspi-tcp-0.88.nobase.patch
    #make
    #make setup check

    三、安裝qmail
    1.下載軟件及補。
    wget http://cr.yp.to/software/qmail-1.03.tar.gz
    wget http://www.ckdhr.com/ckd/qmail-103.patch
    wget http://www.qmail.org/qmailqueue-patch
    wget http://www.shupp.org/patches/qmail-maildir++.patch
    wget http://qmail.te8.com/rpms/glibc-2.3.1/qmail-1.03.errno.patch
    wget http://qmail.te8.com/rpms/glibc-2.3.1/qmail-1.03.qmail_local.patch
    wget http://members.elysium.pl/brush/qmail-smtp-auth/dist/qmail-smtpd-auth-0.31.tar.gz
    2.建立目錄:
    # mkdir /var/qmail
    # mkdir /var/qmail/alias
    3.建組及用戶:
    # groupadd nofiles
    # groupadd qmail
    # useradd alias -g nofiles -d /var/qmail/alias -s /nonexistent
    # useradd qmaild -g nofiles -d /var/qmail -s /nonexistent
    # useradd qmaill -g nofiles -d /var/qmail -s /nonexistent
    # useradd qmailp -g nofiles -d /var/qmail -s /nonexistent
    # useradd qmailq -g qmail -d /var/qmail -s /nonexistent
    # useradd qmailr -g qmail -d /var/qmail -s /nonexistent
    # useradd qmails -g qmail -d /var/qmail -s /nonexistent
    4.打補丁及編繹安裝qmail
    #tar zxvf qmail-1.03.tar.gz
    #tar zxvf qmail-smtpd-auth-0.31.tar.gz
    #cp qmail-smtpd-auth-0.31/base64.* qmail-1.03  //安裝smtp-auth補丁,支持smtp認證
    #patch -d qmail-1.03 < qmail-smtpd-auth-0.31/auth.patch
    #cd qmail-1.03
    #patch -p1 < ../qmail-103.patch
    #patch -p1 < ../qmailqueue-patch
    #patch -p1 < ..qmail-maildir++.patch
    #patch -p1 < ..qmail-1.03.errno.patch
    #patch -p1 < ..qmail-1.03.qmail_local.patch
    #vi qmail-smtpd.c  //將函數straynewline中的451改為553
    # make setup check
    # ./config-fast test.mydomain.com
    5.添加別名用戶:
    # touch /var/qmail/alias/.qmail-root
    # touch /var/qmail/alias/.qmail-postmaster
    # touch /var/qmail/alias/.qmail-mailer-daemon
    6.如果存在postfix和sendmail,停用現在的mail服務
    #/etc/rc.d/init.d/sendmail stop
    #cp /var/qmail/bin/sendmail /usr/sbin/qmail.sendmail
    #rm -f /etc/alternative/mta
    #ln -s /usr/sbin/qmail.sendmail /etc/alternative/mta
    Redhat9.0已經考慮到了使用其它郵件服務器代替sendmail的情況,因為本身就提供postfix和sendmail兩種選擇。

    四、安裝vpopmail
    1.下載vpopmail的穩定版
    wget http://www.inter7.com/vpopmail/vpopmail-5.2.1.tar.gz
    2.建立目錄:
    #mkdir /home/vpopmail
    #mkdir /home/vpopmail/etc
    3.添加用戶和組:
    #groupadd  vchkpw
    #useradd -g vchkpw vpopmail
    4.添加mysql的vpopmail用戶,用于操作vpopmail數據庫
    #mysql -u root -p    //進入mysql命令行
    mysql>;create database vpopmail;
    mysql>; grant all on vpopmail.* to vpopmail@localhost identified by "密碼";
    5.編譯安裝vpopmail
    #tar zxvf vpopmail-5.2.1.tar.gz
    #cd vpopmail-5.2.1
    #vi vmysql.h
    /*  =========================== vmysql.h ============================== */
    #define MYSQL_UPDATE_SERVER "localhost" (mysql服務器名)
    #define MYSQL_UPDATE_USER "vpopmail" (用戶名)
    #define MYSQL_UPDATE_PASSWD "12345678" (改成你設置的密碼)

    #define MYSQL_READ_SERVER "localhost" (mysql服務器名)
    #define MYSQL_READ_USER "vpopmail" (用戶名)
    #define MYSQL_READ_PASSWD "12345678" (改成你設置的密碼)
    /*==================================================================*/
    6.創建tcp.smtp文件(或者使用/etc/tcp.smtp)
    # vi /home/vpopmail/etc/tcp.smtp
    /*==================== tcp.smtp ================================ */
    127.0.0.1:allow,RELAYCLIENT=""
    :allow
    /*========================================================== */
    #cd /home/vpopmail/etc
    #tcprules tcp.smtp.cdb tcp.smtp.tmp < tcp.smtp
    7.進行編譯:
    # ./configure \\下面是我使用的參數
    --prefix=/home/vpopmail \\指定安裝路徑
    --enable-mysql=y \\是否應用Mysql數據庫
    --enable-incdir=/usr/include/mysql \\Mysql數據庫include文件所在目錄
    --enable-libdir=/usr/lib/mysql \\Mysql數據庫lib文件所在目錄
    --enable-default-domain=mydomain.com \\定義虛擬域名
    --enable-passwd=n \\是否使用系統密碼驗證方式
    --enable-defaultquota=52428800s \\定義缺省郵箱大小,10485760為10MB,20971520為20MB,52428800s為50MB
    --enable-tcprules-prog=/usr/local/bin/tcprules \\指定tcprules目錄
    --enable-tcpserver-file=/home/vpopmail/etc/tcp.smtp \\指定tcprules應用規則文件
    --enable-vpopuser=vpopmail \\vpopmail的用戶
    --enable-vpopgroup=vchkpw \\vpopmail的組
    --enable-ip-alias-domains=n \\在虛擬域中允許通過反向IP地址查找虛擬域名
    # make
    # make install-strip
    8.創建虛擬域
    # cd /home/vpopmail/bin
    # ./vadddomain 域名 (密碼) (在mysql數據庫vpopmail中自動生成vpopmail表單)
    (如果使用與機器名相同的虛擬域名,應先生成一個其它的虛擬域名,不然會有問題,無法自動生成vpopmail數據庫)
    # ./vadduser 用戶名 密碼 (會自動往表vpopmail中添加用戶數據,用戶名要帶域名,如demo@demo.com)
    如果不成功的話,則必須先刪除創建的域,./vdeldomain 域名

    五、smtp-auth的設置
    1.修改vchkpw的屬性
    #chmod 4755 vchkpw
    #chown root.root vchkpw
    如果使用帶驗證的smtp,smtp進程要調用密碼驗證程序,則必須要使用 setuid 和setgid。提高vchkpw的權限,才能完成setgid操作。
    2.下載安裝cmd5checkpw
    wget http://members.elysium.pl/brush/cmd5checkpw/dist/cmd5checkpw-0.22.tar.gz
    #tar zxvf cmd5checkpw-0.22.tar.gz
    #cd cmd5checkpw-0.22
    #make
    #make install
    注意,因為使用vpopmail,所以checkpassword不用安裝。

    六、生成qmail的啟動腳本
    #cp /var/qmail/boot/home /var/qmail/rc
    # vi /var/qmail/rc     //對rc文件進行修改,以決定投送方式:
    /* ================= rc =========================*/
    #!/bin/sh

    # Using splogger to send the log through syslog.
    # Using dot-forward to support sendmail-style ~/.forward files.
    # Using qmail-local to deliver messages to ~/Mailbox by default.

    exec env - PATH="/var/qmail/binPATH" \
    qmail-start ./Maildir/ splogger qmail  &
    /* ============================================*/
    #vi /var/qmail/smtp        //編輯smtp服務的啟動腳本
    /* ===================== smtp ============================= */
    #!/bin/sh

    QMAILDUID=qmaild
    NOFILESGID=nofiles

    /usr/local/bin/tcpserver -H -R -l 0 -t 1 -v -p -x /home/vpopmail/etc/tcp.smtp.cdb -u $QMAILDUID -g $NOFILESGID 0 smtp /var/qmail/bin/qmail-smtpd hostname /home/vpopmail/bin/vchkpw /bin/true /bin/cmd5checkpw /bin/true 2>;&1 | /var/qmail/bin/splogger smtpd 3 &
    /* ====================================================== */
    #vi /var/qmail/pop3       //編輯pop3服務的啟動腳本
    /* ====================== pop3 =========================== */
    #!/bin/sh

    /usr/local/bin/tcpserver -H -R 0 pop3 /var/qmail/bin/qmail-popup hostname /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir &
    /* ===================================================== */
    #chmod 755 /var/qmail/rc
    #chmod 755 /var/qmail/smtp
    #chmod 755 /var/qmail/pop3

    七、運行qmail并測試
    #/var/qmail/rc
    #/var/qmail/smtp
    #/var/qmail/pop3
    #ps aux | grep "qmail"       //查看qmail的服務進程是否已完全正常啟動
    如果qmail已正常啟動,用outlook測試qmail的smtp和pop3是否正常,注意由于vpopmail支持虛擬域名,所以在outlook中設置郵件帳號時,用戶名后要加上域名,如demo@demo.com。smtp是帶認證的,在outlook中也要作相應設置。建議先將qmail測試正常后再安裝igenus,我在qmail正常工作后,安裝igenus只用了10分鐘,非常順利。如果qmail出現問題,可查看mysql中的vpopmail數據庫,/var/log下的mysqld和maillog日志記錄,這樣容易很快找出問題。

    八、安裝并運行igenus
    1.到http://www.igenus.org下載最新的安裝包,我用的是igenus_2_20030516_snap.tgz
    #tar zxvf igenus_2_20030516_snap.tgz -C /var/www/html    //redhat下apache的缺省document root
    2.建temp文件夾
    cd /var/www/html/igenus
    mkdir temp
    chmod -R 0755 temp
    chown -R vpopmail:vchkpw temp
    3.修改httpd.conf
    #vi /etc/httpd/conf/httpd.conf
    Group Apache
    User Apache
    修改為:
    Group vchkpw
    User vpopmail
    #/etc/rc.d/init.d/httpd restart   //重啟apache,使修改生效
    4.修改config_inc.php文件
    # cd /var/www/html/igenus/config
    # vi config_inc.php
    /* =============== config_inc.php ==================== */
    $CFG_BASEPATH = "/var/www/html/igenus";

    $CFG_MYSQL_HOST = 'localhost';
    $CFG_MYSQL_USER = 'vpopmail';
    $CFG_MYSQL_PASS = '12345678'; \\改成你的密碼
    $CFG_MYSQL_DB = 'vpopmail';

    $CFG_TEMP = $CFG_BASEPATh."/temp";
    /* ============================================== */
    5.重新編制Mysql數據庫表格
    #mysql -u root -p
    mysql>;use vpopmail;
    mysql>;alter table vpopmail drop primary key;
    mysql>;alter table vpopmail add column pw_id int(5) NOT NULL primary key auto_increment;
    mysql>;create table address
    (
    id int(11) unsigned NOT NULL auto_increment,
    pw_id int(5) unsigned NOT NULL default '0',
    name varchar(64) NOT NULL default '',
    email varchar(12)) NOT NULL default '',
    UNIQUE KEY id (id),
    KEY pw_id (pw_id)
    ) TYPE=MyISAM;
    mysql>;quit;
    6.如果需要,用vadddomain和vadduser添加新域名和新用戶。
    最后打開瀏覽器,輸入http://你的網站/igenus,說Good Luck!吧。  

    九、編輯qmail自啟動腳本
    因為自己編寫的腳本比較簡陋,怕讓高手笑話,所以沒有寫到文章里,但既然有人一再問這個問題,也就厚著臉皮獻丑了。寫到這,應該算是比較完整了吧。
    #vi /etc/rc.d/init.d/qmail //編輯自動運行腳本
    ===================== qmail ======================
    #! /bin/sh
    # chkconfig: 2345 90 90
    # description: qmail (include smtp and pop3) auto start/stop scripts.

    . /etc/rc.d/init.d/functions

    case "$1" in

    start)
    echo -n "start qmail:"
    /var/qmail/rc &
    echo "."

    echo -n "start smtp service:"
    /var/qmail/smtp
    echo "."

    echo -n "start pop3 service:"
    /var/qmail/pop3
    echo "."
    ;;

    stop)
    echo "stop qmail:"
    killproc qmail-send
    killproc qmail-clean
    killproc qmail-rspawn
    killproc qmail-lspawn
    killproc splogger
    killproc tcpserver
    ;;

    *)
    exit 1
    ;;
    esac

    exit 0
    ==============================================
    #chmod 755 /etc/rc.d/init.d/qmail
    #chkconfig --add qmail
    OK,行了,現在只要你啟動系統就會自動運行了。只是腳本比較簡陋,所以不好意思拿出來,不過正常工作沒問題。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>