Postfix 电子邮件系统精要配置一个postfix邮件
系统,远比我先前的想象复杂。这次共配置2个postfix系统,花了不少精力,其间也经历不少麻烦,还好,最后都做成了!在 配置过程中,参考了《postfix权威指南》和网上其他人写的文章,但在实际的配置中,完全按照这些文档还是不易顺利完成。现在此行文披露我做这个事情 的全部过程,希望对大家的工作有所帮助。
◆运行环境
操作系统是centos 5,其下载地址为www.centos.org,它是redhat as 5最佳的替代品(原因:开源且免费下载);postfix使用的版本是postfix-2.2.10.tar.gz,postfix(www.postfix.org)当前的稳定版本是2.4,由于2.4不支持SASL,所以我选了老一点的版本。其他所需的软件在下表列出:
名称
Apache (httpd-2.2.0)
用途 Web方式管理邮件
Php (php-5.2.3)
Php 解释器,与apache一起使用
Mysql (mysql-5.0.41)
用数据库存储用户信息
Postfixadmin(postfix-2.1.0)
邮件帐号后台web管理工具
SASL(cyrus-sasl-2.1.21.tar.gz) Authlib(courier-authlib-0.59.3.tar.bz2) Postfix
验证方法 与SASL一起做验证 邮件系统主程序
Courier-imap
(courier-imap-4.1.3.tar.bz2)
Pop3及IMAP服务
http://www.courier-mta.org/
http://www.postfix.org
http://www.courier-mta.org/download.php http://ftp.andrew.cmu.edu/pub/cyrus-mail/ http://sourceforge.net/projects/postfixadmin/ www.mysql.com www.php.org 下载地址 www.apache.org
Perl (perl-5.8.8)
Maildrop (maildrop-2.0.4.tar.bz2)
解释器 http://www.cpan.org 邮件投递代理,直观的讲就是把收到的邮件转发到用户的邮箱目录
http://www.courier-mta.org/
Clamav (clamav-0.91.2.tar.gz) amavisd-new
(amavisd-new-2.5.2.tar.gz)
杀毒软件 扫描邮
http://www.clamav.org/
http://www.ijs.si/software/amavisd http://spamassassin.apache.org/ http://www.pcre.org
件病毒 邮件
Spamassassin(SpamAssassin 3.2.3) 防垃圾
Pcre (pcre-7.2.tar.bz2)
安装Imap需要-- Perl兼容正则表达式
Extmail (extmail-1.0.1.tar.gz)
webmail
http://www.extmail.org
◆准备工作
1、下载所需的软件:照 上面给出的地址找到下载URL,然后用wget下载。由于服务器一般不安装xwindow这样的桌面环境,那怎样知道下载文件的url呢?用 windows呢,通过securecrt这样的ssh工具连接和管理远程linux服务器,这样就很容易办到了。在实际的工作中,我习惯把文件下载到 /root目录,原因是普通用户看不见我下载的东西。
图 1 2、清理系统:不 管你喜不喜欢,安装系统时sendmail这个邮件服务软件已经安装上去了,可是一山不容二虎,既然我们选定了功能强大的postfix,那么 sendmail就一边歇着吧。运行命令 rpm -e -nodeps sendmail 就达到这个目的了。第2个需要卸载的软件是SASL,为什么要卸载它呢?因为系统自带的版本不太容易与authlib正常配合,所以需要把它删除掉。第3 个要删除的是perl.本打算用系统自带的perl,可是在执行命令 perl -MCPAN -e shell时居然出现\,导致很多功能不能使用,看来也只好删了重装一个。下面总结一下这个过程:
1、SASL
(1)列出包
rpm -qa | grep sasl cyrus-sasl-2.1.19-5.EL4
cyrus-sasl-gssapi-2.1.19-5.EL4 cyrus-sasl-devel-2.1.19-5.EL4 cyrus-sasl-ntlm-2.1.19-5.EL4 cyrus-sasl-md5-2.1.19-5.EL4 cyrus-sasl-sql-2.1.19-5.EL4 cyrus-sasl-plain-2.1.19-5.EL4 (2)删除包
rpm –e –nodeps cyrus-sasl-2.1.19-5.EL4 cyrus-sasl-gssapi-2.1.19-5.EL4
cyrus-sasl-devel-2.1.19-5.EL4 //把上面查查来的全部列在这后面全卸载掉。nodeps前面是
两”-“!
然后进目录/usr/lib查一下 ls –al /usr/lib | grep sasl 应该没有目录sasl及sasl2了。 2、Perl (1)列出包 rpm -qa | grep perl perl-DateManip-5.42a-3 perl-XML-Encoding-1.01-26 perl-LDAP-0.31-5
perl-XML-LibXML-Common-0.13-7 groff-perl-1.18.1.1-3 openssl-perl-0.9.7a-43.1 ????(省略若干) perl-suidperl-5.8.5-12.1.1 (2)删除包
rpm –e –nodeps perl-DateManip-5.42a-3 //照上面的例子删除所以的包。由于包太多,用一个//rpm命令后面带的参数太长,建议一个一个收拾。
执行完删除命令后,再运行命令perl –v,如果出现“-bash: perl: command not found”则表明已经把perl清理掉了。
3、创建邮件系统运行时所需的用户和组:创 建用户和组绝不仅仅是为了练习userad和groupadd这两个命令,因为安全方面的原因,一些软件不能以root用户来运行,甚至在安装过程中,如 果没有为该软件预先创建用户,安装将不能进行下去,因此,我们在这里先创建这些运行postfix系统所需的用户和组。对centos或redhat等发 行版而言,用命令useradd创建用户时也就创建了一个同名的组,而另外一些linux发行版(如debian)或unix(如solaris 10),创建用户时并不会同时创建同名的组,这需要手动执行命令单独创建所需的组。下面我用表格的方式列出postfix系统所需要创建的用户及组的情 况:
用户名 mysql vmail postfix amavis clamav 组名 Mysql Vmail Postfix Postdrop Amavis Clamav 作用 数据库mysql运行用户 Postfix主程序使用的帐号和组 Postfix setgid_group 邮件扫描 病毒扫描 备注 setgid_group=postdrop Postfix虚拟邮件帐号所使用的用户及组 uid,gid:1001,1001 这 里有2个值得注意的地方,它们是vmail用户、组及postdrop组。在postfix邮件系统中,有好几个程序是以vmail来运行的(这些情况将 在后面逐个说明);postdrop这个组,我看了很多人写的文档,无一例外的都有创建这个组的操作,但没有任何人说明这个组是干什么用的,给人很突兀的 感觉,因此我在这里特别把它列出来了-它的作用是setgid_group-在postfix的主配置文件main.cf里标明了的。
[root@mail ~]# grep postdrop /etc/postfix/main.cf setgid_group = postdrop
◆安装apache,mysql和php 1、apache
tar zxvf httpd-2.2.0.tar.gz cd httpd-2.2.0
./configure -prefix=/usr/local/apache -enable-so //选项prefix,enanle前面是两个\make
make install
上述步骤执行完毕后,将生成目录/usr/local/apache,进入这个目录检查一下,看相关的文件和目录是否存在?下图是一个正确安装apache后的目录结构:
图 2 执行命令 /usr/local/apache/bin/httpd -l检查编译进来的模块有哪些。最主要的是mod_so模块。即下面最后一个mod_so.c。这样做的目的是为了以模块方式加载php.现在我们先不忙着配置apache,等到后面再做这个工作。
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新幼儿教育Postfix 电子邮件系统精要 全文阅读和word下载服务。
相关推荐: