首先是搭建后臺服務:
下載下面2個軟件包 extmail-1.2.tar.gz
extman-1.1.tar.gz
創建一個extsuite目錄,固定格式 mkdir /var/www/extsuite
將2個壓縮包解壓到/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/
切換到/var/www/extsuite/ cd /var/www/extsuite/ 將2個壓縮后的目錄改名,原目錄太長了。 mv extmail-1.2/ extmail
mv extman-1.1/ extman
cd extman 上面我們創建了一個extsuite目錄,為什么非得是extsuite。因為下面一個文件webman.cf.default里面寫的很多參數缺省的路徑/var/www/extsuite/extman/這個路徑。
cd extman/docs/
下面這個文件里面默認寫了很多mail服務數據庫的配置,將其直接導入。
MySQL -uroot -PRedhat < extmail.sql
vim init.sql //將里面的加密密碼改為名文密碼
這個文件寫了很多關于mail用戶,郵箱,別名等服務在mysql服務寫入的數據
mysql -uroot -predhat < init.sql
我們將/var/www/extsuite/extman/docs下三個關于mail的郵箱,域名,別名的文件cp到/etc/postfix目錄下.
cp mysql_virtual_alias_maps.cf mysql_virtual_domains_maps.cf mysql_virtual_mailbox_maps.cf /etc/postfix/
校驗這三個文件是否正確:mysql:/etc/postfix這個必須絕對路徑
postmap -q "support@extmail.org" mysql:/etc/postfix/mysql_virtual_alias_maps.cf
postmap -q "postmaster@extmail.org" mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
postmap -q "extmail.org" mysql:/etc/postfix/mysql_virtual_domains_maps.cf
查看一些postfix的參數,通過過濾獲取關于vitual項 postconf -d | grep virtual 將其加入到postfix的主配置文件,使其自動讀取。
postconf -e virtual_mailbox_domains=mysql:/etc/postfix/mysql_virtual_domains_maps.cf
postconf -e virtual_mailbox_maps=mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
postconf -e virtual_alias_maps=mysql:/etc/postfix/mysql_virtual_alias_maps.cf
我們使用的是虛擬用戶,當然也要創建一個虛擬用戶。
useradd -u 800 -s /sbin/nologin vmail 將其參數寫入main.cf文件,自動生效。
postconf -e virtual_gid_maps=static:800
postconf -e virtual_uid_maps=static:800
指定虛擬用戶的mail存儲位置。
postconf -e virtual_mailbox_base=/home/vmail/
postconf -e inet_interfaces=all//所有人可以使用mail服務
配置完后重啟載入。
postfix reload 測試,發封郵件試試。 mail support@extmail.org
mailq cd /home/vmail/
搭建前臺服務:
cd extmail/ 建立前臺mail主配置文件
cp webmail.cf.default webmail.cf
vim INSTALL 查看幫助
將下面的行復制到Apache配置文件下
NameVirtualHost *:80
<VirtualHost *:80>
ServerName mail.example.com
DocumentRoot /var/www/extsuite/extmail/html/
ScriptAlias /extmail/cgi /var/www/extsuite/extmail/cgi
Alias /extmail /var/www/extsuite/extmail/html
SuexecUserGroup vuser vgroup </VirtualHost>
vim /etc/httpd/conf/httpd.conf
<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 vmail vmail //有效用戶和組
</VirtualHost>
192.168.2.249 mail.extmail.org//在瀏覽器客戶端做個解析
/etc/init.d/httpd restart //重啟apache服務
cd /var/www/extsuite///默認這些文件任何人都可以使用,但我們服務是以vmail用戶身份去訪問下面的文件
chown -R vmail.vmail *
yum install perl-CGI//再次刷新發現服務不支持CGI模塊
vim webmail.cf
SYS_LOG_ON = 0//關閉日志功能
SYS_MAILDIR_BASE = /home/vmail//將主配置文件收郵件的目錄修改成我們默認的路徑
SYS_CRYPT_TYPE = plain//使用明文密碼
SYS_MYSQL_USER = extmail//修改登錄mysql數據庫所使用的用戶和密碼 SYS_MYSQL_PASS = extmail
用戶注冊的實現: cd extman/
vim INSTALL
NameVirtualHost *:80
<VirtualHost *:80>
ServerName mail.example.com
DocumentRoot /path/to/your/document/root/
ScriptAlias /extman/cgi /var/www/extsuite/extman/cgi
Alias /extman /var/www/extsuite/extman/html
SuexecUserGroup vuser vgroup
</VirtualHost>
ScriptAlias /extman/cgi /var/www/extsuite/extman/cgi
Alias /extman /var/www/extsuite/extman/html
<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 vmail vmail
</VirtualHost>
/etc/init.d/httpd restart 瀏覽器測試 http://mail.extmail.org/extman/cgi/index.cgi
會提示沒有主配置文件:
cp webman.cf.default webman.cf
修改郵件的有效用戶
SYS_MAILDIR_BASE = /home/vmail
臨時文件
SYS_SESS_DIR = /tmp/
關閉驗證嗎功能呢個
SYS_CAPTCHA_ON = 0
使用明文密碼 SYS_CRYPT_TYPE = plain
# yum install -y perl-ExtUtils-MakeMaker perl Makefile.PL
# make install
SYS_CAPTCHA_ON = 1
SYS_CAPTCHA_LEN = 4 發現驗證碼顯示不出來:
get perl-GD-2.45-1.el6.rfx.x86_64.rpm
# rpm -ivh perl-GD-2.45-1.el6.rfx.x86_64.rpm
/var/www/extsuite/extman/addon
# cp mailgraph_ext/ /usr/local/ -r
/usr/local/mailgraph_ext
# vim mailgraph-init
BASEDIR=/usr/local/mailgraph_ext
# ./mailgraph-init
# yum localinstall rrdtool-perl-1.3.8-6.el6.x86_64.rpm
# /usr/local/mailgraph_ext/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 install perl-Time-HiRes -y
# make install
# /usr/local/mailgraph_ext/mailgraph-init start
/var/www/extsuite/extman/daemon/cmdserver &
vim /etc/rc.d/rc.local
/var/www/extsuite/extman/daemon/cmdserver &
/usr/local/mailgraph_ext/mailgraph-init start
取消自由注冊:
cd extmail/
vim webmail.cf
SYS_SHOW_SIGNUP = 0
yum search dovecot
yum search dovecot-mysql.x86_64 -y 主配置文件不變。
vim 10-mail.conf
mail_location = maildir:/home/vmail/%d/%n/Maildir
first_valid_uid = 800
vim 10-auth.conf
!include auth-sql.conf.ext passdb { driver = sql 找到下面的行,提示我們去找這個文件,example-config/dovecot-sql.conf.ext
下面的是路徑/usr/share/doc/dovecot-2.0.9/example-config,這個文件只是一個模板。
# Path for SQL configuration file, see example-config/dovecot-sql.conf.ext args = /etc/dovecot/dovecot-sql.conf.ext }
我們將其cp到/etc/dovecot路徑下,
并修改以下參數。
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' AND domain = '%d'
user_query = SELECT maildir, 800 AS uid, 800 AS gid FROM mailbox WHERE username = '%u'
豆腐塊的證書制作: /etc/pki/tls/certs
證書的名字:dovecot.pem 將其分別拷貝到公鑰和加密目錄下。
cp dovecot.pem /etc/pki/dovecot/certs/
cp dovecot.pem /etc/pki/dovecot/private/
/etc/init.d/dovecot restart
重啟就ok了。
下面是TLS和SASL證書模塊和加密模塊在mail服務中的添加。和msyql的加載一樣:
yum install -y cyrus-sasl-devel yum install -y openssl-devel
# cd postfix-2.11.0//切換到加壓包的目錄
/root/postfix-2.11.0/README_FILES //這個目錄下的2個文件,less SASL_README less TLS_README 和mysql一塊重新編譯升級。
# 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 -lcrypto'
make upgrade
新聞熱點
疑難解答