apache 安装
tar zxf /httpd-2.2.26.tar.gz -C /usr/src/
cd /usr/src/httpd-2.2.26/
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-cgi --enable-charset-lite --enable-ssl --enable-suexec --with-suexec-caller=daemon --with-suexec-docroot=/usr/local/httpd/htdocs
echo $?
make && make install
echo $?
\cp -f /usr/local/httpd/bin/apachectl
sed -i '1 a #chkconfig: 35 85 15' /etc/init.d/httpd
sed -i '2 a #description: Apache is a World Wide Web Server' /etc/init.d/httpd
chmod +x /etc/init.d/httpd
chkconfig --add httpd
mysql 安装
tar zxf /mysql-5.15 -C /usr/src/
cd /usr/src/mysql-5.15/
useradd -M -u 49 -s /sbin/nologin mysql
./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charset=gbk,gb2312
make && make install
echo $?
#建立my.cnf配置文件
cp -f /usr/local/mysql/share/mysql/my-medium.cnf /etc/my.cnf
vim /etc/my.cnf
sed -i 's/^skip-locking/#skip-locking/' /etc/my.cnf
sed -i '/#skip-locking/a skip-external-locking' /etc/my.cnf
#mysql执行优化、添加库路径
ln -sf /usr/local/mysql/bin/* /usr/local/bin/
echo "/usr/local/mysql/lib/mysql" > /etc/ld.so.conf.d/mysql-64.conf
ldconfig
#建立 mysqld 服务控制脚本
cp -f /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
cd /usr/local/mysql/bin
mysql_install_db --user=mysql
#调整mysql目录权限
chown -R root:mysql /usr/local/mysql/
chown -R mysql /usr/local/mysql/var/
mysqladmin -uroot -p password 1234567
PHP 安装
tar zxf /php-5.4.24.tar.gz -C /usr/src/
cd /usr/src/php-5.4.24/
./configure --prefix=/usr/local/php --enable-mbstring --enable-sockets --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php
make && make install
echo $?
sed -i '/^MYSQL_SERVER/s/mysql.example.com/localhost/' /usr/local/authd/etc/authlib/authmysqlrc #mysql服务器地址
sed -i '/^MYSQL_USERNAME/s/admin/extmail/' /usr/local/authd/etc/authlib/authmysqlrc#mysql用户名
sed -i '/^MYSQL_PASSWORD/s/admin/extmail/' /usr/local/authd/etc/authlib/authmysqlrc#mysql连接密码
sed -i '/^MYSQL_SOCKET /var/mysql/mysql.sock/d'
sed -i '/^MYSQL_SOCKET/a MYSQL_SOCKET \/tmp\/mysql.sock' /usr/local/authd/etc/authlib/authmysqlrc
sed -i '/^MYSQL_DATABASE/s/mysql/extmail/' /usr/local/authd/etc/authlib/authmysqlrc#要访问的库
sed -i '/^MYSQL_USER_TABLE/s/passwd/mailbox/' /usr/local/authd/etc/authlib/authmysqlrc#存放虚拟用户的表
sed -i '/^MYSQL_CRYPT_PWFIELD/s/crypt/password/' /usr/local/authd/etc/authlib/authmysqlrc#密码字段
sed -i '/^MYSQL_UID_FIELD/s/uid/uidnumber/' /usr/local/authd/etc/authlib/authmysqlrc#用户UID字段
sed -i '/^MYSQL_GID_FIELD/s/gid/gidnumber/' /usr/local/authd/etc/authlib/authmysqlrc#组GID字段
sed -i '/^MYSQL_LOGIN_FIELD/s/id/username/' /usr/local/authd/etc/authlib/authmysqlrc#用户名字段
sed -i "/^MYSQL_HOME_FIELD/s/home/concat('\/mxdir\/',homedir)/" /usr/local/authd/etc/authlib/authmysqlrc #用户主目录
sed -i "/# MYSQL_MAILDIR_FIELD/s/maildir/concat('\/mxdir\/',maildir)/" /usr/local/authd/etc/authlib/authmysqlrc#邮箱目录
sed -i '/# MYSQL_MAILDIR_FIELD/s/#//' /usr/local/authd/etc/authlib/authmysqlrc
#启用authd系统服务
service authd start
#配置dovecot 支持虚拟用户
#修改邮箱路径设置
sed -i '/#mail_location /s/=/= maildir:\/mxdir\/%d\/%n\/Maildir/' /etc/dovecot/conf.d/10-mail.conf
sed -i 's/^#mail_location/mail_location/' /etc/dovecot/conf.d/10-mail.conf
#对用户密码启用sql认证文件 查询设置由args指定的独立文件提供
cp /etc/dovecot/conf.d/auth-sql.conf.ext /etc/dovecot/conf.d/10-auth-sql.conf
#设置sql驱动类型及查询语句 使用sql语句从数据库查询用户名密码
sed -i '/#driver/a driver = mysql' /etc/dovecot/dovecot-sql.conf.ext
sed -i '/#connect/a connect =host=localhost dbname=extmail user=extmail password=extmail' /etc/dovecot/dovecot-sql.conf.ext
sed -i '/#default_pass_scheme/a default_pass_scheme = CRYPT' /etc/dovecot/dovecot-sql.conf.ext
sed -i "/#password_query /a SELECT username,password FROM mailbox WHERE username='%u'" /etc/dovecot/dovecot-sql.conf.ext
sed -i "/#password_query/a password_query = SELECT username,password FROM mailbox WHERE username='%u'" /etc/dovecot/dovecot-sql.conf.ext
sed -i "/#user_query/a user_query = SELECT maildir,uidnumber,gidnumber FROM mailbox WHERE username='%u'" /etc/dovecot/dovecot-sql.conf.ext
#重启dovecot服务
service dovecot restart
chown daemon:daemon /usr/local/authd/var/spool/authdaemon/socket
部署extmail 邮箱系统
安装extmail 所要的perl
tar zxf Unix-Syslog-1.1.tar.gz
tar zxf DBI-1.607.tar.gz
tar zxf DBD-mysql-4.011.tar.gz
cd Unix-Syslog-1.1
perl Makefile.PL
make && make install
cd ../DBI-1.607
perl Makefile.PL
make && make install
cd ../DBD-mysql-4.011
perl Makefile.PL
make && make install
部署extman邮件系统管理平台
rpm -ivh rrdtool-1.2.27-4.el5.x86_64.rpm
rpm -ivh rrdtool-perl-1.2.27-4.el5.x86_64.rpm
yum -y install gd-devel
tar zxf GD-2.41.tar.gz
tar zxf File-Tail-0.99.3.tar.gz
cd GD-2.41
perl Makefile.PL
make && make install
cd File-Tail
perl Makefile.PL
make && make install
安装及配置extman管理系统
tar zxf extman-1.1.tar.gz
mv extman-1.1 /usr/local/httpd/htdocs/extman
chown -R postfix:postfix /usr/local/httpd/htdocs/extman/cgi/
cd /usr/local/httpd/htdocs/extman/
cp webman.cf.default webman.cf
vim webman.cf