分享
 
 
 

通过vpopmail实现qmail邮件账户的数据库管理

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

摘要:本文在“qmail使用系统用户作为邮件账户的安装与配置”一文的基础上讨论如何通过vpopmail实现qmail邮件账户与系统账户分离,邮件账户存放在数据库文件中的解决方案。

硬件环境:HP Netserver E60 128M内存 单网卡

软件环境:redhat6.2 vpopmail4.9.4 qmail1.3 Mysql-3.23.22-beta ucspi-tcp-0.88

前言

在一台邮件服务器的上实现多个域的邮件系统是qmail用户非常关心的问题之一,为了解决这个问题,Inter7开发了遵从GPL版权的vpopmail(vchkpw)来使用户方便地在一台qmail邮件服务器上实现邮件虚拟域和非系统账号。其具有一下特点:

所有的qmail配置及数据文件都提供了具有详细说明的修改的命令。

仅仅占用一个系统账号,所有的相关进程运行在单个UID/GID之下。

支持基于named和IP的虚拟域。

安全的使用NFS之上。通过使用三级平衡树填充技术实现动态的为十个到一千万用户创建邮件目录。

根据真实世界的管理需求提供了可配置的记录功能。

支持Oracle, Sybase,

Mysql, LDAP, /etc/passwd, /etc/shadow和缺省的cdb用户认证信息存储方式。

直接传递数据到Maildir,来和qmail-pop3d, .qmail文件或其他任何Maildir程序。

不需要为虚拟域提供很多.qmail文件,每个域在vpopmail用户主目录下拥有自己的目录,每个域有独立的密码文件。

详细说明的命令程序能被用在脚本文件及远程管理。

所有的vpopmail特性的C库都有详细的说明文档。

而且提供了下面的软件包来增强qmail+vpopmail的特性:

QmailAdmin 基于web的vpopmail管理工具。

vqsignup一个基于vpopmail管理工具的cgi程序,其允许用户自己申请email账号。

Courier IMAP IMAP服务器。

SqWebMail

基于web的email客户程序。

1、Mysql的安装;

笔者使用的rpm包方式的源代码,因此首先要解开rpm包:

[root@radiusd ideal]# rpm -ivh MySQL-3.23.22-1.src.rpm

MySQL ##################################################

然后:

[root@radiusd ideal]# cd /usr/src/redhat/SOURCES/

[root@radiusd SOURCES]# ls -al

total 6432

drwxr-xr-x 2 root root 4096 Oct 29 14:07 .

drwxr-xr-x 7 root root 4096 Oct 30 2000 ..

-rw-r--r-- 1 root root 6560696 Jul 30 11:23 mysql-3.23.22-beta.tar.gz

-rw-rw-r-- 1 root root 3082 Jul 30 11:23 mysql.gif

[root@radiusd SOURCES]# tar xvgz mysql-3.23.22-beta.tar.gz

解压源代码包,就会在当前目录下生成mysql-3.23.22-beta的子目录,其中包含了mysql的源代码,然后使用下面的命令进行安装:

./configure

make

make install

scripts/mysql_install_db

就实现了Mysql数据库服务器安装,其中启动mysql服务器的命令为:

/usr/local/mysql/bin/safe_mysqld &

现在就实现了mysql数据库服务器的安装和运行,下面我们应当设立基本的用户权限信息。缺省的,mysql拥有一个缺省的具有对数据库完全访问可控制的用户,名字为root,所以首先应当为该用户添加访问密码:

[root@radiusd src]# mysql -u root mysql

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor. Commands end with ; or g.

Your MySQL connection id is 183 to server version: 3.23.22-beta

Type 'help' for help.

mysql

这样就进入了mysql服务器的客户程序,然后发出sql语句命令:

UPDATE user SET Password = PASSWORD ('new_password') WHERE user = 'root';

FLUSH PRIVILEGES;

这里的new_password是为mysql的root用户设立的密码。但是一般推荐再创建一个权限和root完全相同的用户,命令如下:

INSERT INTO user

VALUES ('host','user','passwd',

'y','y','y','y','y','y','y','y','y','y','y','y','y','y');

一般,mysql与icradius服务器都是运行在同一个服务器上,这时候,host为localhost,若你的icradius服务器运行在另外一台服务器上,则你需要在这里设定host为你的icradius服务器的名字。用户为你设定的用户名,密码为该用户的密码。

2、vpopmail的安装过程

1、解压软件包:

[root@www src]# tar xvfz vpopmail-4.9.4.tar.gz

2、添加必需的组和用户:

[root@www vpopmail-4.9.4]# /usr/sbin/groupadd vchkpw

[root@www vpopmail-4.9.4]# /usr/sbin/useradd -g vchkpw vpopmail

若希望将vpopmail用户的主目录存放在其他目录,则需要使用下面的命令:

[root@www vpopmail-4.9.4]# /usr/sbin/useradd -g vchkpw -d /path/to/where/you/want vpopmail

3、创建~vpopmail/etc/tcp.smtp文件

若你具有192.168.0的一个c类地址,则在该文件中应该包含内容:

127.0.0.:allow,RELAYCLIENT=""

10.1.1.:allow,RELAYCLIENT=""

:allow

若具有多个C地址,则需要在文件中分别包含对应各个C的地址的条目。

4、配置编译vpopmail:

[root@www vpopmail-4.9.4]# ./configure

[root@www vpopmail-4.9.4]# make

[root@www vpopmail-4.9.4]# make install-strip

5、支持漫游用户

若希望支持漫游用户通过邮件服务器的转发邮件(mail relay),则需要使用如下配置选项:

[root@www vpopmail-4.9.4]# ./configure --enable-roaming-users=y

设置crontab,运行:

[root@www etc]# crontab -e

添加如下内容:

40 * * * * /home/vpopmail/bin/clearopensmtp 2&1 /dev/null

支持漫游用户的原理是当某个漫游用户使用pop3取信以后,则在某断时间内允许该地址通过邮件服务器的转发信件。

6、添加虚拟域

[root@www /]# cd /home/vpopmail/bin

[root@www /]# ./vadddomain test.com

或:

[root@www /]# ./vadddomain test.com password-for-postmaster

该命令将会修改一下几个qmail的配置文件:

/var/qmail/control/locals

/var/qmail/control/rcpthosts

/var/qmail/control/morercpthosts (if rcpthosts than 50 lines)

/var/qmail/control/virtualdomains

/var/qmail/users/assign

/var/qmail/users/cdb

同时,将创建以下目录或文件:

~vpopmail/domains/test.com

~vpopmail/domains/test.com/postmaster/Maildir ...

~vpopmail/domains/test.com/vpasswd

~vpopmail/domains/test.com/vpasswd.cdb

然后需要重新启动qmail进程来更新配置:/etc/rc.d/init.d/qmailstartup restart

6、添加新的邮件POP用户

[root@www /]# cd /home/vpopmail/bin/

[root@www bin/]#./vadduser newuser@test.com

or

[root@www bin/]]#./vadduser newuser@test.com

在这种情况下,用户邮件域需要被指定test.com,这个用户被添加到

~vpopmail/domains/test.com。

7、删除邮件pop用户

[root@www bin/]]# /home/vpopmail/bin/vdeluser newuser@test.com

8、修改一个POP用户密码:

[root@www bin/]]# /home/vpopmail/bin/vpasswd newuser@test.com

9、结合vchkpw与qmail-pop3d

当使用vpopmail时,则需要将pop的运行脚本run修改为:

#!/bin/sh

exec /usr/local/bin/tcpserver -v -H -R 0 pop-3 -u vpopmail -g vchkpw /var/qmail/bin/qmail-popup domain1.com /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir 2

&1 |

/var/qmail/bin/splogger pop3d

注:从exec到"| "都是同一行的内容。

3、vpopmail的详细配置选项

--enable-roaming-users=n|y 当pop3认证通过以后,是否打开对该用户的邮件转发(mail relay),缺省是关闭的。

若设置该方法为yes,则当某个用户通过了pop3认证,则将其ip地址加入到允许通过该邮件服务器的进行邮件relay的列表中。一个名为clearopensmtp的cronjob程序可以用来实现在一段时间以后从允许转发邮件地址列表中将该ip地址去除。这个选项要求以-x /etc/tcp.smtp.cdb选项来使用tcpserver运行smtp服务器。

--enable-hardquota=#|n 设置或打开磁盘限额,NOQUOTA为没有限制

为没有邮件账号设置磁盘限额,缺

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有