53行 define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
123行 DAEMON_OPTIONS(`Port=submission, Name=MSA, M=Ea')dnl TRUST_AUTH_MECH的作用是使sendmail不管access文件中如何设置都能relay那些通过LOGIN、PLAIN或DIGEST-MD5方式验证的邮件。 `confAUTH_MECHANISMS'的作用是确定系统的认证方式。 `Port=submission, Name=MSA, M=Ea'的作用是开启认证,并以子进程运行MSA实现邮件的账户和密码的验证。 注意:FEATURE要加在MAILER语句前面,否则可能造成邮件服务器运行错误哈~~~ (2)设置用户用户邮件的大小限制 在sendmail.mc中没有这个选项,这个要在sendmail.cf中设置哈~ vim /etc/mail/sendmail.cf 默认不限制: # maximum message size
#O MaxMessageSize=0 我们可以设置成邮件最大不超过20MB # maximum message size
O MaxMessageSize=20971520 意思为每次收发邮件最大为20MB,任何超过这个值的邮件将被拒绝。 (3)设置本地邮箱的域名 LOCAL_DOMAIN(`redking.com')dnl (4)使用m4生成新的sendmail.cf文件 4.配置磁盘配额 (1)修改fstab文件 为了方便管理哈,将用户的邮件信息存放在/var/mail目录中,建议将/var划分到独立的分区,这样我们才能对/var文件系统添加磁盘配额功能,参考[RHEL5企业级Linux服务攻略]--第1季 Linux服务器的搭建与测试。 vim /etc/fstab 添加/var文件系统参数 LABEL=/var /var ext3 defaults,usrquota,grpquota 1 2 usrquota为用户的配额参数,grpquota为组的配额参数 修改/etc/fstab文件后保存退出,重启系统,使系统按照新的参数挂载文件系统。 参考RHCE课程-RH131Linux管理笔记六-Linux文件系统管理、挂载及sudo设置与使用 重启过程中,因为缺失配额文件,所以操作系统在装载文件系统时会报错,通过下面创建配额文件工作后将会消除错误。 (2)创建配额文件 因为存放邮件信息的/var目录在独立的分区哈~所以我们使用quotachek命令在/var目录下分别为用户和组创建配额文件 quotacheck -cugm /var (3)设置磁盘配额 为用户和组设置详细的配额限制,我们可以使用edquota命令进行磁盘配额的设置哈~ edquota命令格式: edquota -u 用户名 edquota -g 组名 比如为用户michael配置磁盘配额限制,执行edquota命令,打开用户配额配置文件 edquota -u michael Filesystem:文件系统的名称 blocks:用户当前使用的块数(磁盘空间),单位为KB soft:可以使用的最大磁盘空间,可以在一段时期内被超过软限制规定 hard:可以使用的磁盘空间的绝对最大值,达到了该限制后,操作系统将不再为用户或组分配磁盘空间 inodes:用户当前使用的inode节点数量(文件数) soft:可以使用的最大文件数。可以在一段时期内被超过软限制规定 hard:可以使用的文件数的绝对最大值。达到该限制后,用户或组将不能再建立文件 设置磁盘空间或者文件数限制,需要修改对应的soft、hard值,而不要修改blocks和inodes值哈~根据当前磁盘的使用状态,操作系统会自动设置这两个字段的值。 注意:如果soft或者hard值被设置为0则表示没有限制哈~ 比如对用户michael将磁盘空间硬限制设置为200MB (4)使磁盘配额生效 命令:quotaon -augv 目录名 参数:
-a 开启在/ect/fstab文件里,有加入quota设置的分区的空间限制。
-g 开启群组的磁盘空间限制。
-u 开启用户的磁盘空间限制。
-v 显示指令指令执行过程。 quotaon -av 注意:磁盘配额对root用户没有效果,并且磁盘配额设置的参数要比现有的数量要大,如分区大小要比现使用空间要大,文件数要比现有文件数要大。 (5)查看磁盘配额状态 repquota -a 注意: OK,如果企业员工较多,那么像这样一个个为每个员工单独配置磁盘配额将会增加我们管理的难度哈~这里我们可以建立一个样简单的脚本,将所有用户的磁盘空间科学硬限制为200MB哈~ 在/etc/mail/目录下创建一个quota.sh磁盘配额脚本文件 vim /etc/mail/quota.sh quota.sh脚本内容: #!/bin/bash
for i in michael redhat michaelwang client1 client2 client3 clienta clientb clientc
do
setquota -u $i 0 200000 0 0 /var
done for循环语句in后面跟需要进行磁盘配额的用户名 setquota能够在命令行下直接进行磁盘配额限制,格式如下哈~ setquota -u 用户 block软限制 block硬限制 inode软限制 inode硬限制 因为需要将用户使用的磁盘空间限制为200MB,所以只需要更改block硬限制就可以了哈~ 我们可以使用 . /etc/mail/quota.sh执行此脚本哈~ 执行quotaoff -av后执行quotaon -av使设置的磁盘配额生效 5.配置dovecot 确认已经安装了dovecot RPM包哈~安装完dovecot软件包后,默认情况下,POP3和IMAP就可以正常工作,能够接收客户端的接受邮件请求哈~,但是为了保证客户端能够使用加密的形式接受邮件,还需要为dovecot添加相应的密钥和证书,启动POP3S或者IMAPS的支持哈~这时Mail服务器必须生成相应的密钥和证书才能正常工作哈~ (1)生成私钥和自签名证书 Mail服务器会使用私钥加密邮件,客户端在收取邮件时,则使用Mail服务器证书中的公钥对邮件进行解密,这样才能正常读取邮件哈~,/etc/pki/tls/certs/Makefile文件保存着生成密钥和证书的脚本设置,这里使用make命令制作dovecot.pem文件,其保存邮件服务器的私钥和公钥信息。 make -C /etc/pki/tls/certs/ dovecot.pem 生成证书时,按要求依次填写国家、省份、城市等等信息哈~ (2)修改dovecot.conf配置文件 vim /etc/dovecot.conf 查询dovecot使用的密钥和证书的位置 修改dovecot.conf配置信息中密钥和证书的位置指向我们刚刚生成的dovecot.pem (3)重启sendmail、dovecot、saslauthd服务 (4)查看端口状态 netstat -tupln 6.测试 (1)服务器状态 eth1网卡192.168.5.110当路由器用哈~我不知道在vmware中怎么模拟路由器,汗~~哪位大哥如果会的话,教一下偶哈~ (2)客户端测试 网段:192.168.5.0/24 发个邮件测试下哈~ 接收测试邮件~ 测试发送20MB邮件 20MB邮件发送成功 client3邮箱状态 测试发送超出20MB限制的邮件 提示超出邮件限制大小,OK,成功~ 最后我们测试邮箱用户的磁盘配额设置哈,现在client3用户的邮件中差不多有196MB邮件容量,限额是200MB哈~ 下面我们测试如果再发个10MB的邮件,这样就超出200MB限额了,看下能否发送成功哈~ 在michael用户端显示成功发送哈~ 如果所发邮件超出收件人磁盘配额限额哈~,发件人会收到一封系统退信哈~ 提示:procmail: Quota exceeded while writing "/var/mail/client3" 这时,收件人必须接收完邮件服务器上的邮件或由管理员增加到使用空间的限额后才能正常接收邮件哈~ ########################Michael分割线######################## 谨以此博文庆祝blog成为blog star,献给关注、支持本blog的网友哈~谢谢大家的支持、留言及回复,大家也可以将自己研究及配置的实验方案提供一下,大家一起研究交流一下,共同进步哈~~~下季内容[RHEL5企业级Linux服务攻略]--第6季 vsftpd服务全攻略之常规配置,敬请期待~~~ ########################Michael分割线########################
本文出自 “王乾De技术博客” 博客,谢绝转载!