所用软件包:(本文中,以下软件包都将在/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