瑞鲁手机APP下载网_专注推荐好用的手机APP和游戏APP

设置一个高容量的Linux POP3服务器

设置一个高容量的Linux POP3服务器

查看人次:1摘自:手机游戏APP网

一: 概述  本文旨在介绍如何使用开放源软件Procmail和Qpopper来配置一台可供大量用户使用的POP3服务器,重点在于如何保持最佳的服务器性能。  二: 步骤  软件环境为RedHat Linux 7.1  1. 下载最新版的Procmail和Qpopper  Procmail 最新版本现在是3.21 可从 http://www.procmail.org/procmail-3.21.tar.gz下载。  Qpopper 最新版本现在是4.0 可从 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 7.1则在/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目录,改进服务器文件系统性能,特别是有大量用户时) 注:这样的话,如果用户的信箱为[email protected],则文件应存在 /usr/mail/j/e/jephe  #mv /var/spool/mail /var/spool/mail.bak  注:先换名这个目录,因为可能当编译时如果能找到该目录,则优先用该目录及hash层次结构,这样的话将存储用户邮件到文件/var/spool/mail/j/e/jephe.如果你就想用这个目录,就不用改上面的MAILSPOOLDIR行。  #make  #make install  #make install-suid  然后以root身份运行#procmail -v检查用户的邮件路径确认为/usr/mail/r/o/root。  4. 创建POP3用户  你不需要为mail用户分配home目录,也不需要设置其主目录为/usr/mail/j/e (假定用户为jephe),用下面的命令创建用户。  #useradd jephe -c Jephe Wu" -g mail -d /dev/null -s /bin/false  再可以写一个批命令用chpasswd给每个用户以同样的password.  a. 首先用passwd为mailuser1设置密码,假定为"abc123",检查/etc/shadow中的密 码,我的机器上"abc123"  为 $1$G22Plicn$r5.bSe0U7DbaHN7tCevTR/  b. 创建一个新文件/tmp/password,每行包括一个用户名:密码 ,可从/etc/passwd用下面的命令取得  cat /etc/passwd | awk -F: '{print $1}' |sed -e 's/$/:$$1$G22Plicn$r5.bSe0U7DbaHN7tCevTR\//g'  c. 然后运行chpasswd < /tmp/password  5. FAQ a. 编译qpopper后,仍需在命令行上使用-F -S参数以启动服务器模式和快速更新,请放-F在-S的前面

相关文摘:Linux windows
标题名称:《设置一个高容量的Linux POP3服务器》
本文网址:https://www.sdruilu.cn/news/tpart-19933.html