隨著互聯(lián)網(wǎng)的發(fā)展,e-mail迅速成長成為主要的網(wǎng)絡(luò)信息傳遞工具。面對大量要求能夠快速,廉價,和高可信賴的e-mail需求,很多公司和個人都把linux提供的服務(wù)作為滿足這些需求的解決方案。
SendMail最初是1979年由EricAllman編寫而成。它起先運行在BSD4.0平臺上。但這個程序不夠靈活,每次編譯的時候都需要重新配置。隨著TCP協(xié)議和其他方面的發(fā)展,它本身的不靈活性已經(jīng)明顯不能滿足日益增長的需求。EricAllman決定重新編寫SendMail,從而誕生了現(xiàn)在的MTA標準。這是對SendMail的簡短介紹.我們這篇文章主要是示范如何在一臺新裝的redhat7.1上用配置SendMail8.11.2服務(wù),構(gòu)架你的e-mail服務(wù)器。
redhat7.1默認安裝的時間已經(jīng)安裝了SendMail8.11服務(wù)。因為redhat安裝使用都非常的簡單,我們這里就忽略安裝過程,相關(guān)資料請查閱redhatCD里的文檔.要使你的新e-mail服務(wù)器正常工作,必須先解決DNS問題.把你的e-mail服務(wù)器的主機名和ip地址加入到DNS中,并用nslookup來確認:
以下為引用的內(nèi)容:
[root@testmail/root]#nslookup-siltestmail.blank.com
Server:192.168.100.1
Address:192.168.100.1#53
Name:testmail.blank.com
Address:192.168.100.134
同樣你也要試一下反向域名解析,這個對防止郵件延遲有很重要的作用,F(xiàn)在大部分的郵件服務(wù)器都是把反向域名解析作為郵件傳送時認證的一部分。所以用的你ip地址來試一下反向域名解析是否正確。
以下為引用的內(nèi)容:
[root@testmail/root]#nslookup-sil192.168.100.134
Server:192.168.100.1
Address:192.168.100.1#53
134.100.168.192.in-addr.arpaname=TESTMAIL.blank.com.
正如你所看到的,DNS服務(wù)工作正常,接下去就讓我們動手來配置SendMail服務(wù).redhat7.1默認安裝已經(jīng)可以使SMTP服務(wù)在本機運行。
你用netstat-nl可以看到所有后臺程序監(jiān)聽的端口,注意這一行:127.0.0.1:25,這個表示SendMail服務(wù)已經(jīng)在監(jiān)聽本機的25(SMTP)端口了:
以下為引用的內(nèi)容:
[root@testmail/root]#netstat-nl
ActiveInternetconnections(onlyservers)
ProtoRecv-QSend-QLocalAddressForeignAddressState
tcp000.0.0.0:327680.0.0.0:*LISTEN
tcp000.0.0.0:1110.0.0.0:*LISTEN
tcp000.0.0.0:220.0.0.0:*LISTEN
tcp00127.0.0.1:250.0.0.0:*LISTEN
udp000.0.0.0:327680.0.0.0:*
udp000.0.0.0:6670.0.0.0:*
udp000.0.0.0:1110.0.0.0:*
ActiveUNIXdomainsockets(onlyservers)
ProtoRefCntFlagsTypeStateI-NodePath
unix2[ACC]STREAMLISTENING1119/dev/gpmctl
unix2[ACC]STREAMLISTENING1172/tmp/.font-unix/fs7100[page]
但這個僅僅表示e-mail服務(wù)器只接收你本機的郵件。為了解決這個問題,你必須修改配置,告訴SendMail去監(jiān)聽你對外的網(wǎng)卡地址。假設(shè)你的服務(wù)器上只安裝了一塊網(wǎng)卡(eth0),并用ifconfig配置好你的ip地址,這個地址可以和DNS解析的地址不一樣,但你要保證DNS可以正確地解析郵件服務(wù)器的地址。這里我們使用的地址是一樣的(推薦):
以下為引用的內(nèi)容:
[root@testmail/root]#ifconfig
eth0Linkencap:EthernetHWaddr00:60:97:DE:E9:99
inetaddr:192.168.100.134Bcast:192.168.100.255Mask:255.255.255.0
UPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1
RXpackets:12421errors:0dropped:0overruns:0frame:0
TXpackets:5errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:100
Interrupt:10Baseaddress:0xe000
loLinkencap:LocalLoopback
inetaddr:127.0.0.1Mask:255.0.0.0
UPLOOPBACKRUNNINGMTU:16436Metric:1
RXpackets:6errors:0dropped:0overruns:0frame:0
TXpackets:6errors:0dropped:0overruns:0carrier:0
collisions:0txqueuelen:0
可以看到這臺主機的eth0的ip地址是192.168.100.134.現(xiàn)在修改/etc/SendMail.cf文件來配置SendMail的監(jiān)聽端口:
以下為引用的內(nèi)容:
#SMTPdaemonoptions
ODaemonPortOptions=Port=smtp,Addr=127.0.0.1,Name=MTA
更改為
ODaemonPortOptions=Port=smtp,Addr=192.168.100.134,Name=MTA
改完后保存退出,并且重新啟動SendMail服務(wù):
以下為引用的內(nèi)容:
[root@testmail/root]#/etc/init.d/SendMailrestart
ShuttingdownSendMail:[OK]
StartingSendMail:[OK]
[root@testmail/root]#
現(xiàn)在可以用netstat-nl來查看是不是已經(jīng)更改了.如你所看到的,SendMail的監(jiān)聽端口現(xiàn)在是eth0的ip地址:192.168.100.134了。
以下為引用的內(nèi)容:
[root@testmail/root]#netstat-nl
ActiveInternetconnections(onlyservers)
ProtoRecv-Qsend-QLocalAddressForeignAddressState
tcp000.0.0.0:327680.0.0.0:*LISTEN
tcp000.0.0.0:1110.0.0.0:*LISTEN
tcp000.0.0.0:220.0.0.0:*LISTEN
tcp00192.168.100.134:250.0.0.0:*LISTEN
udp000.0.0.0:327680.0.0.0:*
udp000.0.0.0:6670.0.0.0:*
udp000.0.0.0:1110.0.0.0:*
ActiveUNIXdomainsockets(onlyservers)
ProtoRefCntFlagsTypeStateI-NodePath
unix2[ACC]STREAMLISTENING1119/dev/gpmctl
unix2[ACC]STREAMLISTENING1172/tmp/.font-unix/fs7100
[root@testmail/root]#
///////////////////////////////////////////////////////////////
現(xiàn)在SendMail已經(jīng)可以接收來自外部的連接了。我們還需要設(shè)定SendMail允許接收的域名。這個可以在/etc/mail/local-host-names文件中設(shè)定。就把域名輸入進去就可以了:
以下為引用的內(nèi)容:
#local-host-names-includeallaliasesforyourmachinehere.
blank.com
保存退出后重新啟動SendMail服務(wù):/etc/init.d/SendMailrestart.這樣SendMail就可以接收來自多個域的信件了。
如果你需要再增加新的域,只有修改這個文件就可以了。 本文出自:億恩科技【mszdt.com】
服務(wù)器租用/服務(wù)器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|