1. 程式人生 > >CentOS6.4下郵件服務器搭建

CentOS6.4下郵件服務器搭建

alias 主機名 啟動 -type 根據 under 服務器安裝 dovecot 資料

CentOS6.4下郵件服務器搭建

linux下郵件服務器的搭建大致分為三個步驟

  1. 準備工作(真實的生產環境下需要)
  2. 發送服務器安裝及配置 (Postfix)
  3. 接收服務器安裝及配置(dovecot)

一、 準備工作

1. 為郵件服務器添加DNS解析

雖然不加DNS解析也能把郵件發出去,但會被大多數郵件服務器當作垃圾郵件。根據我們的實際經驗,需要添加三條DNS解析記錄:A記錄、MX記錄、TXT記錄

2. 準備存放郵件的硬盤空間

如果用的是阿裏雲入門級Linux服務器,有一塊20G的數據盤未掛載,需要格式化並掛載

二、發送服務器安裝及配置 (Postfix)

1、卸載Sendmail

查看當前服務器環境中是否已經安裝了Sendmail 如果已經安裝了 執行下面的命令進行卸載

yum -y remove sendmail

我使用的環境是CentOS6.4 默認沒有安裝sendmail

[[email protected] ~]# rpm -qa | grep sendmail

2、安裝Postfix

查看當前服務器環境中是否已經安裝了Postfix 如果沒有安裝了 執行下面的命令進行安裝

yum -y install postfix*

我使用的環境是CentOS6.4 默認已經安裝了Postfix

[[email protected] ~]# rpm -qa | grep postfix
postfix-2.6.6-2.2.el6_1.i686

3、配置Postfix

[[email protected] ~]# vi /etc/postfix/main.cf

以下配置示例假設要配置的域名是cnblogs.info,郵件服務器主機名是mail.cnblogs.info

a) 修改myhostname

myhostname = mail.cnblogs.info

myhostname 參數即是我們的郵件伺服器的主機名稱,是由英文字母或數字所組成,比如www.google.com或mail.google.com就是一個Hostname

b) 修改mydomain

mydomain = cnblogs.info

mydomain參數設定網域名稱(Domain Name),主機名稱通常都是在建立在網域名稱之內,像是www.google.com則是網頁服務,mail.google.com則會是郵件主機服務,通常網域名稱都會是主機名稱(Hostname)去掉第一個掉包含前面的文字部份,比如說www.google.com的Domain則是google.com

c) 修改myorigin

myorigin = $mydomain

[email protected],[email protected],medesky.me就是我們的Origin Name

d) 修改smtp監聽端口

inet_interfaces = all

inet_interfaces 參數指定postfix系統監聽的網絡接口。Postfix預設只會監聽來自於本機端的所傳出的封包,必須使用上列設定,才可以傳收所有來自於網路端的所有封包

e) 修改 inet_protocols

修改Postfix的通訊協定,目前網路的協定主流有IPv4與IPv6,在大部份的情況下,我們都是利用IPv4在通訊的,如果你的Mail Server沒有需要使用到IPv6,可以做以下的設定修改

inet_protocols  =  ipv4 

f) 修改mydestination

mydestination = $myhostname, $mydomain, localhost.$mydomain, localhost

mydestination參數設定能夠接收信件的主機名稱,Postfix預設只能收到設定的Hostname與Domain Name以及本機端的信件,此步驟是再增加能收信件的網路名稱

g) 設定信任用戶端

mynetworks = 127.0.0.0/8, 192.168.1.0/24, hash:/etc/postfix/access

mynetworks 參數設定信任的用戶端,當要寄信時,會參考此值,若非信任的用戶,則不會幫你的信件轉到其它的MTA主機上

h) 設定relay_domain轉發郵件域名

規範可以relay 的MTA 主機位址,通常這個都直接設為mydestination

relay_domains = $mydestination

i) 設定郵件別名的路徑

檢查” alias_maps”設定是否為以下字串設定

alias_maps = hash:/etc/aliases   

j) 設定指定郵件別名表資料庫路徑

檢查” alias_ database”設定是否為以下字串設定

alias_database = hash:/etc/aliases  

k) 執行以下命令

用於設定郵件主機使用權限與過濾機制及郵件別名

# postmap hash:/etc/postfix/access
# postalias hash:/etc/aliases

4、重啟postfix使設置生效(使smtp服務的25號端口打開)

技術分享
[[email protected] ~]# service postfix restart
關閉 postfix:                                             [確定]
啟動 postfix:                                             [確定]
[[email protected] ~]# netstat -anp | grep :25
tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      16331/master
tcp        0      0 :::25                       :::*                        LISTEN      16331/master
技術分享

5、測試

a) 寄信測試

此時我們已經可以利用此臺主機使用smtp收送電子郵件了, 利用mail指令來測試

[[email protected] ~]# mail [email protected]
Subject: test
test
.
EOT

b) 收信測試

當我們從內部或外部寄信過來時,預設的郵件存放位址如下:

/var/spool/mail(或/var/mail)

從此目錄裏查看帳號名稱的檔案,我們所收發的信件都會存在這裏

也可以通過 mail -u 命令查看

技術分享
[[email protected] ~]# mail -u root
Heirloom Mail version 12.4 7/29/08.  Type ? for help.
"/var/mail/root": 1 message 1 new
>N  1 root                  Sat Jun 15 12:48  18/561   "test"
& 1
Message  1:
From [email protected]  Sat Jun 15 12:48:37 2013
Return-Path: <[email protected]>
X-Original-To: [email protected]
Delivered-To: [email protected]
Date: Sat, 15 Jun 2013 12:48:36 +0800
To: [email protected]
Subject: test
User-Agent: Heirloom mailx 12.4 7/29/08
Content-Type: text/plain; charset=us-ascii
From: [email protected] (root)
Status: R

test

&
技術分享

三、接收服務器安裝及配置(dovecot)

1、安裝dovecot

[[email protected] ~]# yum install -y dovecot*

2、配置dovecot

[[email protected] dovecot]# vi /etc/dovecot/dovecot.conf

a) 修改protocols支持pop3和imap

protocols = imap pop3

3) 啟動dovecot服務並開啟110、143端口

技術分享
[[email protected] dovecot]# service dovecot restart
停止 Dovecot Imap:                                        [失敗]
正在啟動 Dovecot Imap:                                    [確定]
[[email protected] dovecot]# netstat -anp | grep :110
tcp        0      0 0.0.0.0:110                 0.0.0.0:*                   LISTEN      17607/dovecot
[[email protected] dovecot]# netstat -anp | grep :143
tcp        0      0 0.0.0.0:143                 0.0.0.0:*                   LISTEN      17607/dovecot

CentOS6.4下郵件服務器搭建