<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > Sendmail配置終極指南

          Sendmail配置終極指南

          作者: 時間:2016-10-08 來源:網(wǎng)絡 收藏

          在眾多的郵件服務器軟件中,Sendmail總是能夠在每一次評比中獲得榮譽,從而使它成為目前使用最為廣泛的一種E-mail服務器。但是,說起Sendmail的配置,很多人會感到頭痛。長期以來,很多人為此不厭其煩地一遍又一遍地在BBS、新聞組上詢問其配置。筆者希望借助本文對Sendmail的使用作一個力求完滿的說明。

          本文引用地址:http://www.ex-cimer.com/article/201610/305585.htm

          下載及安裝

          Sendmail的最新版本為:8.11.3,文件大小為1.2MB。

          1.解壓縮

          # tar -zxvf Sendmail-8.11.3.tar.gz

          #cd Sendmail-8.11.3

          如果軟件包是rpm格式,則解壓安裝如下:

          #rpm -ivh Sendmail-8.11.3-src.rpm

          2.編譯

          # ./Build

          如果不出什么問題,編譯通過,編譯完成后會自動生成目錄:obj.Linux.2.2.18.i686(這是筆者的核心名稱,也許你的內核名稱與此不同)。

          3.安裝

          #./Build install

          如果是rpm 格式的軟件包,則應編譯如下:

          # rpm -ba Sendmail-8.11.1.spec

          #rpm -ivh Sendmail*.rpm

          至此編譯、安裝完成

          配置策略

          sendmail.cf是Sendmail的配置文件,它全權決定了Sendmail的屬性。這個文件定義郵件服務器為哪個域工作。其中的內容為特定宏,大多數(shù)人對它都抱有恐懼心理,因為文件中的宏代碼實在是太多。sendmail.cf通常是由一個以mc結尾的文件編譯產(chǎn)生。如Redhat自帶一個redhat.mc,用戶可以自己修改其中的一些設置,使之適合自己。筆者的sendmail.mc 文件內容如下:

          divert(-1)

          dnl This is the macro config file used to generate the /etc/sendmail.cf

          dnl file. If you modify thei file you will have to regenerate the

          dnl /etc/sendmail.cf by running this macro config through the m4

          dnl preprocessor:

          dnl m4 /etc/sendmail.mc > /etc/sendmail.cf

          dnl You will need to have the Sendmail-cf package installed for this to work.

          include(`/usr/lib/Sendmail-cf/m4/cf.m4)

          define(`confDEF_USER_ID,``8:12)

          OSTYPE(`Linux)

          undefine(`UUCP_RELAY)

          undefine(`BITNET_RELAY)

          define(`confAUTO_REBUILD)

          define(`confTO_CONNECT, `1m)

          define(`confTRY_NULL_MX_LIST,true)

          define(`confDONT_PROBE_INTERFACES,true)

          define(`PROCMAIL_MAILER_PATH,`/usr/bin/procmail)

          FEATURE(`smrsh,`/usr/sbin/smrsh)

          FEATURE(`mailertable,`hash -o /etc/mail/mailertable)

          FEATURE(`virtusertable,`hash -o /etc/mail/virtusertable)

          FEATURE(redirect)

          FEATURE(always_add_domain)

          FEATURE(use_cw_file)

          FEATURE(local_procmail)

          MAILER(smtp)

          MAILER(procmail)

          FEATURE(`access_db)

          FEATURE(`blacklist_recipients)

          dnl We strongly recommend to comment this one out if you want to protect

          dnl yourself from spam. However, the laptop and users on computers that do

          dnl not hav 24x7 DNS do need this.

          FEATURE(`accept_unresolvable_domains)

          dnl FEATURE(`relay_based_on_MX)

          編譯sendmail.mc以產(chǎn)生需要的sendmail.cf文件:# m4 /etc/sendmail.mc > /etc/mail/sendmail.cf。

          生成sendmail.cf以后,編輯sendmail.cf。在文件中,查找DS,在其后加入郵件服務器名、域名,這樣可以保證當你以username@mail.domain.com或username@domain.com發(fā)信時,用戶都可以收到,如下所示:

          # Alias for this host

          Cw mail.domain.com domain.com

          然后,就可以啟動Sendmail了:# /usr/sbin/Sendmail -bd -q20m。

          Sendmail 8.9.x以后的版本,在缺省情況下,都默認不對未驗證的計算機進行轉發(fā)(Relay),所以如果要為本機以外的其他計算機進行郵件轉發(fā),這時,應該在相應的配置文件中明確告訴Sendmail要對哪幾個主機進行轉發(fā)。如果不考慮驗證,對任何主機都進行轉發(fā)的話,可以在sedmail.mc文件中加入一行:FEATURE(promiscuous_relay)。

          不過,如果你的計算機是放在公網(wǎng)上的話,建議你不要這樣做,因為這樣做了以后,任何人都可以使用你的計算機進行轉發(fā)郵件了,特別是一些別有用心的人或一些兜售客(spammer,垃圾郵件制造者)會利用你的郵件服務器的轉發(fā)功能亂發(fā)大量的垃圾郵件。

          使用說明

          通常情況下,Sendmail不會為郵件服務Relay信息,這樣可以防止一些有惡意的人利用別人的郵件服務器亂發(fā)郵件。缺省情況下,Sendmail關閉了Relay功能。如果你要為別的服務器Relay郵件,可以進行如下設置——在access文件中加入要為其Relay信件的機器,格式為:

          hostname RELAY

          ipaddress RELAY

          如果要為一個域內多個機器Relay信件,則可以在/etc/mail/access文件中直接加入其子網(wǎng)IP或域名,如下所示:

          access文件內容:

          domainname.com RELAY(允許為域domainname的所有計算機relay郵件)

          localhost RELAY

          192.168.1.0 RELAY (為192.168.1.0此網(wǎng)內所有機器relay郵件)

          此文件惟一決定了哪些機器、哪個域可以使用郵件服務器轉發(fā)郵件。完成后需要進行編譯:#makemap hash access.db access。

          其他配置的文件關系不是很大,可以暫時使用缺省安裝的內容。至此,Sendmail應該可以正常工作了。

          接下來是測試郵件服務器的郵件發(fā)送功能,注意:測試時,不要只對本地用戶進行測試,如:你的域為abc.com,測試時,不要只在郵件服務器上測試user1@abc.com用戶。因為,此時user1是本地用戶,所以郵件服務器可以對其進行Relay。你應該從局域網(wǎng)上的另一臺機器使用Outlook等郵件客戶端對服務器進行測試。

          固定IP用戶(包括跨國性公司的用戶)沒有問題,可以在數(shù)據(jù)庫中加入其固定IP。對于經(jīng)常出差在外的人,不適用。

          排錯

          錯誤1.在Outlook中正確配置POP及SMTP服務器的地址后,出現(xiàn)如下錯誤:


          上一頁 1 2 下一頁

          關鍵詞:

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();