Postfix+dovecot+mysql構建郵件系統 php
實驗平臺:rhel6
所需軟件包:httpd bind mysql-server dovecot dovecot-mysql php php-mysql
實驗前關閉selinux和iptables
一、
安裝實驗所需軟件包
yum install httpd bind mysql-server dovecot dovecot-mysql php php-mysql –y
二、
配置dns服務器,解析郵件服務器的域名
三、
安裝postfixadmin並配置
tar -xzvf postfixadmin-2.1.0.gz -C /var/www/html
service mysqld start
將sql腳本導入到數據庫
Service httpd start
利用postfixadmin的web界面建立域和郵箱帳號
四、
建立虛擬用戶的郵件存儲目錄並建立郵件存儲目錄的帳號:
useradd -M -s /sbin/nologin –u 1001 postfixadmin
mkdir /virtual_box
chown 1001.1001 virtual_box
五、
postfix掛接mysql
vim /etc/postfix/main.cf
myhostname =mail.lck.org
mydomain = lck.org
myorigin=$mydomain
inet_interfaces = all
mynetworks = 192.168.1.0/24
readme_directory = no
virtual_mailbox_base = 虛擬用戶的郵件存儲目錄
virtual_mailbox_maps = 告訴postfix虛擬用戶在數據庫中的哪一個表裏
virtual_mailbox_domains = 告訴postfix域在數據庫中的哪一個表裏
virtual_alias_maps = 告訴postfix郵件別名在數據庫中的哪一個表裏
virtual_uid_maps = 管理虛擬用戶郵件存儲目錄的帳號的uid
virual_gid_maps = 管理虛擬用戶郵件存儲目錄的帳號的gid
virtual_transport = virtual
在/etc/postfix/生成mysql_virtual_mailbox_maps.cf文件
Vim /etc/postfix/mysql_virtual_mailbox_maps.cf
User = postfix
Password = postfix
Hosts=localhost
Dbname= postfix
Table= mailbox
Select_filed = maildir
Where_fied = username
在/etc/postfix下生成mysql_virtual_domains_maps.cf文件
Vim /etc/postfix/mysql_virtual_domains_maps.cf
User = postfix
Password = postfix
Hosts=localhost
Dbname=postfix
Table=domain
Select_filed = description
Where_filed = domain
在/etc/postfix下生成mysql_virtual_alias_maps.cf
Vim /etc/postfix/mysql_virtual_alias_maps.cf
User = postfix
Password = postfix
Hosts = localhost
Dbname= postfix
Table = alias
Select_filed = goto
Where_filed = address
六、
驗證postfix是否掛接到mysql
Postmap -q aaa@lck.org mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
出現如下結果則postfix掛接mysql成功
七、 dovecot掛接mysql
vim /etc/dovecot/dovecot.conf
開啓破pop3協議
Login_trusted_networks =
Vim /etc/dovecot/conf.d/10-auth.conf
Disabled_plaintext_auth=no
Auth_mechanisms = plain login
開啓sql認證:!include auth-sql.conf.ext
Vim /etc/dovecot/conf.d/10-main.conf
Mail_location = maildir:~/虛擬用戶郵件存儲目錄/Mailbox/%u
Vim /etc/dovecot/conf.d/auth-sql.conf.ext
Passdb
Driver = sql
Args =/etc/dovecot/dovecot-sql.conf.ext
Userdb
Driver = sql
Args =/etc/dovecot/dovecot-sql.conf.ext
在/etc/dovecot下生成dovecot-sql.conf.ext 文件
Media下有此文件的模板
Cp /media/dovecot-sql.conf.ext /etc/dovecot/
·
修改虛擬用戶的郵件存儲目錄和管理該目錄的帳號的uid和gid
八、 測試dovecot是否成功掛接mysql
telnet 郵件服務器地址 110(dovecot端口
出現如下結果表示dovecot鏈接數據庫成功
九、 驗證整個郵件系統
aaa給bbb發郵件
bbb成功收到
Bbb給aaa回覆
Aaa成功收到
ok,該郵件系統搭建完成!!!!!!!!!!!!