邮件系统 设为首页
加入收藏
总编信箱
| 第一邮局 | 免费邮箱 | 邮箱评测 | 企业邮局 | 移动邮件 | 邮件系统 | 邮件营销 | 反垃圾邮件 | 邮件客户端 | 邮件安全 |
当前位置:第一邮局>邮件系统>SendMail>文章内容

sendmail中限定用户邮箱大小的方法

来源:Mail1.com.cn 编辑:Mail 发布时间:2007-05-21 [收藏] [推荐] [评论(0条)]
目前,在Linux/Unix平台上,Sendmail因成为缺省安装的邮件服务器而得到非常广泛的应用

。但是Sendmail本身并不具有限定用户邮箱大小的功能,所以,如果某些用户长时间不取信或设定了保留邮件副本,其信件将在服务器上不断堆积,以致邮箱越来越大,占用大量的硬盘空间,很多网络管理员对此都很有意见。这里介绍一种简单实用的方法,通过它,我们可以很方便灵活地对用户邮箱的大小进行设定。


基本思路
---- 先设定一个用户邮箱大小的门限值;然后定期启动一个进程,检查每一个用户邮箱文件的大小,将所有超过这一限值的邮箱文件名临时写进某一特定的文件中; 再读取该文件,将它写进Sendmail 的黑名单(blacklist_recipients) 中,从而使邮件服务器拒收该用户的新邮件,直到下次检查时该邮箱大小已小于设定的门限值为止。


运行环境
---- 我们以Solaris 2.7操作系统为例进行说明,其他Unix(或Linux)系统可参照来做。

---- 本文以Sendmail 8.11.3为例,若无该版本的Sendmail运行软件,可到http://freesoft.cei.gov.cn或 http://www.sendmail.org 站点下载。


具体操作
---- 1. 下载编译
---- 在Sendmail软件包已下载到当前目录后即可进行编译,操作步骤如下。
---- $ gzip -dc sendmail.8.11.3.tar.gz | tar -xf - (Gzip 是一个压缩/解压缩的工具,相当于 Windows平台上的WinZip,在网上能很容易地找到并下载)
---- $ cd sendmail-8.11.3/sendmail
---- $ ./Build
---- (编译Sendmail )

---- 2. 安装
---- # ./Build install
---- (用超级用户身份安装)

---- 3. 生成配置文件
---- # cd ../cf/domain
---- # vi generic.m4
---- 此时,在文件的末尾增加如下两行内容。
---- FEATURE(access_db,dbm /etc/mail/access)dnl
---- FEATURE(lacklist_ recipients)dnl
---- 然后,我们可以按着输入以下内容。
---- # cd ../cf
---- # m4 ../m4/cf.m4 ./generic-solaris2.mc > ./sendmail.cf
---- # cp ./sendmail.cf /etc/mail/

---- 4.生成 access 文件及邮件服务器名称的参数文件
---- # cd /etc/mail
---- # makemap dbm access < /dev/null
---- # vi local-host-names
---- (该文件是一个文本文件,内容为本地邮件服务器的域名和别名,它们之间要用回车分隔。详见Readme文件的有关介绍)

---- 5. 启动Sendmail
---- # /usr/lib/sendmail -bd -q30m

---- 6. 编缉限制邮箱大小的程序
---- 用sh命令编缉一个限制邮箱大小的程序,然后用操作系统的定时执行功能crontab设定其执行的频率,内容如下。
---- # vi /etc/mail/limit_mailbox.sh
---- (内容见附录)
---- # chmod u x /etc/mail/limit_mailbox.sh
---- # crontab -e

---- 接着,我们可以输入以下内容。

---- 0 6,7,8,9,10,11,12,13,14,15,16,17,18,19,20 * * * /etc/mail/limit_mailbox.sh 10

---- 它表示在每天6:00~20:00间,每隔1小时启动一次,检查邮箱大小的sh命令。用户也可根据实际情况进行调整。“10”表示邮箱大小的门限值为10MB。


附录limit_mailbox.sh 源代码

---- #!/usr/bin/ksh
---- # search the mailbox larger than MAXSIZE , then set this mailbox full and reject new mails

error() {
echo " $1 "
exit 1
}
BIN=/usr/bin
MAIL=/etc/mail
#Sendmail 参数文件所在的目录
MAILDIR=/var/mail
#存放邮箱文件的目录
ACCESS=access.db
#用于临时存放超过门限值的邮箱名
SUBACCESS=access.sub
#用于存放额外的收、转发限制规则
if [ $# -lt 1 ]; then
error "Must set the MAX mailbox size with the command!"
fi
if [ $1 -le 0 ] ; then
error " Mailbox Size < 0, Failed"
fi
((MAXSIZE=$1*1024*1024))
if [ -f $MAIL/$SUBACCESS ]; then
$BIN/cat $MAIL/$SUBACCESS > $MAIL/$ACCESS
error "piping $MAIL/$SUBACCESS into $MAIL/$ACCESS, Failed"
else
> $MAIL/$ACCESS error "clearing $MAIL/$ACCESS, Failed"
fi
cd $MAILDIR error "entering $MAILDIR Failed"
for box in $BIN/find .
! -user root -size "$MAXSIZE"c -type f -print; do
case $box in
.|..|./.*.pop)
;;
*)
mailuser=${box#./}
echo "To:$mailuser@
ERROR:550 $mailusers Mailbox is full " >> $MAIL/$ACCESS
;;
esac
done
cd $MAIL || error " entering $MAIL Failed"
/usr/sbin/makemap dbm access
< ./$ACCESS || error "makemaping access Failed"
exit 0 ,
上一篇:使用sendmail配置企业简易邮件系统   下一篇:用sendmail发送HTML格式的邮件
[365Key收藏] [雅虎收藏+] [返回顶部] [打印本页] [关闭窗口]  
邮箱   相关文章
·使用sendmail配置企业简易邮件系
·用sendmail发送HTML格式的邮件
·增强Sendmail的抗DoS攻击能力
·Sendmail中实现用户磁盘配额的实
·Sendmail邮件服务器转发功能的讲
·sendmail下限制邮件大小
·Linux上使用Sendmail群集的高可
·中小企业服务器配置-邮件服务器
·小型企业的Sendmail邮件服务器应
·Linux架设E-mail服务器
·监控你E-mail用户的邮件(sendma
·Sendmail 特点和不足
免费邮箱 163邮箱  21CN邮箱  Gmail  Hotmail  QQ邮箱  SoGou邮箱  新浪邮箱  雅虎邮箱  
邮箱评测 企业邮箱评测  
企业邮局 企业邮箱  企业邮箱资讯  
移动邮件 技术前沿  手机邮件  
邮件系统 CMail Server  WinMail  SendMail  Qmail  Postfix  MDaemon Server  Lotus Notes  IMail Server  Foxmail Server  Exchange Server  Domino  Winwebmail  
邮件营销 网络营销  营销案例  营销技巧  邮件营销  
反垃圾邮件 Anti-Spam技术产品  新闻资讯  
邮件客户端 DreamMail  Foxmail  IncrediMail  KooMail  Outlook  The Bat!  
邮件安全
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·Redhat8下Sendmail(邮件)的配
·配置高效的Sendmail服务器
·中小企业服务器配置-邮件服务器
·如何监控sendmail邮件系统中的用
·为 Sendmail 建立虚拟邮件域
·Sendmail MailScanner ClamA
·Linux 架设 sendmail MAIL
·在Linux系统下面架设Sendmail服
·部分sendmail中的高级设置
·Sendmail的安全解决方案
·FreeBSD Virtual Mail How-To
·十分钟快速架设Linux系统下WebMa
网站首页 -  网站地图 -  域名注册 -  虚拟主机 -  企业邮箱  -  网站投稿  -  广告联系 -  帮助中心  -  

Copyright 2007-2008 Mail1.com.cn All Rights Reserved
本站内容均来自网络,如果侵犯版权请来信告知,核实后我们会在24小时删除 联系方式:
第一邮局QQ群:14743955 E-mail:www@onlinex.com.cn