天天看點

Postfix+Dovecot搭建MailServer配置說明1. 概述2. 安裝Postfix和Dovecot3. 配置4. 啟動Postfix 和 Dovecot5. 添加郵件伺服器使用者并配置設定郵箱6. 測試

Postfix+Dovecot搭建MailServer配置說明

1. 概述

 MailServer是網絡郵件傳遞及接受伺服器,隻需注冊個人郵箱,通過郵件用戶端與他人發送郵件。

MailServer通過SMTP協定發送郵件,提供這種伺服器的軟體有很多,在這裡采用Postfix,Postfix擔任兩種角色一種是“郵件投遞代理”(MTA),一種是“本地信使”。作為MTA時,Postfix使用SMTP協定通過網絡收發E-mail資訊;作為“本地信使”時,則是直接将郵件分發到郵箱。

使用者想要從郵箱中提取他們的郵件,必須使用郵件用戶端連接配接到POP/IMAPserver,由伺服器代為通路郵箱。提供POP/IMAPserver的軟體很多a,這裡采用Dovecot軟體。

MailServer結構示意圖如下:

Postfix+Dovecot搭建MailServer配置說明1. 概述2. 安裝Postfix和Dovecot3. 配置4. 啟動Postfix 和 Dovecot5. 添加郵件伺服器使用者并配置設定郵箱6. 測試

2. 安裝Postfix和Dovecot

本文檔下述操作是基于Linux作業系統版本: Fedora12(核心版本Red Hat 4.4.2-7)

采用線上安裝,輸入指令如下

#yum -y install dovecot

#yum -y install postfix 

完成安裝後,鍵入如下指令,看是否安裝完全:

#rpm -qa | grep ‘dovecot’

dovecot-1.2.11-3.fc12.i686

#rpm –qa | grep ‘postfix’ 

 postfix-2.6.5-2.fc12.i686

(注:對于不同版本系統,可能需要的包有所差別,但大多數包是相同的,這裡僅供參考)

3. 配置

3.1 準備工作

安裝Postfix後會生成一些預設的目錄檔案:

/etc/postfix/

配置檔案與查詢表

/usr/libexec/postfix/

Postfix的各項服務程式

/var/spool/postfix/

隊列檔案

其中,主要配置檔案是 /etc/postfix/main.cf

檢視main.cf中參數的指令如下:

#postconf -n

    安裝Dovecot後生成配置檔案

    /etc/dovecot.conf

3.2   基本配置

3.2.1 Postfix配置

配置方式有兩種,一種是直接編輯/etc/postfix/main.cf

#vi /etc/postfix/main.cf

   配置檔案中的參數有些是被#注釋的,隻需去掉注釋符号,有些這是要修改參數的值

   第二種方式是使用指令修改

#postconf -e ‘parameter = value’ //parameter是參數名,value是參數的值

修改main.cf檔案

# vi /etc/postf/main.cf

home_mailbox = Maildir/            #使用maildir 格式郵箱

myhostname = mail.abc.com  #設定postfix服務的郵件主機名

mydomain =abc.com         #設定域名

myorigin = $mydomain               #設定由本機寄出的郵件所使用的域名

mydestination = $myhostname, $mydomain, localhost.$mydomain,localhost, 10.1.0.0/254  #設定可接受郵件的域名和主機名,還有ip段,其中 10.1.0.0/254表示10.1.0.0-10.1.0.254的IP位址都可以用

inet_interfaces = all              #設定postfix服務監聽的網絡接口

inet_interfaces = localhost 删除

relay_domains = $mydestination     #設定可以轉發那些域的郵件

recipient_bcc_maps = hash:/etc/postfix/recipient_bcc_maps #接受轉發郵件位址

sender_bcc_maps = hash:/etc/postfix/sender_bcc_maps  #發送轉發郵件位址

myhostname = mail.abc.com  #設定postfix服務的郵件主機名、域名

   在/etc/postfix/建立兩個檔案recipient_bcc_maps,sender_bcc_maps兩個檔案。兩個郵件位址之間用tab鍵隔開。

#vi /etc/postfix/sender_bcc_maps

[email protected] [email protected]

   該檔案表示發向[email protected],轉發給[email protected]

#postmap /etc/postfix/sender_bcc_maps  

#postmap /etc/postfix/recipient_bcc_maps 

   儲存之後,如果postfix是啟動的,就要使用如下指令重新加載main.cf

#postfix reload

3.2.2 Dovecot配置

  打開dovecot.conf配置檔案

#vi /etc/dovecot.conf 

protocols = pop3                    #使用POP3協定

ssl = no                            #不啟動ssl認證

mail_location = maildir:~/Maildir   #為系統使用者建立郵箱目錄

mechanisms = plain login           # 認證方式

socket listen{

 client {

    path = /var/run/dovecot/auth-client   #啟動路徑

    mode = 0660

    user = postfix

    group = postfix

 }

}

4. 啟動Postfix 和 Dovecot

  首先檢查系統中是否安裝了sendmail,一般情況都有sendmail,這裡要先将sendmail服務關閉,或者是解除安裝sendmail

#service sendmail stop       #關閉sendmail服務

#chkconfig sendmail off      #關閉開機自動運作sendmail服務

#postfix start               #打開postfix服務

#chkconfig postfix on        #開機自動運作postfix服務(我設定後開機任舊不會自動運作postfix)  

#service dovecot start       #打開dovecot服務

#chkconfig dovecot on        #開機自動運作dovecot服務

将postfix加入到root的組:

#usermod -G root postfix

檢查服務是否開啟,如果服務打開會顯示如下結果

#nmap localhost

PORT      STATE    SERVICE

22/tcp    open      ssh 

25/tcp    open      smtp

110/tcp   open      pop3

如果沒有安裝nmap指令,可以使用netstat指令

#netstat -nlt

5. 添加郵件伺服器使用者并配置設定郵箱

首先添加郵件伺服器使用者

#adduser username       //添加使用者

#passwd username        //設定密碼

    由于前面設定mail_location=mail:~/Maildir,是以,所建立的使用者目錄下有具有Maildir目錄,如果不存在該目錄,如下操作

#telnet ip位址 110

#user username

+OK

#pass password

+login

#chmod 700 /home/username/Maildir   //很重要 

6. 測試

首先,在另一台機器上打開一個終端,使用telnet指令測試

#telnet 10.1.0.3 25     //測試郵件伺服器postfix是否運作

Trying 10.1.0.3...

Connected to 10.1.0.3.

Escape character is ‘^]’

220 mail.abc.com ESMTP Postfix  //連接配接成功

helo 10.1.0.3                           //輸入helo加ip測試         

250 mail.abc.com      

#telnet 10.1.0.3 110    //測試dovecot是否正确運作

Trying 10.1.0.3...

Connected to 10.1.0.3.

Escape character is ‘^]’

+OK Dovecot ready

以上結果顯示,表明postfix和dovecot正常運作。

打開郵件用戶端,設定好就可以區域網路内發送郵件了,如果想要向外網發送郵件,隻需在DNS伺服器上,MX記錄加上郵件域名就可以了,形式如下:

IN MX 0 mail.abc.com

mail IN A 10.1.0.4