設定伺服器 IP 與 DNS(實驗採用本機 DNS)。


掛載光碟至 /mnt/cdrom,修改 /etc/yum.repos.d/rhel-debuginfo.repo 指向本地套件庫,解決依賴關係。


安裝 bind bind-chroot caching-nameserver,複製範本配置 named.conf 與區域檔 a.com.zone,設定 MX 記錄指向 mail.a.com,啟動 named 並設定開機自啟。驗證 dig mail.a.com 與 dig -t mx a.com 解析正確。



yum install httpd mysql mysql-server mysql-devel openssl-devel dovecot perl-DBD-MySQL tcl tcl-devel libart_lgpl libart_lgpl-devel libtool-ltdl libtool-ltdl-devel expect。啟動 httpd、mysqld 並設定開機自啟,設定 MySQL root 密碼、授權遠端存取權限。
建立 postfix/postdrop 使用者與群組(UID/GID 2525/2526)。
make makefiles 'CCARGS=-DHAS_MYSQL -I/usr/include/mysql -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl -DUSE_TLS' 'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm -L/usr/lib/sasl2 -lsasl2 -lssl -lcrypto'
make && make install
安裝路徑採預設,指定 config_directory=/etc/postfix、html_directory=/var/www/postfix_html、manpages=/usr/local/man。
關鍵步驟: 從系統 RPM 解壓 /etc/rc.d/init.d/postfix 啟動腳本至 /etc/init.d/,啟動服務並加入開機自啟,驗證 25 埠監聽。
編輯 /etc/postfix/main.cf 設定 myhostname、mydomain、myorigin、inet_interfaces=all、mydestination、mynetworks 等核心參數。重啟服務,建立本地用戶 user1,用 telnet localhost 25 測試 SMTP 收發流程,查看 /var/log/maillog 確認郵件佇列處理正常,mail 指令收信成功。

確認 cyrus-sasl* 套件已裝。複製 /usr/lib/sasl2/Sendmail.conf 為 smtpd.conf,內容 pwcheck_method: saslauthd。啟動 saslauthd 並設定開機自啟。修改 main.cf 加入 SASL 相關參數(smtpd_sasl_auth_enable=yes 等),重啟 Postfix,telnet 驗證出現 250-AUTH PLAIN LOGIN 表示成功。






編譯安裝 courier-authlib-0.63.1,指定 --with-authmysql、MySQL 函式庫/標頭路徑、--with-authmysqlrc=/etc/authmysqlrc、--with-authdaemonrc=/etc/authdaemonrc。執行 ldconfig 刷新函式庫快取,建立標頭檔軟連結。修改 /etc/authdaemonrc(authmodulelist=authmysql)與 /etc/authmysqlrc(資料庫連線參數、查詢語句)。複製啟動腳本至 /etc/init.d/,啟動服務並設定開機自啟。建立 /var/mailbox 郵箱基目錄,權限歸 postfix:postfix。修改 /usr/lib/sasl2/smtpd.conf 指向 authdaemond socket,重啟 saslauthd 與 courier-authlib。




main.cf 追加 virtual_mailbox_base、virtual_mailbox_maps、virtual_mailbox_domains、virtual_alias_maps、virtual_uid_maps、virtual_gid_maps、virtual_transport、配額相關參數(virtual_mailbox_limit 等),均指向 /etc/postfix/mysql_virtual_*.cf。docs/extmail.sql 與 init.sql 建立 extmail 資料庫及資料表(domain、mailbox、alias 等)。授權 extmail@localhost 存取權限。複製所有 mysql_virtual_*.cf 至 /etc/postfix/。



編輯 /etc/dovecot.conf 設定 protocols = imap pop3、mail_location = maildir:/var/mailbox/%d/%n、auth_mechanisms = plain login、passdb/sql 指向 /etc/dovecot-mysql.conf、userdb/sql 同。建立 /etc/dovecot-mysql.conf 填入資料庫連線與查詢語句。啟動 Dovecot 服務。

/var/www/extsuite/extmail,chown -R postfix:postfix cgi/。webmail.cf 設定資料庫、語系、附件大小、網域等參數。DocumentRoot /var/www/extsuite/extmail/html/、ScriptAlias /extmail/cgi /var/www/extsuite/extmail/cgi、啟用 suexec 指定運行身分為 postfix、設定 DirectoryIndex index.php、AddHandler php5-script .php 等。重啟 httpd。
Unix::Syslog(perl Makefile.PL && make && make install),解決驗證碼顯示問題。/var/www/extsuite/extman,複製 webman.cf.default 為 webman.cf 修改參數(資料庫、郵箱基目錄、管理員帳密等)。

chown -R postfix:postfix /var/www/extsuite/extman/cgi/。ScriptAlias /extman/cgi ...、Alias /extman ...,重啟 httpd。/tmp/extman 目錄權限歸 postfix。






root@extmail.org / extmail*123*。登入後可建立網域、使用者、配額等。




Time::HiRes、File::Tail、rrdtool-1.2.23(./configure --prefix=/usr/local/rrdtool && make && make install)。/var/www/extsuite/extman/addon/mailgraph_ext 至 /usr/local,啟動 mailgraph-init start。cmdserver --daemon(後台顯示系統資訊)。/etc/rc.d/rc.local 開機自啟。等待 ~15 分鐘有流量後,ExtMan「圖形日誌」即可查看每日/週/月/年統計圖表。
本文出自「網路 CTO」博客,原文連結:https://7392072.blog.51cto.com/7382072/1311172