<a href="http://blog.51cto.com/attachment/201009/181419826.jpg" target="_blank"></a>
在Linuxt服務中建構Postfix郵件伺服器,在用戶端可以通過Outlook Express、Web界面來收發郵件,我們需要先配置一下Apache、MYsql、PHP平台,另外還少不了DNS的支援,本文是建構基于系統使用者的郵件系統,Mysql可能用不上,但我們可以先配置,以便在建構基于虛拟使用者的郵件系統時使用。
在這裡就不列出Apache、MYsql、PHP的配置過程了,本實驗的AMP平台配置可參考以下兩篇博文:
DNS伺服器的配置如下:
接下來開始配置Postfix:
一.建立運作Postfix服務的使用者(postfix)、組(postfix、postdrop)
<a href="http://blog.51cto.com/attachment/201009/184139197.jpg" target="_blank"></a>
二.編譯安裝Postfix:
Postfix源碼包:postfix-2.4.6.tar.gz
vad更新檔包:postfix-2.4.6-vda-ng.patch.gz (支援對虛拟郵件使用者設定郵箱空間配額)
1.解壓并釋放源碼包、合并更新檔包:
#tar zxf postfix-2.4.6.tar.gz
#gunzip postfix-2.4.6-vda-ng.patch.gz
#cd postfix-2.4.6
#patch -p1 < ../postfix-2.4.6-vda-ng.patch
2.預配置編譯參數:
<a href="http://blog.51cto.com/attachment/201009/184633137.jpg" target="_blank"></a>
3.編譯并進行安裝:
# make && make install
三.配置并測試Postfix伺服器:
1.編輯main.cf檔案,設定如下參數:
#vi /etc/postfix/main.cf
inet——interface = 177.17.17.1, 127.0.0.1 //設定postfix伺服器監聽的IP位址,預設為all
myhostname = mail.sjzz.com //設定postfix伺服器使用的主機名
mydomain = sjzz.com //設定postfix伺服器使用的郵件域
myorigin = $mydomain //設定外發郵件時發件人位址中的郵件域名
mydestination = $mydomain, $myhostname //設定可接收郵件位址中的域名
home_mailbox = Maildir/ //設定郵件存儲位置和格式
2.添加郵件使用者的賬号:
#groupadd mailusers
#useradd -g mailusers -s /sbin/nologin pingping
#useradd -g mailusers -s /sbin/nologin zhuzhu
#useradd -g mailusers -s /sbin/nologin fangfang
#useradd -g mailusers -s /sbin/nologin lingling
#passwd pingping
#passwd zhuzhu
#passwd fangfang
#passwd lingling
3.啟動Postfix服務:
#postfix start
4.SMTP發送郵件測試:
<a href="http://blog.51cto.com/attachment/201009/190100512.jpg" target="_blank"></a>
5.檢視測試郵件是否發送成功:(成功!)
<a href="http://blog.51cto.com/attachment/201009/190213963.jpg" target="_blank"></a>
四.建構Dovecot伺服器(收信使用):
Dovecot源碼包:dovecot-1.1.4.tar.gz
1.安裝Dovecot源碼包:
<a href="http://blog.51cto.com/attachment/201009/190533557.jpg" target="_blank"></a>
#make && make install
2.配置dovecot的運作參數:
<a href="http://blog.51cto.com/attachment/201009/190748203.jpg" target="_blank"></a>
ssl_disable = yes //禁用SSL機制
protocols =pop3 imap
disable_plaintext_auth = no
mail_location = maildir: ~/Maildir
3.建立PAM認證檔案:
<a href="http://blog.51cto.com/attachment/201009/200644871.jpg" target="_blank"></a>
4.啟動dovecot服務,并驗證其監聽的TCP端口(110,143):
<a href="http://blog.51cto.com/attachment/201009/191151574.jpg" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201009/191205546.jpg" target="_blank"></a>
5.POP3接收郵件測試:(成功接收!)
<a href="http://blog.51cto.com/attachment/201009/191301106.jpg" target="_blank"></a>
五.使用Outlook Express郵件用戶端:
1.在windows xp客戶機啟動Outlook Express:
<a href="http://blog.51cto.com/attachment/201009/191544140.jpg" target="_blank"></a>
2.設定郵件賬号pingping,配置如下:
3.驗證收信:
<a href="http://blog.51cto.com/attachment/201009/201946685.jpg" target="_blank"></a>
六.配置Webmail郵件界面:
使用的軟體包:squirrelmail-1.4.13.tar.bz2
中文語言包:zh_CN-1.4.13-20071220.tar.bz2
1.安裝程式包和中文語言包:
<a href="http://blog.51cto.com/attachment/201009/192337216.jpg" target="_blank"></a>
2.建立及調整資料目錄、附件目錄:
<a href="http://blog.51cto.com/attachment/201009/192417709.jpg" target="_blank"></a>
3.建立config.php配置檔案:
$squirrelmail_default_language = 'zh_CN' ;
$default_charset = 'zh_CN.UTF-8' ;
$domain = 'sjzz.com' ;
$smtpServerAddress = 'localhost' ; //設定發信伺服器位址及端口
$smtpPort = 25 ;
$imap_server_type ='dovecot' ; //設定收信伺服器位址及端口
$imapPort = 143 ;
$data_dir = '/usr/local/apache2/htdocs/webmail/data/' ;
$attachment_dir = '/usr/local/apache2/htdocs/webmail/attach/' ;
4.啟動httpd服務,并在浏覽器中登入squirrelmail系統:
#/usr/local/apache2/bin/httpd start
通路:http://mail.sjzz.com/webmail/
<a href="http://blog.51cto.com/attachment/201009/193350254.jpg" target="_blank"></a>
<a href="http://blog.51cto.com/attachment/201009/193416935.jpg" target="_blank"></a>
七.設定SMTP的使用者認證:
1.檢視系統中已安裝的與“cyrus”相關的RPM軟體包:
2.設定Cyrus SASL函數庫,并啟動saslauthd服務:
<a href="http://blog.51cto.com/attachment/201009/193703741.jpg" target="_blank"></a>
smtpd.conf檔案如果沒下以下配置,就手動添加:
pwcheck_method: saslauthd
#service saslauthd start
3.修改main.cf配置檔案,添加SMTP認證相關的配置參數,并重新加載配置:
<a href="http://blog.51cto.com/attachment/201009/194012760.jpg" target="_blank"></a>
#postfix reload
4.測試SMTP發信認證:
通過以下指令擷取pingping的使用者名和密碼(123)的加密字元串:
<a href="http://blog.51cto.com/attachment/201009/194141911.jpg" target="_blank"></a>
使用以上字元串進行SMTP發信認證:
<a href="http://blog.51cto.com/attachment/201009/151229979.jpg" target="_blank"></a>
使用Outlook Express郵件用戶端時要進行如下設定:
<a href="http://blog.51cto.com/attachment/201009/195802979.jpg" target="_blank"></a>
八.設定使用者名與郵件群組:
1.修改main.cf配置檔案,使用“/etc/aliases”檔案的hash資料作為查詢表:
alias_maps = hash:/etc/aliases
2.設定郵件别名實作群發功能:
# vi /etc/aliases
market : pingping, zhuzhu
tech:fangfang, lingling
# newaliases
3.驗證郵件群發:
<a href="http://blog.51cto.com/attachment/201009/195825424.jpg" target="_blank"></a>
九.設定郵件大小限制、郵箱空間限制:
1.限制使用者可發送的郵件大小:(将可發送郵件的大小限制為20MB)
# vi /etc/postfix/main.cf
message_size_limit = 20971520
# psotfix reload
2.限制使用者的郵箱空間大小:
根據郵件使用者的類型、郵件存儲的方式不同,可以分别采用不同的方法來限制使用者郵箱空間的大小。
1)mailbox_size_limit (支援使用Mailbox郵件存儲方式,預設的限制值為50MB,隻對系統使用者生效)
2)virtual_mailbox_limit (支援使用Mailbox或Maildir存儲方式,預設的限制值為50MB,對虛拟使用者生效)
3)quota磁盤配配額功能 (此方式也主要針對系統使用者)
經過以上的配置,可以建構基于系統使用者的Postfix郵件系統,當然這種郵件系統隻适用于郵件使用者不多的情況下,當郵件使用者數量很多時,應該使用基于虛拟使用者的postfix郵件系統,關于虛拟使用者的postfix郵件系統的配置,将在下一篇博文中進行。
本文轉自 kk5234 51CTO部落格,原文連結:http://blog.51cto.com/kk5234/392833,如需轉載請自行聯系原作者