#!/bin/bash
mkdir /root/rpm
cd /root/rpm
wget http://www3.extmail.org/EMOS_1.5_x86_64.iso
yum install createrepo -y
# 加载EMOS-1.5的光盘,请把emos的光盘放到光驱中
mkdir /mnt/EMOS
mount -o loop /root/rpm/EMOS_1.6_x86_64.iso /mnt/EMOS
cd /mnt
createrepo .
# 创建客户端 yum 的定义文件
cd /etc/yum.repos.d
mkdir backup
mv *.repo ./backup
cat >> EMOS.repo <<EOF
[EMOS]
name=EMOS
baseurl=file:///mnt/
enabled=1
gpgcheck=0
EOF
# 重新获取最新的仓库信息
yum clean all
yum list
# 安装postfix
yum install postfix -y
rpm -e sendmail
# 配置postfix
postconf -n > /etc/postfix/main2.cf
mv /etc/postfix/main.cf /etc/postfix/main.cf.old
mv /etc/postfix/main2.cf /etc/postfix/main.cf
# 编辑main.cf
cat >> /tmp/tmp.file <<EOF
mynetworks = 127.0.0.1
myhostname = mail.hifyl.com
mydestination = mynetworksmyhostname
# banner
mail_name = Postfix - by extmail.org
smtpd_banner = myhostname ESMTPmail_name
# response immediately
smtpd_error_sleep_time = 0s
# Message and return code control
message_size_limit = 5242880
mailbox_size_limit = 5242880
show_user_unknown_table_name = no
# Queue lifetime control
bounce_queue_lifetime = 1d
maximal_queue_lifetime = 1d
EOF
cat /tmp/tmp.file >> /etc/postfix/main.cf
# 设置postfix开机自启
chkconfig postfix on
# 安装以下软件包
yum install courier-authlib -y
yum install courier-authlib-mysql -y
echo "" > /etc/authlib/authmysqlrc
cat >> /etc/authlib/authmysqlrc <<EOF
MYSQL_SERVER localhost
MYSQL_SOCKET /var/lib/mysql/mysql.sock
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE extmail
MYSQL_USER_TABLE mailbox
MYSQL_CRYPT_PWFIELD password
MYSQL_UID_FIELD uidnumber
MYSQL_GID_FIELD gidnumber
MYSQL_LOGIN_FIELD username
MYSQL_HOME_FIELD homedir
MYSQL_NAME_FIELD name
MYSQL_MAILDIR_FIELD maildir
MYSQL_QUOTA_FIELD quota
MYSQL_SELECT_CLAUSE SELECT username,password,"",uidnumber,gidnumber,\
CONCAT('/home/domains/',homedir), \
CONCAT('/home/domains/',maildir), \
quota, \
name \
FROM mailbox \
WHERE username = '(local_part)@(domain)'
EOF
sed -i '/^authmodulelist/ c authmodulelist="authmysql"' /etc/authlib/authdaemonrc
sed -i '/^authmodulelistorig/ c authmodulelistorig="authmysql"' /etc/authlib/authdaemonrc
#启动courier-authlib
service courier-authlib start
#修改authdaemon socket目录权限
chmod 755 /var/spool/authdaemon/
#安装maildrop
yum install maildrop -y
echo "maildrop unix - n n - - pipe" >> /etc/postfix/master.cf
echo "maildrop_destination_recipient_limit = 1" >> /etc/postfix/main.cf
# 编辑httpd.conf文件
yum install httpd -y
echo "NameVirtualHost *:80" >>/etc/httpd/conf/httpd.conf
echo "Include conf/vhost_*.conf" >>/etc/httpd/conf/httpd.conf
cat >> /etc/httpd/conf/vhost_extmail.conf <<EOF
# VirtualHost for ExtMail Solution
<VirtualHost *:80>
ServerName mail.extmail.org
DocumentRoot /var/www/extsuite/extmail/html/
ScriptAlias /extmail/cgi/ /var/www/extsuite/extmail/cgi/
Alias /extmail /var/www/extsuite/extmail/html/
ScriptAlias /extman/cgi/ /var/www/extsuite/extman/cgi/
Alias /extman /var/www/extsuite/extman/html/
# Suexec config
SuexecUserGroup vuser vgroup
</VirtualHost>
EOF
# 设置apache开机启动
chkconfig httpd on
#安装ExtMail
yum install extsuite-webmail -y
# 编辑webmail.cf
cd /var/www/extsuite/extmail
cp webmail.cf.default webmail.cf
sed -i '/^SYS_MYSQL_USER/ c SYS_MYSQL_USER = extmail' webmail.cf
sed -i '/^SYS_MYSQL_PASS/ c SYS_MYSQL_PASS = extmail' webmail.cf
# 更新cgi目录权限 由于SuEXEC的需要,必须将extmail的cgi目录修改成vuser:vgroup权限
groupadd vgroup
useradd vuser
chown -R vuser:vgroup /var/www/extsuite/extmail/cgi/
# yum安装ExtMan
yum install extsuite-webman -y
# 更新cgi目录权限 由于SuEXEC的需要,必须将extman的cgi目录修改成vuser:vgroup权限
chown -R vuser:vgroup /var/www/extsuite/extman/cgi/
#链接基本库到Extmail
mkdir /tmp/extman
chown -R vuser:vgroup /tmp/extman
# 数据库初始化
yum install mysql mysql-server -y
service mysqld start
chkconfig mysqld on
#导入mysql数据库结构及初始化数据,root密码默认为空
mysql -u root -p < /var/www/extsuite/extman/docs/extmail.sql
mysql -u root -p < /var/www/extsuite/extman/docs/init.sql
# 设置虚拟域和虚拟用户的配置文件
cd /var/www/extsuite/extman/docs
cp mysql_virtual_alias_maps.cf /etc/postfix/
cp mysql_virtual_domains_maps.cf /etc/postfix/
cp mysql_virtual_mailbox_maps.cf /etc/postfix/
cp mysql_virtual_sender_maps.cf /etc/postfix/
#配置main.cf
> /tmp/tmp.file
cat >> /tmp/tmp.file <<EOF
# extmail config here
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_transport = maildrop:
EOF
cat /tmp/tmp.file >> /etc/postfix/main.cf
yum install postfix -y
service postfix restart
#建立刚才导入mysql的postmaster@extmail.org帐户的Maildir,请输入如下命令
cd /var/www/extsuite/extman/tools
./maildirmake.pl /home/domains/extmail.org/postmaster/Maildir
chown -R vuser:vgroup /home/domains/extmail.org
- 微信扫码赞助
-
- 支付宝赞助
-