最新消息:

postfix的全功能邮件服务器-Red Hat(最新源码包架设)

Linux admin 1浏览

所用软件包:(本文中,以下软件包都将在/usr/local/src中存放)

Postfix-2.4.5
Mysql-5.0.45
Sasl-2.1.22
DB-4.5.20
Openssl-0.98e
httpd-2.2.4
Php-5.2.3
courier-authlib-0.59.3
courier-imap-4.1.3
Extmail-1.0.2
Extman-0.2.2
maildrop-2.0.4
clamav-0.91.2
amavisd-new
SpamAssassin-3.2.3

系统逻辑结构

点击在新窗口中浏览此图片

前提:开始前请确保您已经配置好指向此邮件服务器MX记录及其它DNS设置;本示例中的域名为benet.org,邮件服务器FQDN为mail.benet.org,IP地址为192.168.1.6;同时,如果您的服务器事先已经安装了sendmail,请卸载之;

一、安装mysql-5.0.45

groupadd mysql

useradd -g mysql -s /bin/false -M mysql

tar zxvf mysql-5.0.45.tar.gz

cd mysql-5.0.45

./configure

–prefix=/usr/local/mysql
–enable-thread-safe-client
–enable-local-infile
–with-charset=gbk
–with-extra-charset=all
–with-low-memory

make

make install

cp support-files/my-medium.cnf /etc/my.cnf

cd /usr/local/mysql

chown -R mysql .

chgrp -R mysql .

bin/mysql_install_db –user=mysql

chown -R root .

chown -R mysql var

bin/mysqld_safe –user=mysql &

cd /usr/local/src/mysql-5.0.45 (这里的目录指的是原压缩包解压后的目录)

cp support-files/mysql.server /etc/rc.d/init.d/mysqld

chmod 700 /etc/rc.d/init.d/mysqld

加入自动启动服务队列:

chkconfig –add mysqld

chkconfig –level 345 mysqld on

测试

/usr/local/mysql/bin/mysqladmin ping

/usr/local/mysql/bin/mysqladmin version

/usr/local/mysql/bin/mysql

添加root密码

/usr/local/mysql/bin/mysqladmin -uroot -p 旧密码 password 新密码

说明:此时mysql的root用户的密码为空

配置库文件搜索路径

echo “/usr/local/mysql/lib/mysql” >> /etc/ld.so.conf

ldconfig -v

添加/usr/local/mysql/bin到环境变量PATH中

export PATH=$PATH:/usr/local/mysql/bin

二、安装openssl-0.9.8e

tar zxvf openssl-0.9.8e.tar.gz

cd openssl-0.9.8e

./config shared zlib

make

make test

make install

mv /usr/bin/openssl /usr/bin/openssl.OFF

mv /usr/include/openssl /usr/include/openssl.OFF

rm /usr/lib/libssl.so

ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl

ln -s /usr/local/ssl/include/openssl /usr/include/openssl

ln -sv /usr/local/ssl/lib/libssl.so.0.9.8 /usr/lib/libssl.so

配置库文件搜索路径

echo “/usr/local/ssl/lib” >> /etc/ld.so.conf

ldconfig -v

检测安装结果

openssl version

OpenSSL 0.9.8e 23 Feb 2007

三、安装sasl-2.1.22

tar zxvf cyrus-sasl-2.1.22.tar.gz

cd cyrus-sasl-2.1.22

./configure –prefix=/usr/local/sasl2 (注意使用续行符)

–disable-gssapi
–disable-anon
–disable-sample
–disable-digest
–enable-plain
–enable-login
–enable-sql
–with-mysql=/usr/local/mysql
–with-mysql-includes=/usr/local/mysql/include/mysql –with-mysql-libs=/usr/local/mysql/lib/mysql –with-authdaemond=/usr/local/courier-authlib/var/spool/authdaemon/socket

make

make install

关闭原有的sasl:

mv /usr/lib/libsasl2.a /usr/lib/libsasl2.a.OFF

mv /usr/lib/libsasl2.la /usr/lib/libsasl2.la.OFF

mv /usr/lib/libsasl2.so.2.0.19 /usr/lib/libsasl2.so.2.0.19.OFF

mv /usr/lib/sasl2 /usr/lib/sasl2.OFF

rm /usr/lib/libsasl2.so

rm /usr/lib/libsasl2.so.2

ln -sv /usr/local/sasl2/lib/* /usr/lib

postfix 2.3以后的版本会分别在/usr/local/lib和/usr/local/include中搜索sasl库文件及头文件,故还须将其链接至此目录中:

ln -sv /usr/local/sasl2/lib/* /usr/local/lib

ln -sv /usr/local/sasl2/include/sasl/* /usr/local/include

创建运行时需要的目录并调试启动

mkdir -pv /var/state/saslauthd

/usr/local/sasl2/sbin/saslauthd -a shadow pam -d

启动并测试

/usr/local/sasl2/sbin/saslauthd -a shadow pam

/usr/local/sasl2/sbin/testsaslauthd -u root -p root用户密码

配置库文件搜索路径

echo “/usr/local/sasl2/lib” >> /etc/ld.so.conf

echo “/usr/local/sasl2/lib/sasl2” >> /etc/ld.so.conf

ldconfig -v

开机自动启动

echo “/usr/local/sasl2/sbin/saslauthd -a shadow pam”>>/etc/rc.local

四、安装BerkeleyDB

tar zxvf db-4.5.20.tar.gz

cd db-4.5.20/build_unix

../dist/configure –prefix=/usr/local/BerkeleyDB

make

make install

修改相应的头文件指向

mv /usr/include/db4 /usr/inculde/db4.OFF

rm /usr/include/db_cxx.h

rm /usr/include/db.h

rm /usr/include/db_185.h

ln -sv /usr/local/BerkeleyDB/include /usr/include/db4

ln -sv /usr/local/BerkeleyDB/include/db.h /usr/include/db.h

ln -sv /usr/local/BerkeleyDB/include/db_cxx.h /usr/include/db_cxx.h

配置库文件搜索路径

echo “/usr/local/BerkeleyDB/lib” >> /etc/ld.so.conf

ldconfig –v

五、安装httpd-2.2.4

tar jxvf httpd-2.2.4.tar.bz2

cd httpd-2.2.4

./configure

–prefix=/usr/local/apache
–sysconfdir=/etc/httpd
–enable-so
–enable-ssl
–with-ssl=/usr/local/ssl
–enable-track-vars
–enable-rewrite
–with-zlib
–enable-mods-shared=most
–enable-suexec (后面extmail切换”运行时用户”时要用到)
–with-suexec-caller=daemon

make

make install

echo “/usr/local/apache/bin/apachectl start” >> /etc/rc.local(系统启动时服务自动启动) 内文分页: [1] [2] [3] [4] [5] [6] [7] [8] [9]

相关日志Extman字符验证码改为数字验证码
mutt 发送邮件命令
将邮件导入 Gmail
perl邮件群发脚本(V0.3版)
Perl 发送邮件

最后编辑: selboo 编辑于2010/07/23 20:34

转载请注明:爱开源 » postfix的全功能邮件服务器-Red Hat(最新源码包架设)