freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

畢業(yè)設(shè)計(jì)論文-基于qmail和vpopmail的郵件計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(編輯修改稿)

2024-10-17 21:03 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 供良好的互操作性。 4 便于開(kāi)發(fā)。源代碼公開(kāi)給二次開(kāi)發(fā)提供了良好的基礎(chǔ),同時(shí) Linux 也擁有代理的開(kāi)發(fā)工具 和平臺(tái)。 在介紹 qmail 的特點(diǎn)之前,先介紹下什么是 qmail. qmail 是一個(gè)因特網(wǎng)郵件傳送代理(簡(jiǎn)寫(xiě)為 MTA),它運(yùn)行在 linux/Unix 兼容系統(tǒng)下,是一個(gè)直接代東南大學(xué) 畢業(yè)設(shè)計(jì) 基于 qmail 和 vpopmail 的郵件計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 9 替 UNIX 下 Sendmail 軟件的郵件傳送程序。 qmail 使用 SMTP 協(xié)議 與其它系統(tǒng)上的 MTA 交換郵件。 作為 Linux 下面主流的郵件系統(tǒng)內(nèi)核 [19],大量著名的商業(yè)郵件系統(tǒng)都是在 Qmail 內(nèi)核下開(kāi)發(fā), 比如 Hotmail 等。 Qmail 具有安裝方便、安全性高、郵件結(jié)構(gòu)合理、支持 SMTP 服務(wù)、隊(duì)列管理、郵件反彈、基于域名的郵件路由、 SMTP 傳輸、轉(zhuǎn)發(fā)和郵件列表、本地 (郵件 )傳送、 POP3 服務(wù)等強(qiáng)大的功能。它已經(jīng)逐漸替代傳統(tǒng)的 Sendmail 成為 linux 下郵件系統(tǒng)內(nèi)核的主流選擇。 Qmail 具有以下特點(diǎn) [18]: 1 功能:能夠結(jié)合以前的 mail 系統(tǒng)如 sendmail 的長(zhǎng)處,系統(tǒng)設(shè)計(jì)規(guī)范,模塊化程度高。它支持多種和 Email 相關(guān)的國(guó)際標(biāo)準(zhǔn),如 SMTP、 ESMTP、 POP3 等,與現(xiàn)有的其它 Email 系統(tǒng)互操作 性良好。 Qmail 在設(shè)計(jì)時(shí)依據(jù)和 Email 系統(tǒng)有關(guān)的國(guó)際標(biāo)準(zhǔn),采用了分層的模塊化的設(shè)計(jì)思路。整個(gè)系統(tǒng)是一個(gè)樹(shù)形的結(jié)構(gòu),由核心子系統(tǒng)、本地傳送驗(yàn)證子系統(tǒng)、信件轉(zhuǎn)發(fā)子系統(tǒng)、信件隊(duì)列管理子系統(tǒng)和用戶(hù)管理子系統(tǒng)等組成。其核心結(jié)構(gòu)如圖 : 圖 qmail 的核心進(jìn)程結(jié)構(gòu) 2 性能:以前的 mail 系統(tǒng)都是單郵件提交隊(duì)列,因此存在單點(diǎn)故障問(wèn)題。如果有意外情況發(fā)生,容易造成堵塞,產(chǎn)生郵件的排隊(duì),形成功能瓶頸,導(dǎo)致郵路不暢。 Qmail 允許多個(gè)并行的遞交隊(duì)列,在缺省情況下是有 20 個(gè)提交隊(duì)列,并且可以為 每 個(gè)隊(duì)列制定不 同的處理策略,在多 CPU 的情況下,虛擬提高更為顯著。 東南大學(xué) 畢業(yè)設(shè)計(jì) 基于 qmail 和 vpopmail 的郵件計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 10 3 安全: Sendmail 所誕生的時(shí)代是個(gè)網(wǎng)絡(luò)的黃金時(shí)代,對(duì)網(wǎng)絡(luò)安全問(wèn)題考慮較少。 Qmail 從設(shè)計(jì)的一開(kāi)始就把安全問(wèn)題放在顯著位置考慮。模塊化的設(shè)計(jì)使安全機(jī)制可以方便地加入和更新。支持 ESMTP,在發(fā)信時(shí)也需要進(jìn)行身份認(rèn)證。 4 易管理和可維護(hù)性:配置文件與模塊相對(duì)應(yīng),結(jié)構(gòu)連貫,利于管理。 系統(tǒng)模塊設(shè)計(jì) 系統(tǒng)共分為三層:客戶(hù)端、服務(wù)器、數(shù)據(jù)庫(kù)??蛻?hù)端可采用 outlook、 foxmail或 Web 瀏覽器,中間層為服務(wù)器層,需要 DNS 服務(wù)器、 Web 服務(wù) 器、 qmail 服務(wù)器,這些服務(wù)器軟件可由一臺(tái)服務(wù)器硬件完成,隨著用戶(hù)的擴(kuò)展,可把這些服務(wù)分布到網(wǎng)絡(luò)上不同的服務(wù)器硬件上。數(shù)據(jù)庫(kù)采用 mysql 數(shù)據(jù)庫(kù)。如圖 所示: 圖 郵件服務(wù)系統(tǒng)總體結(jié)構(gòu) 用戶(hù)接受郵件服務(wù)流程 用戶(hù)通過(guò)網(wǎng)上郵件注冊(cè)、開(kāi)通郵件服務(wù)后可以進(jìn)行收發(fā)郵件功能,并且包括身份認(rèn)證功能,以下便是用戶(hù)接受郵件服務(wù)流程,如圖 所示 : 東南大學(xué) 畢業(yè)設(shè)計(jì) 基于 qmail 和 vpopmail 的郵件計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 11 圖 用戶(hù)接受郵件服務(wù)流程 郵件處理過(guò)程 當(dāng)接受到一個(gè)信件后 ,由 QMaillspawn 控制郵件投遞機(jī)制;它首先察 看QMailusers 機(jī)制( QMailusers 是一個(gè)給用戶(hù)指派 assign地址的系統(tǒng)),若收信人地址沒(méi)有定義在 assign 文件中,則激活 QMailgetpw程序,然后調(diào)用 QMaillocal來(lái)實(shí)現(xiàn)本地郵件投遞。 QMaillocal 首先試著投遞郵件到 localpart@host 的地址,其中 localpart 為本地用戶(hù)名。若沒(méi)有找到,則進(jìn)一步察看 /var/QMail/alias 中定義的別名,若存在對(duì)應(yīng)的別名則投遞郵件到別名對(duì)應(yīng)的用戶(hù)目錄下,否則退回郵件。 若按照 QMailusers 機(jī)制在 assign 中找到對(duì)應(yīng)于郵件目的地址的規(guī)則,則從users/assign 得到相關(guān)信息,然后進(jìn)行標(biāo)準(zhǔn)的 .QMail 文件操作。一般來(lái)說(shuō), .QMail文件被用來(lái)完成郵件轉(zhuǎn)發(fā)、別名或調(diào)用其他程序如 ezmlm 等進(jìn)行處理。若沒(méi)有找到匹配,則 QMaillocal 查找 .QMaildefault 文件,這是 QMaillocal 郵件投遞機(jī)制中最后一步。 VPOPmail 利用該文件來(lái)調(diào)激活 vdelivermail 程序,該程序以?xún)蓚€(gè)參數(shù)被調(diào)用,第一個(gè)當(dāng)前沒(méi)有作用,主要是用作向后兼容的;第二個(gè)參數(shù)是用來(lái)在一個(gè)虛擬域用戶(hù)沒(méi)有被找到時(shí) 的缺省投遞 ,一般來(lái)說(shuō),缺省投遞可以是將郵件投遞到某個(gè)目錄或某個(gè)郵件地址或返回?zé)o此用戶(hù)的返回信件。 為 Qmail 增加 smtp 用戶(hù)認(rèn)證功能 QMail 系統(tǒng)安裝完成后,其 smtp 是允許任何人匿名發(fā)送郵件的。但是,這一點(diǎn)經(jīng)常會(huì)被惡意的垃圾郵件發(fā)送者利用。因此,為了避免這種問(wèn)題發(fā)生,我們?yōu)?qmail 安裝并配置 smtp 發(fā)信密碼認(rèn)證功能。 這里先介紹下什么事 smtp 認(rèn)證功能,首先 smtp 協(xié)議 SMTP(Simple Mail Transfer Protocol)即簡(jiǎn)單郵件傳輸協(xié)議,是一種提供可靠且有效電子郵件傳 輸?shù)臇|南大學(xué) 畢業(yè)設(shè)計(jì) 基于 qmail 和 vpopmail 的郵件計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 12 協(xié)議。 SMTP 是建立在 FTP 文件傳輸服務(wù)上的一種郵件服務(wù),主要用于傳輸系統(tǒng)之間的郵件信息并提供與來(lái)信有關(guān)的通知。 SMTP 目前已是事實(shí)上的在Inter 傳輸 EMai 的標(biāo)準(zhǔn),是一個(gè)相對(duì)簡(jiǎn)單的基于文本的協(xié)議。在其之上指定了一條消息的一個(gè)或多個(gè)接收者(在大多數(shù)情況下被確定是存在的),然后消息文本就傳輸了??梢院芎?jiǎn)單地通過(guò) Tel 程序來(lái)測(cè)試一個(gè) SMTP服務(wù)器, SMTP 使用 TCP 端口 25。要為一個(gè)給定的域名決定一個(gè) SMTP 服務(wù)器,需要使用 MX(Mail eXchange) DNS。 smtp 下的 relay 規(guī) 則也可以理解成轉(zhuǎn)發(fā)規(guī)則 [7]。當(dāng)用戶(hù)使用 tel 到某一個(gè)端口 25( smtp 端口),或者使用類(lèi)似 outlook 這樣的 MUA(用戶(hù)投遞代理)發(fā)送郵件時(shí),服務(wù)器都會(huì)在后端判斷是否允許轉(zhuǎn)發(fā)(發(fā)送)這份郵件,判斷的依據(jù)是接收方的域名是否在允許之內(nèi)。 在 Qmail 中,有一個(gè)名為 rcpthosts(該文件名源于 RCPT TO 命令 )的配置文件,其決定了是否接受一個(gè)郵件。只有當(dāng)一個(gè) RCPT TO 命令中的接收者地址的域名存在于 rcpthosts 文件中時(shí),才接受該郵件 ,否則就拒絕該郵件。若該文件不存在,則所有的郵件將被接受。 當(dāng)一個(gè)郵件服務(wù)器不管郵件接收者和郵件接收者是誰(shuí),而是對(duì)所有郵件進(jìn)行轉(zhuǎn)發(fā) (relay),則該郵件服務(wù)器就被稱(chēng)為開(kāi)放轉(zhuǎn)發(fā) (open relay)的。當(dāng) qmail 服務(wù)器沒(méi)有 rcpthosts 時(shí),其是開(kāi)放轉(zhuǎn)發(fā)的。 設(shè)置自己服務(wù)器為非 open relay 的最簡(jiǎn)單的辦法就是將郵件服務(wù)器的所有域名 (若 DNS 的 MX 記錄指向該機(jī)器,也應(yīng)該包括該域名。 )都存入 rcphosts 中。但是要想實(shí)現(xiàn) smtp 用戶(hù)漫游功能,也就是任何網(wǎng)絡(luò)的合法用戶(hù)都能發(fā)信,僅使用 rcphosts 就很難操作了,因?yàn)椴豢赡苊恳粋€(gè)用戶(hù)連接進(jìn)來(lái)就修改一次rcphosts,使之包括發(fā)信人域名和 ip,再重起 qmail。顯然,這種方法很不現(xiàn)實(shí)。 qmailsmtpd 支持一種有選擇性的忽略 rcpthosts 文件的方法:若 qmailsmtpd的環(huán)境變量 RELAYCLIENT 被設(shè)置,則 rcpthost 文件將被忽略, relay 將被允許。但是如何識(shí)別一個(gè)郵件發(fā)送者是否是自己的客戶(hù)呢? qmail 并沒(méi)有采用密碼認(rèn)證的方法,而是判斷發(fā)送郵件者的源 IP 地址,若該 IP 地址屬于本地網(wǎng)絡(luò),則認(rèn)為該發(fā)送者為自己的客戶(hù)。 如果要實(shí)現(xiàn) SMTP 認(rèn)證后的 relay ,不需要對(duì)任何IP 進(jìn)行預(yù)先設(shè)定,所 以默認(rèn)規(guī)則設(shè)置成 只對(duì)本服務(wù)器 relay。 tcpserver 的配置文件是 /etc/,該文件定義了是否對(duì)某個(gè)網(wǎng)絡(luò)設(shè)置RELAYCLIENT 環(huán)境變量。例如,本地網(wǎng)絡(luò)是地址為 ,則 的內(nèi)容應(yīng)該設(shè)置如下: :allow,RELAYCLIENT= .:allow,RELAYCLIENT= :allow 這幾個(gè)規(guī)則的含義是指若連接來(lái)自 和 則允許,并且為其設(shè)置環(huán)境變量 RELAYCLIENT,否則允許其他連接,但是不設(shè)置 RELAYCLIENT 環(huán)境變量。如果只需要對(duì)本機(jī) relay,第二行可以不要。這樣當(dāng)從其他地方到本地的某一個(gè)前面設(shè)置的端口 25 連接將會(huì)被允許,但是由于沒(méi)有被設(shè)置環(huán)境變量,所以其連接將會(huì)被 qmailsmptd 所拒絕。 我們可使用 checkpassword 或者 vchkpw 軟件包來(lái)解決用戶(hù)發(fā)信的驗(yàn)證問(wèn)題,而密碼驗(yàn)證程序原來(lái)只使用于 pop3 進(jìn)程,分別由 root 或 vpopmail 執(zhí)行,為的是讀 shadow 或數(shù)據(jù)庫(kù)中的密碼,并取出用戶(hù)的郵件目錄。這些操作 qmaild 都 沒(méi)有權(quán)限去做。如果 smtp 進(jìn)程要調(diào)用密碼驗(yàn)證程序,則必須要使用 setuid 和setgid 。這兩個(gè)密碼驗(yàn)證程序都是帶源代碼的,本身非常安全,只需要放在安東南大學(xué) 畢業(yè)設(shè)計(jì) 基于 qmail 和 vpopmail 的郵件計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 13 全的目錄里就可以了。 使用虛 擬郵件域構(gòu)建郵件服務(wù) 個(gè)人電腦擁有強(qiáng)大的功能,單獨(dú)的一臺(tái)能夠輕易地完成幾臺(tái)服務(wù)器的任務(wù),隨著 inter 和郵件系統(tǒng)的成功,我們不得不管理越來(lái)越多的郵件域 虛擬郵件域的基本原理是一種在同一個(gè)服務(wù)器上管理 單獨(dú)的用戶(hù)列表的方法,每個(gè)虛擬域有他自己的密碼文檔,自己的緩沖目錄和用戶(hù)化名文檔 ,對(duì)每個(gè)虛擬郵件域, linuxconf 將建立: ◆ /etc /vmail / ◆ /etc /vmail / ◆ /etc /vmail / ◆ /var /spool /vmail / virtual_domain ◆ /vhome /virtual_domain / 這里, virtual_domain 是域名,本次畢設(shè)我創(chuàng)建的域名是 Qmail 對(duì)于郵件域有 local 和 virtual 的概念。 local 域是實(shí)現(xiàn)匹配/etc/passwd 賬號(hào);而虛擬域則匹配于羅列在 qmail 的控制文件 virtualdomains的各個(gè)域。 Vpopmail 則利用 qmail 的 users/assign 和 virtualdomains 文件。 Vpopmail利用該方法來(lái)實(shí)現(xiàn)使 qmail 以單一的 vpopmail/vchkpw身份來(lái)傳輸所有的虛擬域的郵件,從而實(shí)現(xiàn)將郵件傳輸?shù)?vpopmail/domains/virtualdomain目錄下的不同用戶(hù)。 數(shù)據(jù)庫(kù)設(shè)計(jì) 數(shù)據(jù)庫(kù)的設(shè)計(jì)主要是 2 個(gè)庫(kù),一個(gè) qmail 庫(kù),一個(gè) vpopmail 庫(kù),其中分別都有其向?qū)?yīng)的日志,及 qmaillog 表和 dir_control 表,以及延伸到 Lastauth 表,Relay 表, Vlog 表等,下面有圖示可以更清晰直觀的了解 。 如圖 : 東南大學(xué) 畢業(yè)設(shè)計(jì) 基于 qmail 和 vpopmail 的郵件計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 14 數(shù)據(jù)庫(kù)的設(shè)計(jì) 東南大學(xué) 畢業(yè)設(shè)計(jì) 基于 qmail 和 vpopmail 的郵件計(jì)費(fèi)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 15 第三章 系統(tǒng)實(shí)現(xiàn) 本章是本次畢設(shè)的中心環(huán)節(jié),著重介紹了系統(tǒng)的實(shí)現(xiàn)過(guò)程,包括系統(tǒng)環(huán)境的配置、郵件服務(wù)器系統(tǒng)的實(shí)現(xiàn)、數(shù)據(jù)庫(kù)服務(wù)器系統(tǒng)的實(shí)現(xiàn)等。 軟硬件 環(huán)境 本次畢設(shè)操作系統(tǒng)采用的是 linux 的 ubuntu 版本 [19] 而服務(wù)器則主要分為三個(gè)服務(wù)器,其中 Email 服務(wù)器軟件采用的 Qmail 軟件的改進(jìn), 版本。 Web 服務(wù)器軟件 Apache, DNS 服務(wù)器軟件 bind9。 DNS服務(wù)器的配置 域名服務(wù)( Domain Name Service,簡(jiǎn)稱(chēng) DNS)是一個(gè)系統(tǒng) ???,它負(fù)責(zé)主機(jī)名到 IP 地址的映射和逆映射。 DNS 軟件一般是用 Berkeley 的 Inter 命名域( BIND)來(lái)實(shí)現(xiàn),本次畢設(shè)采用的是 ubuntu 操作系統(tǒng)下的 bind9. DNS 服務(wù)器分為三類(lèi): ? 主 DNS 服務(wù)器( master 或 primary) ? 從 DNS 服務(wù)器( slave 或 secondary) ? 緩沖 DNS 服務(wù)器( caching) 而本次我是在學(xué)校系樓的實(shí)驗(yàn)室內(nèi)完成的,所以我便利用已有的校園網(wǎng),只需運(yùn)行一個(gè)子域
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1