2007-09-15

Linux系统上架设一台高容量的POP3服务器

来源: 本站收集整理 作者: 评论 0 条
 

  POP3(Post Office Protocol 3)即邮局协议的第3个版本,它规定怎样将个人计算机连接到互联网上的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3答应用户从服务器上把邮件存储到本地主机上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。本文将介绍如何使用开源软件Procmail和Qpopper,在Linux系统上配置一台可供大量用户使用的POP3服务器。

1、下载Procmail和Qpopper

Procmail可从http://www.procmail.org/procmail-3.21.tar.gz下载。

Qpopper可从http://www.eudora.com/qpopper_general/下载。

2、编译Qpopper

假设下载的文件放在/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 密码认证
--enable-hash-spool=2 使用二级hash结构

--enable-spool-dir=/usr/mail 则用户信箱文件为/usr/mail/j/e/jephe

--enable-log-login 记录下成功的POP3登录进入syslog

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

不要让qpopper在用户存取信箱时拷贝信箱文件到临时文件,减少磁盘I/O,增强性能。

--enable-shy让服务器响应时不要显示版本信息,增强安全性。

#make

#make install

编辑文件/etc/inetd.conf

在/etc/xinetd.d下创建文件pop3,包含下面的内容:

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 (在用户对该服务器没有shell存取时做)

-s 打开LOG功能

-c 忽略用户名的大小写

-R 不对连接进来的IP地址做反向域名检查

-T 设定超时时间

  这样设定之后,假如用户jephe收取信件时,则先锁定信箱文件/usr/mail/j/e/jephe创建锁文件.jephe.pop,检查信件数目,退时出更新状态,生成.jephe.cache文件。

  否则正常模式下是先把/usr/mail/j/e/jephe拷贝成.jephe.pop,最后用户检查信箱完毕再拷贝回来,增加了I/O处理时间。

  假如不是redhat则在/etc/inetd.conf中注释以pop-3开头的行,然后在后面再添加下面的行: pop-3 stream tcp nowait.400 root /usr/local/sbin/popper -F -S -s -c -R -T120

nowait:400中的400是指每分钟最多可接受的连接请求数目

  假如你在/etc/hosts.deny中设置了ALL:ALL,则要在/etc/hosts.allow中输入

popper:ALL

3、编译Procmail

假设下载的文件放在/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 (用二级hash目录,改进服务器文件系统性能,非凡是有大量用户时)

注:这样的话,假如用户的信箱为jephe@domain.com,则文件应存在
共2页: 上一页 1 [2] 下一页

(本文仅表明作者个人观点,不代表本站及其管理员立场.) 推荐 收藏 投稿 打印 返回 关闭
上一篇:Windows 2003下如何提高FSO安全性  
下一篇:Linux服务器集群系统实现方案详细解析
    评论加载中…
 推荐文章
     

网站首页  -  网站地图 -   站长论坛  -  网站投稿  -    -  网站管理
Copyright © 2008 芜湖站长站 All Rights Reserved 皖ICP备07500611号