您的位置:首页 > 数据库 > MySQL

postfix+mysql+dovecot+extmail/extman+sasl+ssl构架

2013-10-01 08:57 369 查看
环境:rhel6.4 iptables and selinux disables

一.升级postfix,包含mysql,sasl,tls
1,安装相应软件:
yum install -y db*devel make gcc mysql-devel mysql-sever cyrus*
下载源码包;
postfix-2.10.2.tar.gz
tar zxf postfix-2.10.2.tar.gz
cd postfix-2.10.2
2,查看相应软件路径:
rpm -ql mysql-devel
rpm -ql cyrus-sasl-devel-2.1.23-13.el6_3.1.x8_64
less MYSQL_README
less TLS_README
less SASL_README
3.编译makefile
make -f Makefile.init makefiles 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl -DUSE_TLS' 'AUXLIBS=-L/usr/lib64/mysql -lmysqlclient -lz -lm -L/usr/lib64 -lsasl2 -lssl -lcrypto'
4.升级:
make update
5,检测:
postconf -m
postconf -a
postconf -A
6.查看版本:
postconf mail_version

二. 安装MUA,包括dovecot,
yum install -y dovecot dovecot-mysql

三. 安装webmail, 包含extmail,extman
下载源码包:
extman-1.1.tar.gz
extmail-1.2.tar.gz

mkdir /var/www/extsuite
tar zxf extman-1.1.tar.gz -C /var/www/extsuite/
tar zxf extmail-1.2.tar.gz -C /var/www/extsuite/
cd /var/www/extsuite/
mv extmail-1.2/ extmail
mv extman-1.1/ extman

四.安装mysql图形化工具
yum install -y http php php-mysql
下载phpMyAdmin-3.4.0-all-languages.tar.bz2
tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2
cp -r phpMyAdmin-3.4.0-all-languages /var/www/html/phpadmin
cd /var/www/html/phpadmin/
cp config.sample.inc.php config.inc.php
vim config.inc.php
{
$cfg['blowfish_secret'] = 'westos';
}
/etc/init.d/httpd start

五.配置:
1.postfix
vim main.cf
{
inet_protocols = ipv4
inet_interfaces = all
}
2.mysql
/etc/init.d/mysqld start
chkconfig mysqld on
mysql_secure_installation --> westos
将extmail 的extmail.sql和init.sql导入数据库
vim init.sql{修改postmaster的密码:postmaster;root的密码:westos}
mysql -uroot -pwestos < extmail.sql
mysql -uroot -pwestos < init.sql
与postfix链接
postconf -e virtual_uid_maps=static:800
postconf -e virtual_gid_maps=static:800
postconf -e virtual_mailbox_base=/home/email/

3.postfix,dovecot.extmail与mysql关联
---------------------------------
cd /etc/dovecot/
vim conf.d/10-auth.conf
{
!include auth-sql.conf.ext
}
在/usr/share/doc/dovecot-2.0.9/example-config

cp dovecot-sql.conf.ext /etc/dovecot/
cd /etc/dovecot
vim dovecot-sql.conf.ext
{
driver = mysql
connect = host=localhost dbname=extmail user=extmail password=extmail
default_pass_scheme = plain
password_query = \
SELECT username, domain, password \
FROM mailbox WHERE username = '%u'
user_query = SELECT maildir, 800 AS uid, 800 AS gid FROM mailbox WHERE username = '%u'
}
vim /etc/dovecot/dovecot.conf
{ listen = * }

添加email用户,id=800
useradd -u 800 email
vim conf.d/10-mail.conf
{
mail_location = maildir:/home/email/%d/%n/Maildir
first_valid_uid = 800
}
---------------------------------------------------
extmail
cp webmail.cf.default webmail.cf

webmail主配文件
vim /var/www/extmail/webmail.cf
{
SYS_AUTH_TYPE = mysql
SYS_MAILDIR_BASE = /home/email
SYS_CRYPT_TYPE = plain
SYS_MYSQL_USER = extmail
SYS_MYSQL_PASS = extmail
SYS_MYSQL_DB = extmail
SYS_MYSQL_HOST = localhost
SYS_MYSQL_SOCKET = /var/lib/mysql/mysql.sock
}
------------------------------------------
cd /var/www/extman/docs
cp mysql_virtual_alias_maps.cf /etc/postfix/mysql-alias.cf
cp mysql_virtual_domains_maps.cf /etc/postfix/mysql-domains.cf
cp mysql_virtual_mailbox_maps.cf /etc/postfix/mysql-mailboxs.cf

cd /var/www/extsuite/extmail/
http的虚拟主机

less INSTALL
vim /etc/httpd/conf/httpd.conf
{
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName server88.example.com
</VirtualHost>

<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
SuexecUserGroup email email
</VirtualHost>
}
chown -R email.email cgi/
/etc/init.d/httpd restart

在真机上:vim /etc/hosts
{
192.168.0.12 mail.extmail.org
}
--------------------------------------

/etc/init.d/httpd restart
登录mail.extmail.org会出现一些问题:解决:
yum install perl-CGI -y
下载:Unix-Syslog-1.1.tar.gz
tar zxf Unix-Syslog-1.1.tar.gz
cd Unix-Syslog-1.1
yum install perl-ExtUtils-MakeMaker -y
perl Makefile.PL
make install
-----------------------------------------
extman
cd ../extman/
webman的主配文件
vim webman.cf
{
SYS_MAILDIR_BASE = /home/email
SYS_SESS_DIR = /tmp
SYS_CRYPT_TYPE = plain
}
http的虚拟主机
vim /etc/httpd/conf/httpd.conf
{
<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName server88.example.com
</VirtualHost>

<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
*******************
SuexecUserGroup email email
</VirtualHost>
}
chown -R email.email cgi/
--------------------------------------------------------
添加验证码:
下载perl-GD-2.45-1.el6.rfx.x86_64.rpm
yum localinstall perl-GD-2.45-1.el6.rfx.x86_64.rpm
在webman.cf中设置验证码的长度:
{SYS_CAPTCHA_LEN = 4}
-------------------------------------------------------------
通过/var/www/extsuite/extman/daemon下的cmdserver脚本,可是webman的首页获得系统信息
加入开机启动:
vim /etc/rc.local
{/var/www/extsuite/extman/daemon/cmdserver & }
---------------------------------------------------------------
给webman网页添加Graph Log
yum install rrdtool
下载rrdtool-perl-1.3.8-6.el6.x86_64.rpm
yum localinstall rrdtool-perl-1.3.8-6.el6.x86_64.rpm
cd /var/www/extsuite/extman/addon/
cp -r mailgraph_ext/ /usr/local/
cd /usr/local/mailgraph_ext/
less README
./mailgraph-init start
下载File-Tail-0.99.3.tar.gz
tar zxf File-Tail-0.99.3.tar.gz
cd File-Tail-0.99.3
perl Makefile.PL
yum list perl-Time-HiRes
yum install perl-Time-HiRes.x86_64 -y
perl Makefile.PL
make install
cd /usr/local/mailgraph_ext/
./mailgraph-init restart
加入开机启动
vim /etc/rc.local
{usr/local/mailgraph_ext/mailgraph-init restart}
---------------------------------------------------------------

当然有兴趣的话你换可以加上mailscanner和spamassassin实现反垃圾和反病毒邮件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  postfix dovecot extmail
相关文章推荐