利用sendmail搭建郵件服務器

人們在互聯網上最常使用的就是電子郵件了,很多企業用戶也經常使用免費的電子郵件系統。今天我就給大家介紹一種在Red Hat Linux 9.0環境下運行的郵件服務器軟件Sendmail.Sendmail作爲一種免費的郵件服務器軟件,已被廣泛的應用於各種服務器中,它在穩定性、可移植性、及確保沒有bug等方面具有一定的特色,且可以在網絡中搜索到大量的使用資料。

一、安裝Sendmail

  完全安裝Red Hat Linux 9.0時,Sendmail就會自動內置,版本號爲8.12.8-4.如果你不確定Linux是否已經安裝有sendmail,可以輸入以下命令查看:

  [root@ahpeng root] rpm –qa grep sendmail

  如果確定沒有安裝,請在圖形界面下依次選擇單擊“主菜單-系統設置-添加刪除應用程序”,然後在打開的“軟件包管理”窗口裏選中“郵件服務器”選項,點“更新”後按照提示安裝即可。

   另一種辦法是:直接插入Linux第1張安裝光盤,選擇/RedHat/RPMS目錄下的sendmail-8.12.8-4.i386.rpm安裝 包,之後運行[root@ahpeng RPMS] # rpm -ivh sendmail-8.12.8-4.i386.rpm即可開始安裝,再用此方法在第3張安裝光盤的同目錄下依次安裝sendmail- cf.8.12.8-4.i386.rpm、sendmail-doc. 8.12.8-4.i386.rpm.


二、啓動Sendmail服務系統

  筆者建議使用帶參數的Sendmail命令控制郵件服務器的運行:

  [root@ahpeng root]# sendmail -bd –q12h

  -b:設定Sendmail服務運行於後臺。

  -d:指定Sendmail以Daemon(守護進程)方式運行。

  -q:設定當Sendmail無法成功發送郵件時,就將郵件保存在隊列裏,並指定保存時間。上面的12h表示保留12小時。

  此外,要檢測Sendmail服務器是否正常運行,可以使用命令行:

  [root@ahpeng root]#  /etc/rc.d/init.d/sendmail status


三、配置Sendmail

  sendmail.cf的配置語法比較難懂,一般資料上都是採用m4宏處理程序來生成所需的sendmail.cf文件(使用m4編譯工具一般不容易出錯,還可避免某些帶有安全漏 洞的宏對服務器造成的破壞)。其配置文件位於/etc/mail/sendmail.cf,在創建的過程中還需要一個模板文件,Linux自帶有一個模板 文件,位於/etc/mail/sendmail.mc.故可以直接通過修改sendmail.mc模板來達到定製sendmail.cf文件的目的,而 不必去死啃哪些難理解的配置命令。配置步驟爲:

  第一步:用模板文件sendmail.mc生成sendmail.cf配置文件,並導出到/etc/mail/目錄下,使用命令行:m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

  第二步:再用[root@ahpeng root] /etc/rc.d/init.d/sendmail restart命令行重啓sendmail.

  至此,郵件服務系統配置完成,已經正常工作。接下來就是創建具體的帳戶了。


四、建立電子郵件新帳號

  此步驟相對簡單,只需在Linux裏新增一個用戶即可。依次進入“主菜單-系統設置-用戶和組羣”選項,接着打開“Red Hat用戶管理器”對話框,點“添加用戶”按鈕,在接着出現的“創建新用戶”窗口中輸入用戶名及密碼即可。

  創建mail使用帳號,命令行方式爲:[root@ahpeng root]#adduser mailA -p Pass,表示創建了一個mailA的帳號,密碼爲Pass.


五、限制單個用戶郵箱容量

  如果對用戶的郵件容量不加限制,服務器的硬盤是不堪重負的。這可以使用“郵件限額”功能來實現:因爲電子郵件的暫存空間是位於/var/spool/mail目錄下的,所以只需通過磁盤配額設定每一個郵件帳戶在此目錄下能使用的最大空間即可。


六、單一用戶設定多個郵件地址

  使用別名(alias)可以解決這個問題。別名是sendmail最重要的功能之一。它在aliases這個文本文件中定義,aliases文件的位置由sendmail.cf指定,一般位於/etc目錄下。比如前面我們建立的mailA用戶要擁有2個郵件地址:[email protected][email protected],可以這樣設置:

  首先, 新增一個賬號mailC,然後用Linux的文本編輯器打開/etc/aliases,在裏面加上dearpeter: mailC和truepeter: mailC這兩個命令行;然後在命令窗口運行newaliases命令,以要求Sendmail重新讀取/etc/aliases文件。如果正確無誤,會 出現一段迴應消息,表示配置成功。這樣就可以使用2個地址給mailC發信,而mailC則只需用其中一個賬號就可接收寄給以上2個地址的所有郵件。

  經過以上步驟後,應該就可以用Outlook Express正常發送郵件了,但這時還不能用Outlook Express從服務器端收取郵件的,因爲sendmail默認狀態並不具備POP3功能,我們還得自己安裝並啓用它。

1.POP3(IMAP)服務器安裝

  第一步:用以下命令行檢查系統是否安裝:

  [root@ahpeng root]# rpm -qa imap

  imap-2001a-18

  第二步:插入第2張安裝光盤,使用下面的命令行開始安裝:

  [root@ahpeng root]#cd /mnt/cdrom/RedHat/RPMS

  [root@ahpeng root]#rpm -ivh imap-2001a-18.i386.rpm

2.啓用POP3(IMAP)服務

  POP3服務:請先修改/etc/xinetd.d/ipop3文件,將其中的disable=yes改爲disable=no後保存;然後重新啓動xinetd程序來讀取這個修改過的配置文件,使之生效。

  命令行:[root@ahpeng root]#/etc/rc.d/init.d/xinetd reload

  啓動IMAP服務的步驟跟POP3一樣,只不過IMAP的配置文件爲/etc/xinetd.d/imap.


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章