新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 软件开发 > 数据库 > MySQL教程 > 正文:VSFTP+MySQL虚拟用户配置

VSFTP+MySQL虚拟用户配置

新客网 XKER.COM 2006-10-12 来源: 收藏本文

[root@hpe45 vsftpd-1.2.0]# /usr/local/sbin/vsftpd &

四、将虚拟用户保存在MySQL数据库服务器中

我们建立数据库vsftpdvu,表users,字段name和passwd用于保存虚拟用户的用户名和口令,同时增加两个虚拟用户xiaotong和xiaowang。

[root@hpe45 vsftpd-1.2.0]# mysql -p

mysql>create database vsftpdvu;

mysql>use vsftpdvu;

mysql>create table users(name char(16) binary,passwd char(16) binary);

mysql>insert into users (name,passwd) values ('xiaotong',password('qqmywife'));

mysql>insert into users (name,passwd) values ('xiaowang',password('ttmywife'));

mysql>quit

然后,授权vsftpdguest可以读vsftpdvu数据库的users表。执行以下命令:

[root@hpe45 vsftpd-1.2.0]# mysql -u root mysql -p

mysql>grant select on vsftpdvu.users to vsftpdguest@localhost identified by 'i52serial0';

mysql>quit

如果要验证刚才的操作是否成功可以执行下面命令:

[root@hpe45 vsftpd]#mysql -u vsftpdguest -pi52serial0 vsftpdvu

mysql>select * from users;

如果成功,将会列出xiaotong、xiaowang和加密后的密码

五、设置MySQL的PAM验证

这里我们要用到一个利用mysql进行pam验证的开源项目(http://sourceforge.net/projects/pam- mysql/)。首先从网站下载它的程序包pam_myql-0.5.tar.gz,复制到/root目录中。在编译安装之前,要确保mysql- devel的RPM包已经安装在你的机器上,如果没有请从RHL安装光盘中安装该包。然后,执行以下命令:

[root@hpe45 root]#tar xvzf pam_mysql-0.5.tar.gz

[root@hpe45 root]#cd pam_mysql

[root@hpe45 pam_mysql]#make

[root@hpe45 pam_mysql]#make install

make install这一步可能会出现错误,那只好手动将该目录下生成的pam_mysql.o复制到/lib/security目录下。

接下来,我们要设置vsftpd的PAM验证文件。打开/etc/pam.d/ftp文件,加入以下内容:

auth required pam_mysql.o user=vsftpdguest passwd=i52serial0 host=localhost db=vsftpdvu table=users usercolumn=name passwdcolumn=passwd crypt=2

account required pam_mysql.o user=vsftpdguest passwd=i52serial0 host=localhost db=vsftpdvu table=users usercolumn=name passwdcolumn=passwd crypt=2

上面涉及到的参数,只要对应前面数据库的设置就可以明白它们的含义。这里需要说明的是crypt参数。crypt表示口令字段中口令的加密方式:crypt=0,口令以明文方式(不加密)保存在数据库中;crypt=1,口令使用UNIX系统的DES加密方式加密后保存在数据库中;crypt=2,口令经过MySQL的 password()函数加密后保存。

六、进一步的虚拟用户设置

经过以上的步骤,虚拟用户就可以正常使用了。这里介绍进一步的虚拟用户设置。首先,介绍虚拟用户的权限设置。

VSFTPD-1.2.0新添了virtual_use_local_privs参数,当该参数激活(YES)时,虚拟用户使用与本地用户相同的权限。当此参数关闭(NO)时,虚拟用户使用与匿名用户相同的权限,这也就是VSFTPD-1.2.0之前版本对虚拟用户权限的处理方法。这两者种做法相比,后者更加严格一些,特别是在有写访问的情形下。默认情况下此参数是关闭的(NO)。

当virtual_use_local_privs=YES时,只需设置write_enable=YES,虚拟用户就可以就拥有写权限。而virtual_use_local_privs=NO时,对虚拟用户权限的设置就更多一些更严格一些。

控制虚拟用户浏览目录:如果让用户不能浏览目录,但仍可以对文件操作,那么需要执行以下二个步骤:一,配置文件中,anon_world_readable_only=YES。二,虚拟用户目录的权限改为只能由vsftpdguest操作:

共3页: 上一页 [1] [2] [3] 下一页
收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐