建立具身分认证功能之防毒型电子邮件伺服系统.docx

上传人:b****3 文档编号:4311575 上传时间:2022-11-29 格式:DOCX 页数:6 大小:47.20KB
下载 相关 举报
建立具身分认证功能之防毒型电子邮件伺服系统.docx_第1页
第1页 / 共6页
建立具身分认证功能之防毒型电子邮件伺服系统.docx_第2页
第2页 / 共6页
建立具身分认证功能之防毒型电子邮件伺服系统.docx_第3页
第3页 / 共6页
建立具身分认证功能之防毒型电子邮件伺服系统.docx_第4页
第4页 / 共6页
建立具身分认证功能之防毒型电子邮件伺服系统.docx_第5页
第5页 / 共6页
点击查看更多>>
下载资源
资源描述

建立具身分认证功能之防毒型电子邮件伺服系统.docx

《建立具身分认证功能之防毒型电子邮件伺服系统.docx》由会员分享,可在线阅读,更多相关《建立具身分认证功能之防毒型电子邮件伺服系统.docx(6页珍藏版)》请在冰豆网上搜索。

建立具身分认证功能之防毒型电子邮件伺服系统.docx

建立具身分认证功能之防毒型电子邮件伺服系统

建立具身分認證功能之防毒型電子郵件伺服系統

-----在Solaris系統上以sandwich架構架設具CyrusSASL身分認證之sendmail及InterscanVirusWall

陳婉佳

國立彰化師範大學電子計算機中心

彰化市進德路一號(04-7232105-1533)

cwj@cc.ncue.edu.tw

因電子郵件病毒的猖獗,使各校紛紛於電子郵件伺服器上加裝防毒軟體,在考量效率、價格、方便性及穩定性等因素,使得趨勢公司的InterscanVirusWall獲得許多單位的電子郵件伺服器所採用,但對於以unix系統為作業系統並在同一台主機上架設InterscanVirusWall防毒系統的電子郵件伺服器,此方式是以Interscan所提供的程式來作為等待使用者寄信需求的daemon程式,如此一來使得原具有身分認證模組的sendmail程式無法發揮其功能,因此對於此種架構之電子郵件系統均停止運作「寄件者身分認證」的功能;但寄件者身分認證功能對很多單位而言是非常重要的功能,它除了可以達到將實際的寄件者資料記錄在信件的標頭上的功能外,還可以提供給使用者在單位以外的外部網路,使用單位內部的電子郵件主機轉寄信件,例如出差或是下班回家之後,可以繼續使用公司的郵件伺服器發信;學生放假離開學校之後也可使用學校的郵件主機發出信件。

本文將介紹另一種方法,稱之為sandwich架構,在一台unix主機上以多層次的架構來架設sendmail及防毒系統InterscanVirusWall,使用此架構將可完成兼具防毒及身分認證功能的電子郵件系統,此架構已經吾人過實際運用且效能優良,本文將詳述如何架構此一系統,另外本文中亦將吾人在實作過程中所遭遇的問題與解決方法提供給所有管理者參考。

壹、一般架構

圖一為於同一主機上之防毒系統與電子郵件系統之一般架構,以daemon方式啟動/etc/iscan/sendmail,使用port25來接受使用者的寄信或其他MTA(MailTransferAgent)轉信的需求,信件接收進來後會接受掃毒,再以執行命令/usr/lib/sendmail–bs的方式呼叫sendmail來遞送信件,/usr/lib/sendmail是以backgroudprocesses方式啟動而非daemon方式,在此架構下Interscanviruswall擋在sendmail之前,故sendmail許多功能被Interscanviruswall取代,例如允許哪些client端利用電子郵件主機當作relayserver寄信,已不再由sendmail的/etc/mail/access資料庫控制,而是由/etc/iscan/localdomain.txt取代;另外若sendmail郵件伺服軟體,搭配cyrussasl身分認證程式庫,原本可達成的身分認證功能也失效。

圖一一般架構:

於同一主機上之防毒系統與電子郵件系統

貳、sandwish架構

圖二sandwich架構:

於同一主機上之防毒系統與電子郵件系統三層式架構

在圖二的sandwich防毒架構中,防毒系統與電子郵件系統形成三層式架構,第一個sendmail以daemon方式啟動,使用port25來接受使用者的寄信或其他MTA(MailTransferAgent)轉信的需求,信件接收進來後會交由使用port18000的Interscanviruswall來掃毒,掃毒完畢再交由第二個也是以daemon方式啟動並使用port19000的sendmail來真正遞送信件,與「一般架構」作比較,在此架構下Interscanviruswall位於第一個sendmail之後,故sendmail許多功能沒被Interscanviruswall取代,例如允許哪些client端利用電子郵件主機當作relayserver寄信,還是由sendmail的/etc/mail/access資料庫控制;另外sendmail郵件伺服軟體搭配cyrussasl身分認證程式庫,即可達成的身分認證功能,使供內部可信賴區域以外的本機使用者轉送郵件(mailrelay)。

參、具CyrusSASL身分認證功能之sandwich架構系統實作

以下詳述整個建立具身分認證功能之防毒型電子郵件伺服系統之過程及需特別注意的事項:

一、安裝相關軟體

先分別安裝interscanviruswall、cyrus-sasl、sendmail等軟體,sendmail在安裝時記得加入以下內容至mc檔再buildcf檔,以使sendmail啟動認證功能。

#echo"dnlThefollowinglinesareusedtoenableCYRUS-SASLfunction">MYFC.mc

#echo"TRUST_AUTH_MECH(`LOGINPLAIN')dnl">>MYCF.mc

#echo"define(`confAUTH_MECHANISMS',`LOGINPLAIN')dnl">>MYCF.mc

二、架構FirstSendmail

1.先將sendmail.cf複製至另一檔sendmail.cf.delivery

2.在sendmail.cf檔中,指定sendmail的smtp遞送程式為[IPC]port18000,即InterscanViruswall:

更改前:

Msmtp,P=[IPC],F=mDFMuX,S=11/31,R=21,E=\r\n,L=990,

T=DNS/RFC822/SMTP,

A=IPC$h

更改後:

Msmtp,P=[IPC],F=kmDFMuX,S=11/31,R=21,E=\r\n,L=990,

T=DNS/RFC822/SMTP,

A=IPClocalhost18000

若有Msmtp,Mesmtp,Msmtp8,Mdsmtp,Mrelay等項目也一併更改為以上之設定,注意在F選項需加入旗標k。

M=開頭定義一個郵件遞送代理程式

P=表示處理遞送代理程式的完整路徑,[IPC]是sendmail內部使用的一個特殊名稱,用以表示sendmail在TCP/IP網路通訊上的內在能力,它是interprocessorcommunication的縮寫。

A=用於指定程式執行時所需要的指令列引數。

$h是含有收件人主機名稱的巨集。

F=指定某些旗標,告訴sendmial關於遞送代理程式更多的訊息。

M,同一時間遞送給多位使用者;

D,將Date:

包含在標頭中:

F,將From:

包含在標頭中;

M,將Msseage-ID:

包含在標頭中;

u,保留收件人姓名中的大小寫形式;

X,將一行中單一的句點重複再行傳送;

a,執行擴充的SMTP協定;

S=指示使用哪一個規則集改寫寄件人地址sender

R=指示使用哪一個規則集改寫收件人地址recipient

T=列出三欄與遞送代理程式有關的資訊,T=DNS/RFC822/SMTP,第一欄是使用的MTA類型,sendmail使用DNS查詢地址;第二欄是所用的地址類型;第三欄是所用的錯誤訊息的格式。

3.在sendmail.cf檔中,指定sendmail的localmailer遞送程式為[IPC]port18000,即InterscanViruswall:

更改前:

Mlocal,P=/usr/lib/mail.local,F=lsDFMAw5:

/|@qfSmn9,S=10/30,R=20/40,

T=DNS/RFC822/X-Unix,

A=mail.local-d$u

更改後:

Mlocal,P=[IPC],F=klsDFMAw5:

/|@qSmn9,S=10/30,R=20/40,

T=DNS/RFC822/X-Unix,

A=IPClocalhost18000

注意在F選項需加入旗標k,但不能包含f旗標。

三、架構SecondSendmail

1.在SecondSendmail的組態檔sendmail.cf.delivery,指定Secondsendmail使用port19000成為一daemon程式來接受要求,有別於Firstsendmial使用port25。

更改前:

#ODaemonPortOptions=Port=esmtp或ODaemonPortOptions=Name=MTA

ODaemonPortOptions=Port=587,Name=MSA,M=E

更改後:

#ODaemonPortOptions=Port=esmtp或#ODaemonPortOptions=Name=MTA

ODaemonPortOptions=Port=19000#ODaemonPortOptions=Port=587,Name=MSA,M=E

ODaemonPortOptions=Port=19000

2.在SecondSendmail的組態檔sendmail.cf.delivery,更改SecondSendmail的mailqueue位置。

更改前:

OQueueDirectory=/var/spool/mqueue

更改後:

OQueueDirectory=/var/spool/mqueue1

O指令用來設定sendmail的選項,選項可以指定重要檔案的位置、設定逾時的時間,並定義sendmial如何運作,以及遇到錯誤時如何處理。

例如OQueueDirectory=/var/spool/mqueue指定佇列目錄。

3.在SecondSendmail的組態檔sendmail.cf.delivery,將定義郵件遞送代理程式Mlocal,Msmtp,Mesmtp,Msmtp8,Mdsmtp,Mrelay的F選項需加上旗標k。

4.產生目錄/var/spool/mqueue1,並確定其權限與/var/spool/mqueue相同。

四、架構Interscanviruswall

將InterScanSMTPserviceport設定為18000,並指定originalSMTPserverlocationto為“localhost19000”,修改intscan.ini檔,如下:

更改前:

svcport=25

original=/usr/lib/sendmail-bs

更改後:

svcport=18000

original=localhost19000

記得在Interscanviruswall的web功能介面也要一併更改設定,Configuration->E-MailScan->OriginalSMTPServerLocation選擇LocalServer->CommandMode設定localhost19000。

五、修改Interscanviruswall及sendmail的啟動檔S88sendmailrc:

更改前:

/etc/iscan/sendmail

/usr/lib/sendmail–q1h

更改後:

/etc/iscan/sendmail

/usr/lib/sendmail-Lfirst--smtp-daemon-bd-q4h

/usr/lib/sendmail-Lsecond-smtp-daemon-bd-q4h-C/etc/mail/sendmail.cf.delivery

使主機開機後自動啟動Firstsendmail、interscanviruswall及secondsendmail三個daemon程式。

當設定"sandwich"架構啟動郵件系統後,兩個Sendmaildaemons使用同一個紀錄檔:

/var/log/syslog應如何辨認哪一筆是紀錄哪一個daemon的資料?

利用啟動sendmaildaemon指令的參數,-L參數是指定用於syslogmessages的identifier.在上例,第一個daemon會在紀錄上有個標籤:

"first-smtp-daemon",第二個daemon會在紀錄上有個標籤:

"second-smtp-daemon"。

六、最後啟動sendmail及interscanviruswall:

1.     /etc/rc2.d/S88sendmailstop

2.     /etc/rc2.d/S88sendmailstart

肆、進階問題及解決方法

系統架設完畢正常運作後,一般狀況第一層sendmail的信件佇列中只會有極少數暫時存在的信件佇列在其中,若發生部分信件會佇列在mailqueue中,且出現的問題描述是I/Oerror,但對方電子郵件伺服主機又沒問題時,可以調整第一層sendmail設定檔中郵件遞送代理程式F參數的旗標,

更改前:

Mlocal,P=/usr/lib/mail.local,F=lsDFMAw5:

/|@qfSmn9,S=10/30,R=20/40,T=DNS/RFC822/X-Unix,A=mail.local-d$u

更改後:

Mlocal,P=[IPC],F=klsDFMAw5:

/|@qSmn9X,S=10/30,R=20/40,T=DNS/RFC822/X-Unix,A=IPClocalhost18000

增加F參數的旗標X,作用是令mailer增加"."在信件的結束。

如果管理者想要更確保電子郵件主機的系統安全,可以考慮將主機放入防火牆中加以保護InterscanVirusWall及Secondsendmaildaemon不要對外開放。

伍、參考文獻

1.BryanCostales,sendmail:

Thefundamentals,O’REILLY。

2.Yu-linChang,AcademiaSinicaComputingCentre,http:

//beta.wsl.sinica.edu.tw/~ylchang/Email/sendmail-auth/index.html。

3.趨勢科技,.tw/。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1