加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > CentOS > 正文

CentOS服务器上搭建企业电子邮件系统

发布时间:2020-05-22 15:24:57 所属栏目:CentOS 来源:互联网
导读:环境介绍:软件包版本--------------------------------------CentOS6.5X64postfixadmin-2.91.tar.gzpostfix-2.6.6-6.el6_5.i686(yum)postfix-2.11.1.tar.gz(Traball)dovecot-2.0.9-7.el6_5.1.i686-----------------

环境介绍:

软件包版本
--------------------------------------
CentOS 6.5 X64
postfixadmin-2.91.tar.gz
postfix-2.6.6-6.el6_5.i686(yum)
postfix-2.11.1.tar.gz(Traball)
dovecot-2.0.9-7.el6_5.1.i686
--------------------------------------
域名及主机名
--------------------------------------
Domain:vqiu.cn
Hostname:mail.vqiu.cn
--------------------------------------
数据库信息
--------------------------------------
Mysql(postfixadmin)
DBNAME ===> postfixadmin
user ===> postfix
password ===> postfixadmin
--------------------------------------


一、环境部署预备

1、域名及主机名设置
略……
2、配置新yum 源(网易)
[root@mail ~]#yum -y install wget
[root@mail ~]#cd /etc/yum.repos.d/
[root@mail yum.repos.d]#mkdir backup
[root@mail yum.repos.d]#mv CentOS-* backup/
[root@mail yum.repos.d]#wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
//此步骤可选,目的为今后yum安装amavisd-new、clamav 等
[root@mail ~]#rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
//清空yum缓存及更新系统
[root@mail ~]#yum clean all; yum update -y

3、LAMP 环境
[root@mail ~]#yum -y install httpd mysql mysql-devel mysql-server php php-pecl-Fileinfo php-mcrypt php-devel php-mysql php-common php-mbstring php-gd php-imap php-ldap php-odbc php-pear php-xml php-xmlrpc pcre pcre-devel
//配置apache,并让apache支持php
[root@mail ~]#vi /etc/httpd/conf/httpd.conf
AddType application/x-httpd-php .php #添加对php程序的支持
PHPIniDir "/etc/php.ini" #指定php.ini配置文件路径
DirectoryIndex index.php index.html#指定首页文件类型
#取消ServerName前的注释,否则启动httpd 时提示276行

4、配置mysql,为postfixadmin 准备好数据库及认证用户
[root@mail ~]#mysql -uroot -p
mysql> create database postfix character set utf8;
mysql> grant all privileges on postfix.* to postfix@localhost identified by 'postfixadmin';
mysql> flush privileges;
mysql> exit

5、添加邮件虚拟用户 vmail
将生成的 函数添加到config.inc.php文件末尾中,添加个管理员账号:比如postmaster@vqiu.cn (添加完成后建议将setup.php这个文件进行更名,或者直接删除)

在postfixadmin添加vqiu.cn域,以及两个测试用户zhang3、li4.

四、配置dovecot
安装
[root@mail ~]#yum -y install dovecot dovecot-devel dovecot-mysql
#主要配置
[root@vqiu ~]#dovecot -n
# 2.0.9: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-431.20.3.el6.x86_64 x86_64 CentOS release 6.5 (Final) ext4
auth_mechanisms = plain login cram-md5
dict {
quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
disable_plaintext_auth = no
listen = *
mail_location = maildir:/var/vmail/%d/%n
mbox_write_locks = fcntl
passdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
plugin {
quota = dict:User quota::proxy::quota
quota_rule = *:storage=1G
}
postmaster_address = postmaster@vqiu.cn
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0666
user = postfix
}
unix_listener auth-client {
group = postfix
mode = 0600
user = postfix
}
unix_listener auth-userdb {
group = vmail
mode = 0600
user = vmail
}
}
service dict {
unix_listener dict {
group = vmail
mode = 0600
user = vmail
}
}
ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem
userdb {
args = /etc/dovecot/dovecot-sql.conf.ext
driver = sql
}
protocol lda {
mail_plugins = quota
}
protocol pop3 {
mail_plugins = quota
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
pop3_uidl_format = %08Xu%08Xv
}

[root@mail ~]#vi /etc/dovecot/dovecot-dict-sql.conf.ext
connect = host=localhost dbname=postfix user=postfix password=postfixadmin
map {
pattern = priv/quota/storage
table = quota2
username_field = username
value_field = bytes
}
map {
pattern = priv/quota/messages
table = quota2
username_field = username
value_field = messages
}

[root@mail ~]#vi /etc/dovecot/dovecot-sql.conf.ext
driver = mysql
connect = host=localhost dbname=postfix user=postfix password=postfixadmin
#与postfixadmin 中的要一致,否则出现密码不匹配的现象
default_pass_scheme = CRAM-MD5
user_query = SELECT CONCAT('/var/vmail/',maildir) AS home,2000 AS uid,2000 AS gid,CONCAT('*:bytes=',quota) as quota_rule FROM mailbox WHERE username = '%u' AND active='1'
password_query = SELECT username AS user,password,CONCAT('/var/vmail/',maildir) AS userdb_home,2000 AS userdb_uid,2000 AS userdb_gid,quota) as userdb_quota_rule FROM mailbox WHERE username = '%u' AND active='1'

五、客户端测试


(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读