CentOS sendmail安裝及郵件域名配置


http://www.centoscn.com/CentosServer/lighttpd/2013/0726/650.html

 

sendmail是Linux下優秀的郵件系統。在不做任何設定的情況下,sendmail發出郵件的郵箱源地址形如userid@localhost.localdo,這種地址幾乎會被所有的郵箱認定為SPAM(垃圾郵件)或直接拒收。

1、 Sendmail安裝

在CentOS下,sendmail一般默認是隨操作系統一起安裝的。如果安裝系統時沒有安裝sendmail服務,手動安裝sendmail也很簡單:

view plain   copy
  1. # yum install -y sendmail

  2. # yum install -y sendmail-cf

2、 Senmail的SMTP認證配置(不需要認證的可忽略此步)

首先確認saslauthd服務是否安裝或啟動。

安裝saslauthd服務:# yum install -y saslauthd

啟動saslauthd服務:# service saslauthd start

(1) 配置Senmail的SMTP認證

# vi /etc/mail/sendmail.mc

view plain   copy
  1. dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

  2. dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl

將上面兩行的dnl去掉。在sendmail文件中,dnl表示該行為注釋行,是無效的,因此通過去除行首的dnl字符串可以開啟相應的設置行。

(2) 設置Sendmail服務的網絡訪問權限

# vi /etc/mail/sendmail.mc

view plain   copy
  1. DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl

將127.0.0.1改為0.0.0.0,意思是任何主機都可以訪問Sendmail服務。如果僅讓某一個網段能夠訪問到Sendmail服務,將127.0.0.1改為形如192.168.1.0/24的一個特定網段地址。

3、 生成Sendmail配置文件

Sendmail的配置文件由m4來生成,m4工具在sendmail-cf包中。如果系統無法識別m4命令,說明sendmail-cf軟件包沒有安裝。

生成Sendmail的配置文件:

view plain   copy
  1. m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf  

需要重啟Sendmail才能使配置文件生效。

4、 Sendmail郵件域名配置

配置sendmail使用合法的域名分兩步,修改sendmail的配置文件和添加域名MX記錄。

sendmail可以直接使用 “-r account@domain.com” 參數來以任意源地址發送郵件,但目前主流的郵箱都會將源地址和反向解析IP進行比較,如果解析不到或是解析的IP不匹配,輕則將郵件直接歸為SPAM,嚴重的就直接拒絕接收。

MX記錄(Mail Exchanger Record)主要是接收郵件時使用,即當投遞一封新郵件時,會查詢收件人域名的MX記錄,然后通過MX記錄得到的IP地址進行投遞。同時郵件廠商在接收郵件的時候也會將源地址和MX記錄進行比較,作為垃圾郵件的判斷標准之一。

第一步:添加域名

(1) 將域名加入到local-host-names文件

# vi /etc/mail/local-host-names,添加

view plain   copy
  1. sunchis.com

(2) 修改submit.cf文件

# vi /etc/mail/submit.cf,找到行 #Dj$w.Foo.COM,修改為

view plain   copy
  1. Djsunchis.com

至此,sendmail郵件命名配置完畢,重啟sendmail使配置生效。

第二步:添加域名MX記錄

找到修改域名信息的頁面(不同的域名注冊商頁面不相同),修改結果因域名商的不同最遲會在24小時內生效。

(1) 添加域名A記錄mail,直接指向你的郵件服務器的靜態IP地址:

點擊放大圖片

(2) 添加(或是修改)域名的MX記錄,形如:

點擊放大圖片

(3) 使用nslookup檢測MX記錄是否能正確解析到郵件服務器

view plain   copy
  1. # nslookup

  2. > set q=mx

  3. > sunchis.com

  4. Server:         8.8.8.8

  5. Address:        8.8.8.8#53

  6.  

  7. Non-authoritative answer:

  8. sunchis.com  mail exchanger = 10 mail.sunchis.com.

  9.  

  10. Authoritative answers can be found from:

  11. >  

OK,已經正確解析到郵件服務器所對應的域名。

5、 Relaying denied(拒絕投遞)的解決

出現 550 5.7.1 <xxx@163.com>... Relaying denied. IP name lookup failed [192.168.1.133] 異常時,原因是把sendmail當做郵件中轉站,需要將客戶端的IP地址加入到access配置文件中。

# vi /etc/mail/access,添加

view plain   copy
  1. Connect:192.168.1.133                   RELAY

重新生成訪問權限的數據庫:

view plain   copy
  1. # cd /etc/mail/

  2. # makemap hash access.db < access

這樣,問題就會得到解決.

 

sendmail是Linux下優秀的郵件系統。在不做任何設定的情況下,sendmail發出郵件的郵箱源地址形如userid@localhost.localdo,這種地址幾乎會被所有的郵箱認定為SPAM(垃圾郵件)或直接拒收。

1、 Sendmail安裝

在CentOS下,sendmail一般默認是隨操作系統一起安裝的。如果安裝系統時沒有安裝sendmail服務,手動安裝sendmail也很簡單:

view plain   copy
# yum install -y sendmail 
# yum install -y sendmail-cf 
2、 Senmail的SMTP認證配置(不需要認證的可忽略此步)

首先確認saslauthd服務是否安裝或啟動。

安裝saslauthd服務:# yum install -y saslauthd

啟動saslauthd服務:# service saslauthd start

(1) 配置Senmail的SMTP認證

# vi /etc/mail/sendmail.mc

view plain   copy
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl 
dnl define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl 
將上面兩行的dnl去掉。在sendmail文件中,dnl表示該行為注釋行,是無效的,因此通過去除行首的dnl字符串可以開啟相應的設置行。

(2) 設置Sendmail服務的網絡訪問權限

# vi /etc/mail/sendmail.mc

view plain   copy
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl 
將127.0.0.1改為0.0.0.0,意思是任何主機都可以訪問Sendmail服務。如果僅讓某一個網段能夠訪問到Sendmail服務,將127.0.0.1改為形如192.168.1.0/24的一個特定網段地址。

3、 生成Sendmail配置文件

Sendmail的配置文件由m4來生成,m4工具在sendmail-cf包中。如果系統無法識別m4命令,說明sendmail-cf軟件包沒有安裝。

生成Sendmail的配置文件:

view plain   copy
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf  
需要重啟Sendmail才能使配置文件生效。

4、 Sendmail郵件域名配置

配置sendmail使用合法的域名分兩步,修改sendmail的配置文件和添加域名MX記錄。

sendmail可以直接使用 “-r account@domain.com” 參數來以任意源地址發送郵件,但目前主流的郵箱都會將源地址和反向解析IP進行比較,如果解析不到或是解析的IP不匹配,輕則將郵件直接歸為SPAM,嚴重的就直接拒絕接收。

MX記錄(Mail Exchanger Record)主要是接收郵件時使用,即當投遞一封新郵件時,會查詢收件人域名的MX記錄,然后通過MX記錄得到的IP地址進行投遞。同時郵件廠商在接收郵件的時候也會將源地址和MX記錄進行比較,作為垃圾郵件的判斷標准之一。

第一步:添加域名

(1) 將域名加入到local-host-names文件

# vi /etc/mail/local-host-names,添加

view plain   copy
sunchis.com 
(2) 修改submit.cf文件

# vi /etc/mail/submit.cf,找到行 #Dj$w.Foo.COM,修改為

view plain   copy
Djsunchis.com 
至此,sendmail郵件命名配置完畢,重啟sendmail使配置生效。

轉自:http://www.sunchis.com/html/os/linux/2012/0503/407.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM