当前位置:Linux教程 - Linux综合 - hordeimpWebmail的安装与设置详细分析

hordeimpWebmail的安装与设置详细分析

  一. 邮件系统的基本原理  首先让我们来了解一下电子邮件系统的基本原理。这里只做一个简单介绍,详细的可参考有关书籍。  一般情况下,我们把电子邮件程序分解成用户代理,传输代理和投递代理。 用户代理将用户的信件传送至传输代理(如Outlook EXPress、FoxMail等)。邮件传输代理负责将邮件送到目标主机(如sendmail)。而投递代理则从信件传输代理取得信件传送至最终用户的邮箱(如procmail)。  我们来模拟一封邮件从发出到收到的过程。用户使用Outlook Express(用户代理或叫做邮件客户端)向Sendmail(传输代理)请求发送电子邮件的服务,将邮件交给Sendmail。Sendmail根据邮件的目的地址,将邮件发送给邮件接收服务器,邮件接收服务器将邮件缓存(这也是Sendmail的工作)。接收邮件的用户用Outlook Express向邮件接收服务器发出取信的请求,邮件接收服务器将邮件发送给用户(这是IMAP或POP服务的工作)。至此,一封邮件从发送者的机器到达接收者的机器。  我们要建立的邮件服务器,以性能优越的RedHat Linux 7.3为操作系统。以Sendmail作邮件传输服务,IMAP作收信服务来构成邮件系统的基本框架。以Horde Imp作为邮件的Web客户端。剩下的就是Horde Imp的支持软件:以mysql存储用户数据,以Apache+PHP作为Web服务器。我们还使用其它的模块来扩充本系统的功能:通讯录模块和修改密码模块。  我们将安装下列软件:  1. RedHat linux7.3   作用:操作系统  下载地址: http://freesoft.online.sh.cn:8888/mirrors/redhat/7.3/  2. Sendmail-8.11.6  作用:邮件传输和接收  下载地址:(RedHat linux7.3自带)  3. Imap   作用:IMAP和POP3服务器  下载地址:FTP://ftp.cac.washington.edu/imap/imap-2001a.tar.Z  4. Apache-1.3.24   作用:Web服务器  下载地址:http://freesoft.online.sh.cn:8888/mirrors/ftp.apache.org/httpd/apache_1.3.24.tar.gz  5. PHP-4.2.1  作用:CGI脚本语言  下载地址:http://www.php.net/do_download.php?download_file=php-4.2.1.tar.gz  6. PEAR-4.1.0  作用:PHP的功能扩展模块  下载地址:ftp://ftp.horde.org/pub/horde/tarballs/pear-4.1.0.tar.gz  7. MySql  作用:数据库,存储邮件用户数据和通讯录  下载地址:http://freesoft.online.sh.cn:8888/mirrors/Database/MySQL/mysql-3.23.49.tar.gz  8. Horde-2.1  作用:Imp的支持模块  下载地址:ftp://ftp.horde.org/pub/horde/tarballs/horde-2.1.tar.gz  补丁:ftp://ftp.horde.org/pub/horde/tarballs/patch-horde-2.0-2.1.gz  9. Imp-3.1  作用:Web mail的核心程序  下载地址:ftp://ftp.horde.org/pub/imp/tarballs/imp-3.1.tar.gz  补丁:ftp://ftp.horde.org/pub/imp/tarballs/patch-imp-3.0-3.1.gz  10.Turba-1.1  作用:提供通讯录功能的模块  下载地址:ftp://ftp.horde.org/pub/turba/tarballs/turba-1.1.tar.gz  补丁:ftp://ftp.horde.org/pub/turba/tarballs/patch-turba-1.0-1.1.gz  11.Poppassd-1.8.2  作用:修改密码的服务,与Passwd for imp结合提供Web方式修改用户密码的功能。  下载地址:http://echelon.pl/pubs/poppassd-1.8.2.tar.gz  12.Passwd for imp  作用:提供修改密码功能的模块  下载地址:https://mail.ph.utexas.edu/test2/patches/public/passwd/passwd.tgz    二. 需要的网络环境  本文假设用户希望在园区网中架设一个电子邮件服务器,为本单位用户提供邮件服务。该服务器拥有一个合法的IP地址202.99.11.200和一个合法的域名mail.example.com,并且example.com的DNS的MX记录指向mail.example.com。  注:为了满足域名需求,example.com的DNS的域数据文件应该包含以下内容:   IN MX 10 mail  mail IN A 202.99.11.200    三. 安装操作系统RedHat Linux7.3  RedHat Linux7.3的安装在很多资料中已有详细说明。这里只说一下分区的问题,作为一个邮件系统,主要的磁盘空间用于存储用户的邮件。我们把大部分软件安装在/usr,而用户收到的邮件存储在/var,用户处理(删除、移动等)后的邮件存储在/home。大家要根据自己的情况确定合理的分区方案。    四. 安装Sendmail  其实上,RedHat Linux7.3安装完成后,Sendmail就被安装了。如果没有,可从RedHat Linux7.3的第一张安装盘中用RPM包进行安装。接下来我们只对Sendmail进行一些简单的设置。  Sendmail的配置文件主要是/etc/sendmail.cf。这里,我们需要修改两个地方:  原内容: Cwlocalhost (大约在83行)  修改为: Cwexample.com   作用:定义邮件交换的域  原内容:O deamonPortoptions=Port=smtp,Addr=127.0.0.1 … (大约在260行)  修改为:(将此行注释掉)  作用:此行的作用是只允从本机使用smtp服务,作为一个邮件系统,这显然是不行的。  修改完成后,键入:  #/etc/rc.d/init.d/sendmail restart  重启sendmail,使修改生效。    五. 安装IMAP  IMAP提供IMAP及POP3两种服务,它们的作用都是提供用户收取信件的接口,这里我们只使用IMAP服务。  我们假设所有要安装的软件都已经下载到/tmp。本文涉及的命令都以root身份执行。  1.解压,安装:  # cd /tmp  # tar zxvf imap-2001a.tar.Z  # cd imap-2001a  # make slx    2.将生成的可执行文件拷贝到/usr/sbin  #cp imapd/imapd /usr/sbin    3.在/ect/xinetd.d下新建文件imap  #vi /etc/xinetd.d/imap  内容为:  # IMAP server at Port 143  service imap  {   disable = no   socket_type = stream  wait = no  user = root  server = /usr/sbin/imapd  }    4.重启xinetd  /ect/rc.d/init.d/xinetd restart    5.测试imap服务起来没有  #telnet localhost 143  如果看到欢迎信息,则说明IMAP服务器安装成功。注意,先不要删除IMAP的安装文件,我们在后面还会用到。    六. 安装Web mail支持――Apache、Mysql和PHP  这一步,我们要为Imp建立Web服务器及数据库支持。  1. 安装MySql  Web mail Imp将用户设置和通讯录存储在数据库中,我们选用常用的MySql。  1.1解压,配置编译、安装:  # cd /tmp  # tar zxvf mysql-3.23.47.tar.gz  # cd mysql-3.23.47  # ./configure --prefix=/usr/local/mysql  # make  # make install  完成后MySql被安装到/usr/local/mysql。  1.2建立用户mysql及组mysql  #groupadd mysql  #useradd mysql  #passwd mysql  1.3把MySql启动起来:  #cd /usr/local/mysql/bin  # ./mysql_install_db (安装MySql的基本数据库)  # ./safe_mysqld ?uroot & (启动MySql并转入后台)  1.4测试MySql  # ./mysql   如果能连接数据库,则MySql安装完成。请注意修改MySql的root密码,以增加安全性。其它操作请参照有关资料。  2. 安装Apache、PHP及PEAR  Horde及Imp 是以PHP编写的,要使它能够运行,必须提供Web服务和PHP脚本语言支持,而PEAR是PHP的功能扩展模块,虽然PHP默认安装时已经安装了PEAR,但Horde需要较新的版本。  2.1解压:  # cd /tmp  # tar zxvf apache-1.3.24.tar.gz  # tar zxvf php-4.2.1.tar.gz  2.2预编译Apache  # cd apache-1.3.24  # ./configure  2.3配置、编译、安装PHP,根据imp的需要,加上相应的参数,可参照相关资料进行修改  # cd ../php-4.2.1  # ./configure --with-mysql=/usr/local/mysql --with-apache=../apache-1.3.24 --with-imap=../imap2001a --with-gettext --with-XML  # make  # make install    2.4配置、编译、安装Apache  # cd ../apache-1.3.24  # ./configure -- prefix=/usr/local/apache --activate-module=src/modules/php4/libphp4.a    2.5拷贝PHP配置文件到/usr/local/lib  # cd ../php-4.2.1  # cp php.ini-recommended /usr/local/lib     2.6用新版本的PEAR替换旧版本  # cd /usr/local/lib  # mv php php.bak  # cp /tmp/ pear-4.1.0.tar.gz .  # tar zxvf pear-4.1.0.tar.gz   # mv pear-4.1.0 php  # chown root.root ?R php    2.7针对PHP修改Apaceh配置文件/usr/local/apache/conf/http.conf  找到如下两行:  # AddType application/x-httpd-php .php  # AddType application/x-httpd-php-source .phps  将注释符去掉,这两行的作用是定义php文档的后缀。  还要修改默认的首页类型,找到:  DirectoryIndex index.htm  改成:  DirectoryIndex index.htm index.php default.htm default.php    2.8启动Apache  # /usr/local/apache/bin/apachectl start    2.9测试Apache和PHP  删除/usr/local/apache/htdocs/下所有文件  # cd /usr/local/apache/htdocs/  # rm ?rf *  新建文件test.p
[1] [2] 下一页 

(出处:http://www.sheup.com)


上一页 [1] [2]