http://www.chinaunix.net 作者: peng

5.1目的
本文重点讨论vpopmail和qmailadmin的配置和应用,通过vpopmail和qmailadmin,来对用户进行设置和管理。
5.2 vpopmail功能简介
    在一台邮件服务器的上实现多个域的邮件系统是qmail用户非常关心的问题之一,为了解决这个问题,Inter7开发了遵从GPL版权的vpopmail(vchkpw)来使用户方便地在一台qmail邮件服务器上实现邮件虚拟域和非系统账号。其具有一下特点:

1、 所有的qmail配置及数据文件都提供了具有详细说明的修改的命令。
2、 仅仅占用一个系统账号,所有的相关进程运行在单个UID/GID之下。
3、 支持基于named和IP的虚拟域。安全的使用NFS之上。
4、 通过使用三级平衡树填充技术实现动态的为十个到一千万用户创建邮件目录。
5、 根据真实世界的管理需求提供了可配置的记录功能。
6、 支持Oracle, Sybase, Mysql, LDAP, /etc/passwd, /etc/shadow和缺省的cdb用户认证信息存储方式。
7、  直接传递数据到Maildir,来和qmail-pop3d, .qmail文件或其他任何Maildir程序。不需要为虚拟域提供很多.qmail文件,每个域在vpopmail用户主目录下拥有自己的目录。每个域有独立的密码文件。
8、 详细说明的命令程序能被用在脚本文件及远程管理。所有的vpopmail特性的C库都有详细的说明文档。 
  而且提供了下面的软件包来增强qmail+vpopmail的特性:
1、 QmailAdmin 基于web的vpopmail管理工具。
2、 vqsignup一个基于vpopmail管理工具的cgi程序,其允许用户自己申请email账号。
3、 Courier IMAP IMAP服务器。 
4、 qWebMail 基于web的email客户程序。 
5.3 vpopmail的安装设置
  我在安装vpopmail的时候,设置了以下选项:
  # ./configure 
--enable-default-domain=chinaunix.net
--enable-passwd=n /
--enable-tcprules-prog=/usr/local/bin/tcprules /
--enable-ip-alias-dmains=n /
--enable-hardquota=10500000 /
--enable-sqwebmail-pass=y /
--enable-roaming-users=y /
--enable-mysql=y /
--enable-indir=/usr/include/mysql /
--enable-libdir=/usr/lib/mysql 
其中的详细意思是:
  --enable-default-domain=chinaunix.net    设定缺省域名为chinaunix.net
推荐将所有的域都设置为虚拟域,并且挑选一个作为缺省域。对于缺省域的用户,其通过接收邮件时,只需要在用户名中设置其邮件用户名即可,而对于其他非缺省用户,则需要将用户名设置为 peng@chinaunix.net的格式才能通过pop3收取信件。
--enable-passwd=n 
允许或禁止/etc/passwd(或shadow)认证。覆盖自动配置,缺省的配置程序将自动检测
系统是使用passwd或shadow密码,通过设置该选项为no,可以禁止所有的/etc/passwd账号认证。也可以说,是禁止系统用户为邮件用户。
--enable-tcprules-prog=/usr/local/bin/tcprules 
tcprules程序的安装位置,缺省为/usr/local/bin
--enable-ip-alias-dmains=n 
  允许通过反向解析来查看虚拟域。缺省情况下,每个域使用基于虚拟域的名字,也就是用户必须在pop3用户名中提供相应的域信息,也就是peng@chinaunix.net。当然也可以使用enable-default-domain配置选项来覆盖该要求。Vpopmail同样支持基于IP地址的虚拟域,若该选项打开则用户不需要在pop3用户名中提供@<virtualdomain>,vpopmail自动对该用户连接的服务器IP地址进行反向解析,若解析得到一个域名,则vpopmail使用该名字作为域,例如:IP:x.x.x.x对应域名test.com,用户设置pop3服务器的IP地址进行反向DNS查询,得到test.com域名,用户使用test作为用户名,vpopmail使用test.com。在这里,我们禁止反向解析来查看虚拟域。
--enable-hardquota=10500000 
  若磁盘限额超出,将拒绝接受该用户的新邮件,并返回一封拒绝信息邮件,其中的信息可以定制。
--enable-sqwebmail-pass=y 
  支持sqwebmail的认证,为了以后也可能用sqwebmail,我选了yes。
--enable-roaming-users=y 
  当pop3认证通过后,是否打开对该用户的邮件转发(mail relay),缺省是关闭的。若设置该选项为y,当某个用户通过了pop3认证,则将其IP地址加入许可通过该邮件服务器进行relay的列表中。一个名为clearopensmtp的cronjob程序可以用来实现在这一段时间以后从允许转发邮件地址列表中将该IP地址清除。这个选项要求以-x /etc/tcp.smtp.cdb选项来使用tcpserver运行smtp服务器。
--enable-mysql=y 
  使用mysql,缺省是no.允许通过将账号存放在mysql数据库中来认证用户。
--enable-indir=/usr/include/mysql 
  sql头文件的目录。
--enable-libdir=/usr/lib/mysql
    库文件libmysqlclient.a的目录。
    
vpopmail还有其他的很多选想,这里就不介绍了,大家可以通过./configure –help察看,也可以看install and readme文件。大家也可以通过man 来察看。
5.4 vpopmail使用
   vpopmail的功能命令都放在了/home/vpopmail/bin的目录下,我们在这里介绍一下:

vadddomain chinaunix.net 
 -----添加一个虚拟域

vadduser   peng@chinaunix.net
添加一个某个域的用户

clearopensmtp
  从ip地址认证表中清除过期的ip地址。但你在configure中设置--enable-roaming-users=y时,当某个用户通过了pop3认证,则将其IP地址加入许可通过该邮件服务器进行relay的列表中。clearopensmtp的cronjob程序就是用来实现在这一段时间以后从允许转发邮件地址列表中将该IP地址清除。每一个ip添加进来,都会被加上一个时间标签,默认是3个小时。三个小时后,被clearopensmtp清除。

Vaddaliasdomain
给一个域名设置一个别名,当你有一个域名chinaunix.net,想给这个域添加一个别名chinaunix.com,使peng@chinaunix.net和peng@chinaunix.com是一个用户,命令格式是:
#.vadddliasdomain chinaunix.com  chinaunxi.net   ---前面是别名,后面是已经存在的域名。

vdeldomain 
 删除一个域:
 # vdeldomain  chinaunix.com

vdeluser
删除一个用户:
#vdeluser peng@chinaunix.net

vdelolduser
删除过期的认证表中的用户,默认是3个小时。
vdominfo
  先是虚拟域信息,可以看帮助:
# vdominfo –help  很简单

vpasswd  
   更改一个用户的密码

vuserinof
  显示一个用户的信息

vsetuserquota
设置一个域或者一个用户的空间大小:
#vsetuserquota peng@chinaunix.net 10500000 ---设置这个用户的空间为10m。
#vsetuserquota chinaunix.net 10500000 ---设置这个域的所有的用户空间都为10m。

以上的都是一些常用到的命令,或者是和本系统设置有关的。还有一些命令,用户认证模式不同和由系统调用,就不介绍了。

5.5 qmailadmin的介绍
  这里在vpopmail实现qmail邮件账户的数据库管理的基础上讨论如何通过qmailadmin实现对存放在数据库中的虚拟域邮件用户账号进行web管理。通过qmailadmin管理员可以通过web方式实现添加删除用户及修改用户密码等邮件用户的管理,而用户可以自行修改自己的密码。
5.6 qmailadmin的使用
1、 登陆
 通过vpopmail中的vadddomain命令,我们添加了一个域,默认的系统管理用户是postmaster,密码自己设定了。在浏览器中输入:http://mail.chinaunix.net/cgi-bin/qmailadmin,出现登陆界面。其中domain name一栏要填写需要管理的虚拟域的名字,password一栏要填写该虚拟域的postmaster的password。(邮件管理员的密码,如果忘记,则需要使用/home/vpopmai/bin/vpasswd postmaster@virtualdomain.com来修改)。
2、邮件账号管理
这里很清楚了,没有什么可说的。
可以通过索引查找用户。
可以通过修改更改用户名和设立转发邮件。
通过删除用户按钮删除用户。
可以通过catchall按钮来设置一个用户,接受所有用户的信件。也可以通过最下面的选项来取消和设置远程接受邮件地址。
2、 别名设立界面
这个界面是显示当前定义的别名列表,选择"add new alias"添加别名:
这里定义peng为webmaster的别名。

3、转发管理界面
这里显示定义的所有的邮件转发列表,当选择"添加新的转发"则进入转发添加界面:
"转发的邮件地址"定义要转发的目的地址,“本地"则定义本地账号的名。

4、自动回复管理界面
该界面显示了已经定义的了的自动回复,自动回复管理界面如下:
"自动回复名字"用来指定要进行自动回复的邮件地址,"转发拷贝到邮件地址"用来定义当自动回复地址时,同时将信件转发到的邮件地址。
5、 邮件列表
  邮件列表这块,我们将在以后(七)ezmlm实现邮件列表的应用和管理中讨论。

小结
   通过以上功能,基本上就可以对一个邮件服务进行简单的管理了。无论是通过vpopmail的工具命令还是qmailadmin都可以完成用户的管理。添加域的时候,只能通过vpopmail的工具命令。有一点要注意,就是qmailadmin的安全性。就是防止postmaster密码的泄露。telnet or ssh方式,可以通过机器的防火墙来实现登陆ip 地址的限制。Qmailadmin建议就不要用80端口了,可以在apache中设置。最好编译apache的时候,加上通过mod_limitipconn模块来限制apache的并发连接数,可以限制多线程攻击,或通过多线程web方式穷举法来破解密码。

qmail邮件系统(五)vpopmail和qmailadmin对用户的管理相关推荐

  1. 七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理

    系列文章 七天学会ASP.NET MVC (一)--深入理解ASP.NET MVC 七天学会ASP.NET MVC (二)--ASP.NET MVC 数据传递 七天学会ASP.NET MVC (三)- ...

  2. 搭建Qmail邮件系统(中篇)

    继上篇文章<搭建Qmail邮件系统(环境篇)>之后,还得继续安装邮件系统,下面才算是开始安装邮件系统,之前的全是为现在做铺垫呢 也不知道在接下来的操作过程中会出现什么样的状况 那就晒一把吧 ...

  3. Iptalbes自动封杀暴力破解(Qmail邮件系统)者的IP地址

    今天发现Qmail邮件系统的maillog里面有大量的"user not found"信息,通过下面的日志不难发现,是来自同一IP的很多不同的用户连接Qmail邮件系统认证失败的信 ...

  4. 金笛邮件系统五合一:邮件服务器+邮件网关+邮件归档+邮件列表+内部论坛

    金笛邮件系统五合一:邮件服务器+邮件网关+邮件归档+邮件列表+内部论坛,物有所值. 对许多用户看来,邮件归档是用于备份邮件数据用的.这其实是一种误解,备份来往的邮件只是归档的其中一个应用,如何在海量的 ...

  5. 第五章 了解你的用户

    第五章 了解你的用户 逻辑人的争议:要学会把软件开发简单易用 象牙塔式的开发:开发团队常年闭封在"高塔"之中,一门心思的做着魔法一般的软件.这些开发者根本就不知道用户会怎么样的使用 ...

  6. 百度贴吧五年内流失九成用户;罗永浩吐槽苹果新品:更丑更贵更胡来;进互联网大厂毕业生5年后7成人离开 | EA周报...

    EA周报 2021年10月22日 每个星期7分钟,元宝带你喝一杯IT人的浓缩咖啡,了解天下事.掌握IT核心技术. 周报看点 1.百度贴吧五年内流失九成用户 2.贾跃亭公司前员工收到补薪 3.腾讯起诉网 ...

  7. 操作系统实验五:用户进程管理(详细分析)

    操作系统实验五:用户进程管理 一. 实验目的 二. 实验任务 三. 实验准备 1.alloc_proc() 函数 2.do_fork() 函数 3.idt_init() 函数 4.trap_dispa ...

  8. 极客日报:”腾讯起诉网站买卖微信号获赔109万;百度贴吧五年内流失九成用户;苹果计划明年推出挖孔屏iPhone

    一分钟速览新闻点! 百度贴吧五年内流失九成用户 贾跃亭公司前员工收到补薪 OPPO或将自研高端手机芯片 周鸿祎称未来10万元车能当豪车开 微信修复语音通话展示朋友圈功能 腾讯起诉网站买卖微信号获赔10 ...

  9. 运维基本功(五):Linux文件管理-用户管理

    本文是在课程课件基础上修改的学习笔记 课程原地址:https://www.bilibili.com/video/BV1nW411L7xm 如有侵删 运维基本功(一):Linux系统安装 运维基本功(二 ...

最新文章

  1. UICollectionView之网络图片解析
  2. WIN8.1 PRO RTM VOL.2013.09.18
  3. 手把手教你部署一个最小化的 Kubernetes 集群
  4. Java还能热多久?学Java有前途吗?
  5. Elasticsearch java api(五) Bulk批量索引
  6. android studio启动停止命令,那些停止Android Studio任务的方法(不断整理中)
  7. 4 关卡流 进阶_全息武器全解析,记住4个点全区第一就是你!
  8. 微软第二财季营收达 517 亿美元,净利润同比增长 21%
  9. 排序算法复习—希尔排序
  10. id,clientid 和 uniqueid 的区别
  11. pytorch from_numpy
  12. Git:clean的用法
  13. 要有遥不可及的梦想,也要有脚踏实地的本事
  14. 山东大学计算机转专业2021,2021年山东大学大一新生转专业及入学考试相关规定...
  15. WPS表格如何隔行填充颜色
  16. sql server 公共表表达式【CTE 】、临时表、变量表
  17. 关于订单功能的处理和分析
  18. 今日头条能干掉微信么?
  19. windows双网卡,双网关同时使用内网,外网设置
  20. Vue入门之无法加载文件 C:\Users\xx\npm\vue.ps1,因为在此系统上禁止运行脚本问题解决。

热门文章

  1. 基于边缘检测和透视变换的文档图像校正
  2. Oracle net architecture
  3. 2021最新chrome浏览器与chromedriver版本对照表
  4. 文本的检测、识别实战:使用 Tesseract 进行 OpenCV OCR 和文本识别
  5. android热更新机制
  6. 快乐大脚!快乐的帝企鹅!
  7. EtherCAT 寻址模式详解
  8. 如何更改计算机开机壁纸,如何修改电脑开机的背景图片
  9. Windows平台调试工具:DebugView
  10. (9)javaEE---equest与response