新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Linux上架設(shè)一臺(tái)高容量POP3服務(wù)器

        Linux上架設(shè)一臺(tái)高容量POP3服務(wù)器

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

        POP3(Post Office Protocol 3)即郵局協(xié)議的第3個(gè)版本,它規(guī)定怎樣將個(gè)人計(jì)算機(jī)連接到互聯(lián)網(wǎng)上的郵件服務(wù)器和下載電子郵件的電子協(xié)議。

        本文引用地址:http://www.104case.com/article/201610/305496.htm

        它是因特網(wǎng)電子郵件的第一個(gè)離線協(xié)議標(biāo)準(zhǔn),POP3允許用戶從服務(wù)器上把郵件存儲(chǔ)到本地主機(jī)上,同時(shí)刪除保存在郵件服務(wù)器上的郵件,而POP3服務(wù)器則是遵循POP3協(xié)議的接收郵件服務(wù)器,用來接收電子郵件的。本文將介紹如何使用開源軟件Procmail和Qpopper,在Linux系統(tǒng)上配置一臺(tái)可供大量用戶使用的POP3服務(wù)器。

        1、下載Procmail和Qpopper

        Procmail可從-3.21.tar.gz下載。

        Qpopper可從_general/下載。

        2、編譯Qpopper

        假設(shè)下載的文件放在/root

        #cd /root

        #tar xvfz qpopper4.0.3.tar.gz

        #cd qpopper4.0.3

        #./configure ——enable-hash-spool=2

        ——enable-log-login

        ——enable-server-mode

        ——enable-fast-update

        ——enable-shy

        ——enable-spool-dir=/usr/mail

        ——enable-specialauth

        注釋:

        ——enable-specialauth 使用/etc/shadow 密碼認(rèn)證——enable-hash-spool=2 使用二級(jí)hash結(jié)構(gòu)

        ——enable-spool-dir=/usr/mail 則用戶信箱文件為/usr/mail/j/e/jephe

        ——enable-log-login 記錄下成功的POP3登錄進(jìn)入syslog

        ——enable-server-mode和——enable-fast-update

        不要讓qpopper在用戶存取信箱時(shí)拷貝信箱文件到臨時(shí)文件,減少磁盤I/O,增強(qiáng)性能。

        ——enable-shy讓服務(wù)器響應(yīng)時(shí)不要顯示版本信息,增強(qiáng)安全性。

        #make

        #make install

        編輯文件/etc/nf

        在/etc/xinetd.d下創(chuàng)建文件pop3,包含下面的內(nèi)容:

        service pop3

        {

        socket_type = stream

        protocol = tcp

        wait = no

        user = root

        server = /usr/local/lib/popper

        server_args = qpopper -F -S -s -c -R -T120

        port = 110

        }注釋:

        -F enable fast update

        -S enable server mode (在用戶對(duì)該服務(wù)器沒有shell存取時(shí)做)

        -s 打開LOG功能

        -c 忽略用戶名的大小寫

        -R 不對(duì)連接進(jìn)來的IP地址做反向域名檢查

        -T 設(shè)定超時(shí)時(shí)間

        這樣設(shè)定之后,如果用戶jephe收取信件時(shí),則先鎖定信箱文件/usr/mail/j/e/jephe創(chuàng)建鎖文件.jephe.pop,檢查信件數(shù)目,退時(shí)出更新狀態(tài),生成.jephe.cache文件。

        否則正常模式下是先把/usr/mail/j/e/jephe拷貝成.jephe.pop,最后用戶檢查信箱完畢再拷貝回來,增加了I/O處理時(shí)間

        如果不是redhat則在/etc/nf中注釋以pop-3開頭的行,然后在后面再添加下面的行: pop-3 stream tcp nowait.400 root /usr/local/sbin/popper -F -S -s -c -R -T120

        nowait:400中的400是指每分鐘最多可接受的連接請(qǐng)求數(shù)目

        如果你在/etc/hosts.deny中設(shè)置了ALL:ALL,則要在/etc/hosts.allow中輸入

        popper:ALL

        3、編譯Procmail

        假設(shè)下載的文件放在/root

        #cd /root

        #tar xvfz procmail-3.21.tar.gz

        #cd procmail-3.21

        #vi src/authenticate.c

        改#define MAILSPOOLDIR行后面的/var/spool/mail為 /usr/mail/ (這里用的是/usr/mail)改#define MAILSPOOLHASH 后面的0 為 2 (用二級(jí)hash目錄,改進(jìn)服務(wù)器文件系統(tǒng)性能,特別是有大量用戶時(shí))

        注:這樣的話,如果用戶的信箱為,則文件應(yīng)存在

        /usr/mail/j/e/jephe

        #mv /var/spool/mail /var/spool/mail.bak

        注:先換名這個(gè)目錄,因?yàn)榭赡墚?dāng)編譯時(shí)如果能找到該目錄,則優(yōu)先用該目錄及hash層次結(jié)構(gòu),這樣的話將存儲(chǔ)用戶郵件到文件/var/spool/mail/j/e/jephe.如果你就想用這個(gè)目錄,就不用改上面的MAILSPOOLDIR行。

        #make

        #make install

        #make install-suid

        然后以root身份運(yùn)行#procmail -v檢查用戶的郵件路徑確認(rèn)為/usr/mail/r/o/root。

        4、創(chuàng)建POP3用戶

        你不需要為mail用戶分配home目錄,也不需要設(shè)置其主目錄為/usr/mail/j/e (假定用戶為jephe),用下面的命令創(chuàng)建用戶。

        #useradd jephe -c Jephe Wu -g mail -d /dev/null -s /bin/false

        再可以寫一個(gè)批命令用chpasswd給每個(gè)用戶以同樣的password.

        1)首先用passwd為mailuser1設(shè)置密碼,假定為abc123,檢查/etc/shadow中的密碼。

        2)創(chuàng)建一個(gè)新文件/tmp/password,每行包括一個(gè)用戶名、密碼 ,可從/etc/passwd用下面的命令取得。

        cat /etc/passwd   awk -F: '{print $1}'  sed -e

        's/$/:$$1$G22Plicn$r5.bSe0U7DbaHN7tCevTR//g'

        c. 然后運(yùn)行chpasswd /tmp/password

        5、FAQ

        編譯qpopper后,仍需在命令行上使用-F -S參數(shù)以啟動(dòng)服務(wù)器模式和快速更新,請(qǐng)放-F在-S的前面。



        關(guān)鍵詞:

        評(píng)論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 公安县| 依兰县| 榆中县| 怀柔区| 叙永县| 堆龙德庆县| 禹州市| 睢宁县| 宾阳县| 棋牌| 虞城县| 布尔津县| 长乐市| 永福县| 昭平县| 江川县| 汉中市| 南岸区| 沈丘县| 永新县| 德惠市| 乌鲁木齐县| 望谟县| 海安县| 略阳县| 嘉禾县| 铁力市| 漾濞| 永川市| 大安市| 房产| 三穗县| 鄂托克前旗| 昆山市| 新龙县| 民乐县| 新泰市| 余干县| 柳州市| 双流县| 资中县|